@grtsnx/payba3 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/CODE_OF_CONDUCT.md +24 -0
- package/CONTRIBUTING.md +149 -0
- package/LICENSE +21 -0
- package/README.md +282 -0
- package/SECURITY.md +53 -0
- package/SUPPORT.md +27 -0
- package/assets/payba3-logo.svg +17 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +24 -0
- package/dist/lib/lib.module.d.ts +2 -0
- package/dist/lib/lib.module.js +37 -0
- package/dist/lib/lib.module.js.map +1 -0
- package/dist/lib/monnify/config/monnify.helper.d.ts +24 -0
- package/dist/lib/monnify/config/monnify.helper.js +234 -0
- package/dist/lib/monnify/config/monnify.helper.js.map +1 -0
- package/dist/lib/monnify/config/monnify.types.d.ts +93 -0
- package/dist/lib/monnify/config/monnify.types.js +3 -0
- package/dist/lib/monnify/config/monnify.types.js.map +1 -0
- package/dist/lib/monnify/monnify.module.d.ts +2 -0
- package/dist/lib/monnify/monnify.module.js +22 -0
- package/dist/lib/monnify/monnify.module.js.map +1 -0
- package/dist/lib/monnify/monnify.service.d.ts +19 -0
- package/dist/lib/monnify/monnify.service.js +113 -0
- package/dist/lib/monnify/monnify.service.js.map +1 -0
- package/dist/lib/mono/config/mono.helper.d.ts +11 -0
- package/dist/lib/mono/config/mono.helper.js +78 -0
- package/dist/lib/mono/config/mono.helper.js.map +1 -0
- package/dist/lib/mono/config/mono.types.d.ts +48 -0
- package/dist/lib/mono/config/mono.types.js +3 -0
- package/dist/lib/mono/config/mono.types.js.map +1 -0
- package/dist/lib/mono/mono.module.d.ts +2 -0
- package/dist/lib/mono/mono.module.js +22 -0
- package/dist/lib/mono/mono.module.js.map +1 -0
- package/dist/lib/mono/mono.service.d.ts +15 -0
- package/dist/lib/mono/mono.service.js +77 -0
- package/dist/lib/mono/mono.service.js.map +1 -0
- package/dist/lib/opay/config/opay.helper.d.ts +17 -0
- package/dist/lib/opay/config/opay.helper.js +175 -0
- package/dist/lib/opay/config/opay.helper.js.map +1 -0
- package/dist/lib/opay/config/opay.types.d.ts +73 -0
- package/dist/lib/opay/config/opay.types.js +3 -0
- package/dist/lib/opay/config/opay.types.js.map +1 -0
- package/dist/lib/opay/opay.module.d.ts +2 -0
- package/dist/lib/opay/opay.module.js +22 -0
- package/dist/lib/opay/opay.module.js.map +1 -0
- package/dist/lib/opay/opay.service.d.ts +17 -0
- package/dist/lib/opay/opay.service.js +104 -0
- package/dist/lib/opay/opay.service.js.map +1 -0
- package/dist/lib/payba3.service.d.ts +16 -0
- package/dist/lib/payba3.service.js +59 -0
- package/dist/lib/payba3.service.js.map +1 -0
- package/dist/lib/payba3.types.d.ts +18 -0
- package/dist/lib/payba3.types.js +13 -0
- package/dist/lib/payba3.types.js.map +1 -0
- package/dist/lib/paystack/config/paystack.helper.d.ts +15 -0
- package/dist/lib/paystack/config/paystack.helper.js +134 -0
- package/dist/lib/paystack/config/paystack.helper.js.map +1 -0
- package/dist/lib/paystack/config/paystack.types.d.ts +92 -0
- package/dist/lib/paystack/config/paystack.types.js +3 -0
- package/dist/lib/paystack/config/paystack.types.js.map +1 -0
- package/dist/lib/paystack/paystack.module.d.ts +2 -0
- package/dist/lib/paystack/paystack.module.js +22 -0
- package/dist/lib/paystack/paystack.module.js.map +1 -0
- package/dist/lib/paystack/paystack.service.d.ts +33 -0
- package/dist/lib/paystack/paystack.service.js +328 -0
- package/dist/lib/paystack/paystack.service.js.map +1 -0
- package/dist/lib/qoreid/config/qoreid.helper.d.ts +19 -0
- package/dist/lib/qoreid/config/qoreid.helper.js +132 -0
- package/dist/lib/qoreid/config/qoreid.helper.js.map +1 -0
- package/dist/lib/qoreid/config/qoreid.types.d.ts +35 -0
- package/dist/lib/qoreid/config/qoreid.types.js +3 -0
- package/dist/lib/qoreid/config/qoreid.types.js.map +1 -0
- package/dist/lib/qoreid/qoreid.module.d.ts +2 -0
- package/dist/lib/qoreid/qoreid.module.js +22 -0
- package/dist/lib/qoreid/qoreid.module.js.map +1 -0
- package/dist/lib/qoreid/qoreid.service.d.ts +10 -0
- package/dist/lib/qoreid/qoreid.service.js +63 -0
- package/dist/lib/qoreid/qoreid.service.js.map +1 -0
- package/dist/lib/safehaven/config/safe.helper.d.ts +16 -0
- package/dist/lib/safehaven/config/safe.helper.js +136 -0
- package/dist/lib/safehaven/config/safe.helper.js.map +1 -0
- package/dist/lib/safehaven/config/safe.types.d.ts +50 -0
- package/dist/lib/safehaven/config/safe.types.js +3 -0
- package/dist/lib/safehaven/config/safe.types.js.map +1 -0
- package/dist/lib/safehaven/safe.module.d.ts +2 -0
- package/dist/lib/safehaven/safe.module.js +22 -0
- package/dist/lib/safehaven/safe.module.js.map +1 -0
- package/dist/lib/safehaven/safe.service.d.ts +14 -0
- package/dist/lib/safehaven/safe.service.js +77 -0
- package/dist/lib/safehaven/safe.service.js.map +1 -0
- package/dist/lib/seerbit/config/seerbit.helper.d.ts +11 -0
- package/dist/lib/seerbit/config/seerbit.helper.js +88 -0
- package/dist/lib/seerbit/config/seerbit.helper.js.map +1 -0
- package/dist/lib/seerbit/config/seerbit.types.d.ts +49 -0
- package/dist/lib/seerbit/config/seerbit.types.js +3 -0
- package/dist/lib/seerbit/config/seerbit.types.js.map +1 -0
- package/dist/lib/seerbit/seerbit.module.d.ts +2 -0
- package/dist/lib/seerbit/seerbit.module.js +22 -0
- package/dist/lib/seerbit/seerbit.module.js.map +1 -0
- package/dist/lib/seerbit/seerbit.service.d.ts +11 -0
- package/dist/lib/seerbit/seerbit.service.js +83 -0
- package/dist/lib/seerbit/seerbit.service.js.map +1 -0
- package/dist/lib/shared/index.d.ts +1 -0
- package/dist/lib/shared/index.js +18 -0
- package/dist/lib/shared/index.js.map +1 -0
- package/dist/lib/shared/response.helper.d.ts +15 -0
- package/dist/lib/shared/response.helper.js +39 -0
- package/dist/lib/shared/response.helper.js.map +1 -0
- package/llms.txt +25 -0
- package/package.json +169 -0
- package/src/lib/monnify/monnify_llm.txt +429 -0
- package/src/lib/mono/mono_llm.txt +372 -0
- package/src/lib/opay/opay_llm.txt +1022 -0
- package/src/lib/paystack/paystack_llm.txt +382 -0
- package/src/lib/qoreid/qoreid_llm.txt +68 -0
- package/src/lib/safehaven/safehaven_llm.txt +77 -0
- package/src/lib/seerbit/seerbit_llm.txt +61 -0
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
# Paystack Documentation
|
|
2
|
+
|
|
3
|
+
> Paystack is Africa's leading payments infrastructure provider, enabling businesses to accept payments from customers via cards, bank accounts, mobile money, USSD, QR codes, and bank transfers. This documentation covers integration guides, SDKs, webhooks, and best practices for building payment experiences.
|
|
4
|
+
|
|
5
|
+
Paystack operates in Nigeria, Ghana, South Africa, Kenya, and Côte d'Ivoire. The platform supports both online and in-person payments through various integration methods including Popup JS, Redirect, Mobile SDKs, and Terminal devices.
|
|
6
|
+
|
|
7
|
+
Important notes:
|
|
8
|
+
- All amounts are in smallest currency unit (kobo for NGN, pesewas for GHS, cents for KES/ZAR/USD)
|
|
9
|
+
- API requests require authentication: secret keys (server-side) or public keys (client-side)
|
|
10
|
+
- Test mode uses test API keys (`sk_test_*`, `pk_test_*`); live mode uses live keys (`sk_live_*`, `pk_live_*`)
|
|
11
|
+
- Always verify transactions server-side before delivering value
|
|
12
|
+
- Webhooks provide real-time notifications; validate signatures using your secret key
|
|
13
|
+
- Supported currencies: NGN (Nigeria), GHS (Ghana), ZAR (South Africa), KES (Kenya), USD (International)
|
|
14
|
+
|
|
15
|
+
## Home
|
|
16
|
+
|
|
17
|
+
- [Paystack Documentation Home](https://paystack.com/docs/): Main entry point with quick start guides for accepting payments, sending money, and identity verification
|
|
18
|
+
|
|
19
|
+
## Payments
|
|
20
|
+
|
|
21
|
+
- [Payments Overview](https://paystack.com/docs/payments/): Introduction to accepting payments with Paystack including demos and integration options
|
|
22
|
+
- [Accept Payments](https://paystack.com/docs/payments/accept-payments/): Integration methods including Popup JS, Redirect API, and Mobile SDKs for collecting payments
|
|
23
|
+
- [Verify Payments](https://paystack.com/docs/payments/verify-payments/): How to verify transaction status and understand transaction states (success, failed, abandoned, pending)
|
|
24
|
+
- [Payment Channels](https://paystack.com/docs/payments/payment-channels/): Supported payment methods including cards, mobile money, USSD, QR codes, bank transfers, and Apple Pay
|
|
25
|
+
- [Apple Pay](https://paystack.com/docs/payments/apple-pay/): Setting up Apple Pay for web and Commerce Suite with domain registration and verification
|
|
26
|
+
- [Recurring Charges](https://paystack.com/docs/payments/recurring-charges/): Tokenization and charging saved cards for repeat payments using authorization codes
|
|
27
|
+
- [Subscriptions](https://paystack.com/docs/payments/subscriptions/): Creating plans and managing recurring subscription billing with automatic charges
|
|
28
|
+
- [Split Payments](https://paystack.com/docs/payments/split-payments/): Splitting transaction settlements between main account and subaccounts
|
|
29
|
+
- [Multi-split Payments](https://paystack.com/docs/payments/multi-split-payments/): Advanced splitting with transaction splits across multiple subaccounts
|
|
30
|
+
- [Dedicated Virtual Accounts](https://paystack.com/docs/payments/dedicated-virtual-accounts/): Creating customer-specific bank accounts for receiving transfers (Nigeria & Ghana)
|
|
31
|
+
- [Webhooks](https://paystack.com/docs/payments/webhooks/): Setting up webhook endpoints to receive real-time event notifications for transactions
|
|
32
|
+
- [Refunds](https://paystack.com/docs/payments/refunds/): Initiating partial or full refunds for completed transactions
|
|
33
|
+
- [Manage Disputes](https://paystack.com/docs/payments/manage-disputes/): Handling chargebacks and disputes through the Disputes API
|
|
34
|
+
- [Test Payments](https://paystack.com/docs/payments/test-payments/): Test cards, bank accounts, and mobile money numbers for development
|
|
35
|
+
|
|
36
|
+
## Payment Channels by Country
|
|
37
|
+
|
|
38
|
+
### Nigeria (NGN)
|
|
39
|
+
Cards (Visa, Mastercard, Verve), Bank Transfer, USSD, QR Code, Apple Pay
|
|
40
|
+
|
|
41
|
+
### Ghana (GHS)
|
|
42
|
+
Cards, Mobile Money (MTN, AirtelTigo, Telecel), Bank Transfer, QR Code
|
|
43
|
+
|
|
44
|
+
### South Africa (ZAR)
|
|
45
|
+
Cards, Apple Pay, QR Code
|
|
46
|
+
|
|
47
|
+
### Kenya (KES)
|
|
48
|
+
Cards, Mobile Money (M-PESA, Airtel Money)
|
|
49
|
+
|
|
50
|
+
### Côte d'Ivoire (XOF)
|
|
51
|
+
Cards, Mobile Money (MTN MoMo, Wave, Orange Money), Apple Pay
|
|
52
|
+
|
|
53
|
+
## Terminal
|
|
54
|
+
|
|
55
|
+
- [Terminal Overview](https://paystack.com/docs/terminal/): In-person payment solutions including Physical Terminal, Virtual Terminal, and Terminal API
|
|
56
|
+
- [Invoice Payments](https://paystack.com/docs/terminal/invoice-payments/): Accepting payment for invoices and orders on Terminal devices
|
|
57
|
+
- [Push Payment Requests](https://paystack.com/docs/terminal/push-payment-requests/): Initiating payment requests from POS systems to Terminal devices
|
|
58
|
+
- [Custom Apps](https://paystack.com/docs/terminal/custom-apps/): Building custom Android applications that run on Paystack Terminal hardware
|
|
59
|
+
- [Virtual Terminal](https://paystack.com/docs/terminal/virtual-terminal/): Using mobile phones as virtual POS devices with WhatsApp notifications
|
|
60
|
+
|
|
61
|
+
## Transfers
|
|
62
|
+
|
|
63
|
+
- [Transfers Overview](https://paystack.com/docs/transfers/): Sending money to bank accounts and mobile money wallets
|
|
64
|
+
- [How Transfers Work](https://paystack.com/docs/transfers/how-transfers-work/): Understanding transfer flow, statuses, and processing times
|
|
65
|
+
- [Single Transfers](https://paystack.com/docs/transfers/single-transfers/): Step-by-step guide to sending money to individual recipients
|
|
66
|
+
- [Bulk Transfers](https://paystack.com/docs/transfers/bulk-transfers/): Batch disbursements to multiple recipients in a single request
|
|
67
|
+
- [Creating Transfer Recipients](https://paystack.com/docs/transfers/creating-transfer-recipients/): Setting up beneficiaries with bank account or mobile money details
|
|
68
|
+
- [Managing Transfers](https://paystack.com/docs/transfers/managing-transfers/): Balance management, OTP settings, and transfer controls
|
|
69
|
+
|
|
70
|
+
## Identity Verification
|
|
71
|
+
|
|
72
|
+
- [Identity Verification Overview](https://paystack.com/docs/identity-verification/): KYC tools for verifying customer identity and bank details
|
|
73
|
+
- [Verify Account Number](https://paystack.com/docs/identity-verification/verify-account-number/): Confirming bank account ownership before transfers (Nigeria & Ghana)
|
|
74
|
+
- [Validate Customer](https://paystack.com/docs/identity-verification/validate-customer/): BVN and identity verification for Dedicated Virtual Account customers
|
|
75
|
+
- [Resolve Card BIN](https://paystack.com/docs/identity-verification/resolve-card-bin/): Getting card information from the first 6 digits of a card number
|
|
76
|
+
|
|
77
|
+
## Developer Tools
|
|
78
|
+
|
|
79
|
+
- [Developer Tools Overview](https://paystack.com/docs/developer-tools/): SDKs, libraries, and tools for Paystack integration
|
|
80
|
+
- [InlineJS](https://paystack.com/docs/developer-tools/inlinejs/): JavaScript SDK for web payment integration with Popup checkout
|
|
81
|
+
- [Flutter SDK](https://paystack.com/docs/developer-tools/flutter-sdk/): Cross-platform mobile SDK for Flutter applications (Beta)
|
|
82
|
+
- [iOS SDK](https://paystack.com/docs/developer-tools/ios-sdk/): Native iOS SDK for accepting payments in Swift/Objective-C apps (Beta)
|
|
83
|
+
- [Android SDK](https://paystack.com/docs/developer-tools/android-sdk/): Native Android SDK for accepting payments in Kotlin/Java apps
|
|
84
|
+
|
|
85
|
+
## Guides
|
|
86
|
+
|
|
87
|
+
- [Guides Overview](https://paystack.com/docs/guides/): Step-by-step tutorials for integrating Paystack with various frameworks
|
|
88
|
+
- [Accept Payments on your Vue App](https://paystack.com/docs/guides/accept_payments_on_your_vue_app/): Vue.js integration tutorial with Paystack Popup
|
|
89
|
+
- [Accept Payments on your React App](https://paystack.com/docs/guides/accept_payments_on_your_react_app/): React integration tutorial with component examples
|
|
90
|
+
- [Accept Payments on your Android App](https://paystack.com/docs/guides/accept_payments_on_your_android_app/): Native Android integration with the Paystack Android SDK
|
|
91
|
+
- [Accept Payments in your Flutter App](https://paystack.com/docs/guides/accept-payments-in-your-flutter-app/): Flutter integration guide with the Paystack Flutter SDK
|
|
92
|
+
- [Using the Paystack Checkout in a Mobile WebView](https://paystack.com/docs/guides/using_the_paystack_checkout_in_a_mobile_webview/): Embedding Paystack checkout in mobile app WebViews
|
|
93
|
+
- [Migrating from InlineJS V1 to V2](https://paystack.com/docs/guides/migrating-from-inlinejs-v1-to-v2/): Upgrading from legacy Popup to InlineJS V2
|
|
94
|
+
|
|
95
|
+
## Libraries and Plugins
|
|
96
|
+
|
|
97
|
+
- [Libraries and Plugins Overview](https://paystack.com/docs/libraries-and-plugins/): Official and community-maintained integrations
|
|
98
|
+
- [Libraries](https://paystack.com/docs/libraries-and-plugins/libraries/): Server-side libraries for PHP, Python, Node.js, Java, .NET, Ruby, and more
|
|
99
|
+
- [Plugins](https://paystack.com/docs/libraries-and-plugins/plugins/): E-commerce platform plugins for WordPress, WooCommerce, Shopify, Magento, PrestaShop, Joomla, BigCommerce, Xero, and Ecwid
|
|
100
|
+
|
|
101
|
+
## Optional
|
|
102
|
+
|
|
103
|
+
- [API Reference](https://paystack.com/docs/api/): Complete REST API documentation with all endpoints, parameters, and responses
|
|
104
|
+
- [API Changelog](https://paystack.com/docs/changelog/api/): Latest API updates, new features, deprecations, and breaking changes
|
|
105
|
+
- [OpenAPI Specification](https://github.com/PaystackOSS/openapi): Machine-readable API spec for code generation and tooling
|
|
106
|
+
- [Paystack CLI](https://github.com/PaystackOSS/paystack-cli): Command-line tool for testing webhooks and managing integrations
|
|
107
|
+
- [Paystack MCP Server](https://github.com/PaystackOSS/paystack-mcp-server): Model Context Protocol server for AI assistant integration
|
|
108
|
+
- [Payslack Community](https://paystack.slack.com): Developer community on Slack for questions and discussions
|
|
109
|
+
- [Paystack Support](https://support.paystack.com/): Help center with FAQs and support resources
|
|
110
|
+
|
|
111
|
+
## Open Source Resources (PaystackOSS)
|
|
112
|
+
|
|
113
|
+
- [PaystackOSS on GitHub](https://github.com/PaystackOSS/): Official open-source projects and sample code
|
|
114
|
+
- [paystack-node](https://github.com/PaystackOSS/paystack-node): Official Node.js client library
|
|
115
|
+
- [paystack-python](https://github.com/PaystackOSS/paystack-python): Official Python client library
|
|
116
|
+
- [paystack_flutter](https://github.com/PaystackOSS/paystack_flutter): Official Flutter SDK
|
|
117
|
+
- [sample-gift-store](https://github.com/PaystackOSS/sample-gift-store): Vue.js e-commerce demo with Paystack checkout
|
|
118
|
+
- [sample-react](https://github.com/PaystackOSS/sample-react): React integration example
|
|
119
|
+
- [sample-subscriptions-app](https://github.com/PaystackOSS/sample-subscriptions-app): Subscription billing implementation demo
|
|
120
|
+
- [sample-restaurant](https://github.com/PaystackOSS/sample-restaurant): Terminal integration for in-person payments
|
|
121
|
+
- [sample-logistics](https://github.com/PaystackOSS/sample-logistics): Payment on delivery with Terminal
|
|
122
|
+
- [apple-pay-react](https://github.com/PaystackOSS/apple-pay-react): Apple Pay integration with React
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
# API Reference
|
|
127
|
+
|
|
128
|
+
> The Paystack API is a RESTful, JSON-based API that enables programmatic access to payment processing, transfers, customer management, and identity verification. All requests must be authenticated and made over HTTPS.
|
|
129
|
+
|
|
130
|
+
Base URL: `https://api.paystack.co`
|
|
131
|
+
|
|
132
|
+
Authentication: Include your secret key in the Authorization header as `Bearer SECRET_KEY`. Public keys are only for client-side integrations (Popup, Mobile SDKs).
|
|
133
|
+
|
|
134
|
+
HTTP Methods:
|
|
135
|
+
- GET: Retrieve resources
|
|
136
|
+
- POST: Create resources or perform actions
|
|
137
|
+
- PUT: Update resources
|
|
138
|
+
- DELETE: Remove resources
|
|
139
|
+
|
|
140
|
+
Response Format: All responses return JSON with `status` (boolean), `message` (string), and `data` (object/array) fields.
|
|
141
|
+
|
|
142
|
+
Supported Currencies: NGN (Nigeria), GHS (Ghana), ZAR (South Africa), KES (Kenya), USD (International)
|
|
143
|
+
|
|
144
|
+
Amount Format: All amounts are in the smallest currency unit (e.g., kobo for NGN, pesewas for GHS)
|
|
145
|
+
|
|
146
|
+
## API Introduction
|
|
147
|
+
|
|
148
|
+
- [API Introduction](https://paystack.com/docs/api/): Overview of Paystack API basics, base URL, and getting started
|
|
149
|
+
- [Authentication](https://paystack.com/docs/api/authentication/): API key management, public vs secret keys, and authorization headers
|
|
150
|
+
- [Errors](https://paystack.com/docs/api/errors/): Error types (api_error, validation_error, processor_error), codes, and handling
|
|
151
|
+
- [Transaction Errors](https://paystack.com/docs/api/errors/transaction/): Common transaction failure codes and troubleshooting
|
|
152
|
+
- [Pagination](https://paystack.com/docs/api/pagination/): Offset and cursor-based pagination for list endpoints
|
|
153
|
+
|
|
154
|
+
## Transactions API
|
|
155
|
+
|
|
156
|
+
- [Transaction API](https://paystack.com/docs/api/transaction/): Create and manage payment transactions on your integration
|
|
157
|
+
- [Initialize Transaction](https://paystack.com/docs/api/transaction/#initialize-transaction): POST /transaction/initialize - Start a new transaction and get authorization URL
|
|
158
|
+
- [Verify Transaction](https://paystack.com/docs/api/transaction/#verify-transaction): GET /transaction/verify/:reference - Confirm transaction status by reference
|
|
159
|
+
- [List Transactions](https://paystack.com/docs/api/transaction/#list-transactions): GET /transaction - Retrieve all transactions with pagination and filters
|
|
160
|
+
- [Fetch Transaction](https://paystack.com/docs/api/transaction/#fetch-transaction): GET /transaction/:id - Get details of a specific transaction by ID
|
|
161
|
+
- [Charge Authorization](https://paystack.com/docs/api/transaction/#charge-authorization): POST /transaction/charge_authorization - Charge a saved card using authorization code
|
|
162
|
+
- [View Transaction Timeline](https://paystack.com/docs/api/transaction/#view-transaction-timeline): GET /transaction/timeline/:id_or_reference - Get transaction history and events
|
|
163
|
+
- [Transaction Totals](https://paystack.com/docs/api/transaction/#transaction-totals): GET /transaction/totals - Get total volume and count of transactions
|
|
164
|
+
- [Export Transactions](https://paystack.com/docs/api/transaction/#export-transactions): GET /transaction/export - Export transactions to CSV
|
|
165
|
+
- [Partial Debit](https://paystack.com/docs/api/transaction/#partial-debit): POST /transaction/partial_debit - Charge partial amount from saved card
|
|
166
|
+
|
|
167
|
+
## Charge API
|
|
168
|
+
|
|
169
|
+
- [Charge API](https://paystack.com/docs/api/charge/): Initiate direct charges for various payment channels
|
|
170
|
+
- [Create Charge](https://paystack.com/docs/api/charge/#create-charge): POST /charge - Initiate a charge with email, amount, and payment channel details
|
|
171
|
+
- [Submit PIN](https://paystack.com/docs/api/charge/#submit-pin): POST /charge/submit_pin - Submit card PIN for charges requiring it
|
|
172
|
+
- [Submit OTP](https://paystack.com/docs/api/charge/#submit-otp): POST /charge/submit_otp - Submit OTP for 2FA verification
|
|
173
|
+
- [Submit Phone](https://paystack.com/docs/api/charge/#submit-phone): POST /charge/submit_phone - Submit phone number for verification
|
|
174
|
+
- [Submit Birthday](https://paystack.com/docs/api/charge/#submit-birthday): POST /charge/submit_birthday - Submit birthday for card verification
|
|
175
|
+
- [Submit Address](https://paystack.com/docs/api/charge/#submit-address): POST /charge/submit_address - Submit billing address for international cards
|
|
176
|
+
- [Check Pending Charge](https://paystack.com/docs/api/charge/#check-pending-charge): GET /charge/:reference - Check status of a pending charge
|
|
177
|
+
|
|
178
|
+
## Customer API
|
|
179
|
+
|
|
180
|
+
- [Customer API](https://paystack.com/docs/api/customer/): Manage customer records and their payment authorizations
|
|
181
|
+
- [Create Customer](https://paystack.com/docs/api/customer/#create-customer): POST /customer - Create a new customer with email and optional details
|
|
182
|
+
- [List Customers](https://paystack.com/docs/api/customer/#list-customers): GET /customer - Retrieve all customers with pagination
|
|
183
|
+
- [Fetch Customer](https://paystack.com/docs/api/customer/#fetch-customer): GET /customer/:email_or_code - Get customer details by email or customer code
|
|
184
|
+
- [Update Customer](https://paystack.com/docs/api/customer/#update-customer): PUT /customer/:code - Update customer information
|
|
185
|
+
- [Validate Customer](https://paystack.com/docs/api/customer/#validate-customer): POST /customer/:customer_code/identification - Verify customer identity with BVN
|
|
186
|
+
- [Whitelist/Blacklist Customer](https://paystack.com/docs/api/customer/#whitelist-blacklist-customer): POST /customer/set_risk_action - Set risk action to allow or deny transactions
|
|
187
|
+
- [Deactivate Authorization](https://paystack.com/docs/api/customer/#deactivate-authorization): POST /customer/deactivate_authorization - Disable a saved card authorization
|
|
188
|
+
|
|
189
|
+
## Plans API
|
|
190
|
+
|
|
191
|
+
- [Plan API](https://paystack.com/docs/api/plan/): Create and manage subscription plans
|
|
192
|
+
- [Create Plan](https://paystack.com/docs/api/plan/#create-plan): POST /plan - Create a plan with name, amount, and billing interval
|
|
193
|
+
- [List Plans](https://paystack.com/docs/api/plan/#list-plans): GET /plan - Retrieve all plans with pagination
|
|
194
|
+
- [Fetch Plan](https://paystack.com/docs/api/plan/#fetch-plan): GET /plan/:id_or_code - Get plan details by ID or plan code
|
|
195
|
+
- [Update Plan](https://paystack.com/docs/api/plan/#update-plan): PUT /plan/:id_or_code - Update plan details
|
|
196
|
+
|
|
197
|
+
## Subscriptions API
|
|
198
|
+
|
|
199
|
+
- [Subscription API](https://paystack.com/docs/api/subscription/): Manage recurring billing subscriptions
|
|
200
|
+
- [Create Subscription](https://paystack.com/docs/api/subscription/#create-subscription): POST /subscription - Subscribe a customer to a plan
|
|
201
|
+
- [List Subscriptions](https://paystack.com/docs/api/subscription/#list-subscriptions): GET /subscription - Retrieve all subscriptions with filters
|
|
202
|
+
- [Fetch Subscription](https://paystack.com/docs/api/subscription/#fetch-subscription): GET /subscription/:id_or_code - Get subscription details
|
|
203
|
+
- [Enable Subscription](https://paystack.com/docs/api/subscription/#enable-subscription): POST /subscription/enable - Reactivate a disabled subscription
|
|
204
|
+
- [Disable Subscription](https://paystack.com/docs/api/subscription/#disable-subscription): POST /subscription/disable - Pause or cancel a subscription
|
|
205
|
+
- [Generate Update Subscription Link](https://paystack.com/docs/api/subscription/#generate-update-subscription-link): GET /subscription/:code/manage/link - Get link for customer to update card
|
|
206
|
+
|
|
207
|
+
## Payment Pages API
|
|
208
|
+
|
|
209
|
+
- [Payment Pages API](https://paystack.com/docs/api/page/): Create and manage payment pages (hosted payment forms)
|
|
210
|
+
- [Create Payment Page](https://paystack.com/docs/api/page/#create-payment-page): POST /page - Create a payment page with custom slug
|
|
211
|
+
- [List Payment Pages](https://paystack.com/docs/api/page/#list-payment-pages): GET /page - Retrieve all payment pages
|
|
212
|
+
- [Fetch Payment Page](https://paystack.com/docs/api/page/#fetch-payment-page): GET /page/:id_or_slug - Get payment page details
|
|
213
|
+
- [Update Payment Page](https://paystack.com/docs/api/page/#update-payment-page): PUT /page/:id_or_slug - Update payment page details
|
|
214
|
+
- [Check Slug Availability](https://paystack.com/docs/api/page/#check-slug-availability): GET /page/check_slug_availability/:slug - Check if a slug is available
|
|
215
|
+
- [Add Products](https://paystack.com/docs/api/page/#add-products): POST /page/:id/product - Add products to a payment page
|
|
216
|
+
|
|
217
|
+
## Products API
|
|
218
|
+
|
|
219
|
+
- [Product API](https://paystack.com/docs/api/product/): Create and manage products for payment pages and storefronts
|
|
220
|
+
- [Create Product](https://paystack.com/docs/api/product/#create-product): POST /product - Create a new product
|
|
221
|
+
- [List Products](https://paystack.com/docs/api/product/#list-products): GET /product - Retrieve all products
|
|
222
|
+
- [Fetch Product](https://paystack.com/docs/api/product/#fetch-product): GET /product/:id - Get product details
|
|
223
|
+
- [Update Product](https://paystack.com/docs/api/product/#update-product): PUT /product/:id - Update product details
|
|
224
|
+
- [Delete Product](https://paystack.com/docs/api/product/#delete-product): DELETE /product/:id - Remove a product
|
|
225
|
+
|
|
226
|
+
## Storefront API
|
|
227
|
+
|
|
228
|
+
- [Storefront API](https://paystack.com/docs/api/storefront/): Create and manage digital storefronts (paystack.shop)
|
|
229
|
+
- [Create Storefront](https://paystack.com/docs/api/storefront/#create-storefront): POST /storefront - Create a new storefront with slug
|
|
230
|
+
- [List Storefronts](https://paystack.com/docs/api/storefront/#list-storefronts): GET /storefront - Retrieve all storefronts
|
|
231
|
+
- [Fetch Storefront](https://paystack.com/docs/api/storefront/#fetch-storefront): GET /storefront/:id - Get storefront details
|
|
232
|
+
- [Update Storefront](https://paystack.com/docs/api/storefront/#update-storefront): PUT /storefront/:id - Update storefront details
|
|
233
|
+
- [Delete Storefront](https://paystack.com/docs/api/storefront/#delete-storefront): DELETE /storefront/:id - Remove a storefront
|
|
234
|
+
|
|
235
|
+
## Payment Requests API
|
|
236
|
+
|
|
237
|
+
- [Payment Request API](https://paystack.com/docs/api/payment-request/): Create and manage invoices and payment requests
|
|
238
|
+
- [Create Payment Request](https://paystack.com/docs/api/payment-request/#create-payment-request): POST /paymentrequest - Create an invoice for a customer
|
|
239
|
+
- [List Payment Requests](https://paystack.com/docs/api/payment-request/#list-payment-requests): GET /paymentrequest - Retrieve all payment requests
|
|
240
|
+
- [Fetch Payment Request](https://paystack.com/docs/api/payment-request/#fetch-payment-request): GET /paymentrequest/:id_or_code - Get payment request details
|
|
241
|
+
- [Verify Payment Request](https://paystack.com/docs/api/payment-request/#verify-payment-request): GET /paymentrequest/verify/:code - Verify payment request status
|
|
242
|
+
- [Send Notification](https://paystack.com/docs/api/payment-request/#send-notification): POST /paymentrequest/notify/:code - Send payment request to customer email
|
|
243
|
+
- [Payment Request Totals](https://paystack.com/docs/api/payment-request/#payment-request-totals): GET /paymentrequest/totals - Get total amount and count
|
|
244
|
+
- [Finalize Payment Request](https://paystack.com/docs/api/payment-request/#finalize-payment-request): POST /paymentrequest/finalize/:code - Finalize a draft payment request
|
|
245
|
+
- [Update Payment Request](https://paystack.com/docs/api/payment-request/#update-payment-request): PUT /paymentrequest/:id_or_code - Update payment request details
|
|
246
|
+
- [Archive Payment Request](https://paystack.com/docs/api/payment-request/#archive-payment-request): POST /paymentrequest/archive/:code - Archive a payment request
|
|
247
|
+
|
|
248
|
+
## Subaccounts API
|
|
249
|
+
|
|
250
|
+
- [Subaccount API](https://paystack.com/docs/api/subaccount/): Manage subaccounts for split payments
|
|
251
|
+
- [Create Subaccount](https://paystack.com/docs/api/subaccount/#create-subaccount): POST /subaccount - Create a subaccount with bank details and split percentage
|
|
252
|
+
- [List Subaccounts](https://paystack.com/docs/api/subaccount/#list-subaccounts): GET /subaccount - Retrieve all subaccounts
|
|
253
|
+
- [Fetch Subaccount](https://paystack.com/docs/api/subaccount/#fetch-subaccount): GET /subaccount/:id_or_code - Get subaccount details
|
|
254
|
+
- [Update Subaccount](https://paystack.com/docs/api/subaccount/#update-subaccount): PUT /subaccount/:id_or_code - Update subaccount details
|
|
255
|
+
|
|
256
|
+
## Transaction Splits API
|
|
257
|
+
|
|
258
|
+
- [Transaction Split API](https://paystack.com/docs/api/split/): Configure multi-split payment rules
|
|
259
|
+
- [Create Split](https://paystack.com/docs/api/split/#create-split): POST /split - Create a transaction split configuration
|
|
260
|
+
- [List Splits](https://paystack.com/docs/api/split/#list-splits): GET /split - Retrieve all transaction splits
|
|
261
|
+
- [Fetch Split](https://paystack.com/docs/api/split/#fetch-split): GET /split/:id - Get transaction split details
|
|
262
|
+
- [Update Split](https://paystack.com/docs/api/split/#update-split): PUT /split/:id - Update split configuration
|
|
263
|
+
- [Add/Update Split Subaccount](https://paystack.com/docs/api/split/#add-update-split-subaccount): POST /split/:id/subaccount/add - Add or update subaccount in split
|
|
264
|
+
- [Remove Subaccount from Split](https://paystack.com/docs/api/split/#remove-subaccount-from-split): POST /split/:id/subaccount/remove - Remove subaccount from split
|
|
265
|
+
|
|
266
|
+
## Transfers API
|
|
267
|
+
|
|
268
|
+
- [Transfer API](https://paystack.com/docs/api/transfer/): Send money to bank accounts and mobile money wallets
|
|
269
|
+
- [Initiate Transfer](https://paystack.com/docs/api/transfer/#initiate-transfer): POST /transfer - Send money to a transfer recipient
|
|
270
|
+
- [Finalize Transfer](https://paystack.com/docs/api/transfer/#finalize-transfer): POST /transfer/finalize_transfer - Complete transfer with OTP
|
|
271
|
+
- [Initiate Bulk Transfer](https://paystack.com/docs/api/transfer/#initiate-bulk-transfer): POST /transfer/bulk - Send money to multiple recipients at once
|
|
272
|
+
- [List Transfers](https://paystack.com/docs/api/transfer/#list-transfers): GET /transfer - Retrieve all transfers with filters
|
|
273
|
+
- [Fetch Transfer](https://paystack.com/docs/api/transfer/#fetch-transfer): GET /transfer/:id_or_code - Get transfer details
|
|
274
|
+
- [Verify Transfer](https://paystack.com/docs/api/transfer/#verify-transfer): GET /transfer/verify/:reference - Verify transfer status
|
|
275
|
+
|
|
276
|
+
## Transfer Recipients API
|
|
277
|
+
|
|
278
|
+
- [Transfer Recipient API](https://paystack.com/docs/api/transfer-recipient/): Manage transfer beneficiaries
|
|
279
|
+
- [Create Transfer Recipient](https://paystack.com/docs/api/transfer-recipient/#create-transfer-recipient): POST /transferrecipient - Create a recipient with bank or mobile money details
|
|
280
|
+
- [Bulk Create Transfer Recipients](https://paystack.com/docs/api/transfer-recipient/#bulk-create-transfer-recipients): POST /transferrecipient/bulk - Create multiple recipients at once
|
|
281
|
+
- [List Transfer Recipients](https://paystack.com/docs/api/transfer-recipient/#list-transfer-recipients): GET /transferrecipient - Retrieve all transfer recipients
|
|
282
|
+
- [Fetch Transfer Recipient](https://paystack.com/docs/api/transfer-recipient/#fetch-transfer-recipient): GET /transferrecipient/:id_or_code - Get recipient details
|
|
283
|
+
- [Update Transfer Recipient](https://paystack.com/docs/api/transfer-recipient/#update-transfer-recipient): PUT /transferrecipient/:id_or_code - Update recipient details
|
|
284
|
+
- [Delete Transfer Recipient](https://paystack.com/docs/api/transfer-recipient/#delete-transfer-recipient): DELETE /transferrecipient/:id_or_code - Remove a transfer recipient
|
|
285
|
+
|
|
286
|
+
## Transfer Control API
|
|
287
|
+
|
|
288
|
+
- [Transfer Control API](https://paystack.com/docs/api/transfer-control/): Manage transfer settings and balance
|
|
289
|
+
- [Check Balance](https://paystack.com/docs/api/transfer-control/#check-balance): GET /balance - Get available balance on integration
|
|
290
|
+
- [Fetch Balance Ledger](https://paystack.com/docs/api/transfer-control/#fetch-balance-ledger): GET /balance/ledger - Get balance ledger entries
|
|
291
|
+
- [Resend OTP](https://paystack.com/docs/api/transfer-control/#resend-otp): POST /transfer/resend_otp - Resend OTP for transfer verification
|
|
292
|
+
- [Disable OTP](https://paystack.com/docs/api/transfer-control/#disable-otp): POST /transfer/disable_otp - Disable OTP requirement for transfers
|
|
293
|
+
- [Finalize Disable OTP](https://paystack.com/docs/api/transfer-control/#finalize-disable-otp): POST /transfer/disable_otp_finalize - Complete OTP disable with token
|
|
294
|
+
- [Enable OTP](https://paystack.com/docs/api/transfer-control/#enable-otp): POST /transfer/enable_otp - Re-enable OTP requirement
|
|
295
|
+
|
|
296
|
+
## Settlements API
|
|
297
|
+
|
|
298
|
+
- [Settlement API](https://paystack.com/docs/api/settlement/): View settlement payouts to your bank account
|
|
299
|
+
- [List Settlements](https://paystack.com/docs/api/settlement/#list-settlements): GET /settlement - Retrieve all settlements with filters
|
|
300
|
+
- [List Settlement Transactions](https://paystack.com/docs/api/settlement/#list-settlement-transactions): GET /settlement/:id/transactions - Get transactions in a settlement
|
|
301
|
+
|
|
302
|
+
## Dedicated Virtual Accounts API
|
|
303
|
+
|
|
304
|
+
- [Dedicated Virtual Account API](https://paystack.com/docs/api/dedicated-virtual-account/): Manage customer-specific virtual bank accounts
|
|
305
|
+
- [Create Dedicated Virtual Account](https://paystack.com/docs/api/dedicated-virtual-account/#create-dedicated-virtual-account): POST /dedicated_account - Create a DVA for a customer
|
|
306
|
+
- [Assign Dedicated Virtual Account](https://paystack.com/docs/api/dedicated-virtual-account/#assign-dedicated-virtual-account): POST /dedicated_account/assign - Assign DVA to existing customer
|
|
307
|
+
- [List Dedicated Virtual Accounts](https://paystack.com/docs/api/dedicated-virtual-account/#list-dedicated-virtual-accounts): GET /dedicated_account - Retrieve all DVAs
|
|
308
|
+
- [Fetch Dedicated Virtual Account](https://paystack.com/docs/api/dedicated-virtual-account/#fetch-dedicated-virtual-account): GET /dedicated_account/:dedicated_account_id - Get DVA details
|
|
309
|
+
- [Requery Dedicated Virtual Account](https://paystack.com/docs/api/dedicated-virtual-account/#requery-dedicated-virtual-account): GET /dedicated_account/requery - Check for missed transactions
|
|
310
|
+
- [Deactivate Dedicated Virtual Account](https://paystack.com/docs/api/dedicated-virtual-account/#deactivate-dedicated-virtual-account): DELETE /dedicated_account/:dedicated_account_id - Deactivate a DVA
|
|
311
|
+
- [Split Dedicated Virtual Account Transaction](https://paystack.com/docs/api/dedicated-virtual-account/#split-dedicated-virtual-account-transaction): POST /dedicated_account/split - Configure split for DVA transactions
|
|
312
|
+
- [Remove Split from DVA](https://paystack.com/docs/api/dedicated-virtual-account/#remove-split-from-dva): DELETE /dedicated_account/split - Remove split configuration
|
|
313
|
+
- [Fetch Bank Providers](https://paystack.com/docs/api/dedicated-virtual-account/#fetch-bank-providers): GET /dedicated_account/available_providers - Get supported DVA banks
|
|
314
|
+
|
|
315
|
+
## Bulk Charges API
|
|
316
|
+
|
|
317
|
+
- [Bulk Charge API](https://paystack.com/docs/api/bulk-charge/): Process multiple recurring charges in batch
|
|
318
|
+
- [Initiate Bulk Charge](https://paystack.com/docs/api/bulk-charge/#initiate-bulk-charge): POST /bulkcharge - Create a bulk charge batch
|
|
319
|
+
- [List Bulk Charge Batches](https://paystack.com/docs/api/bulk-charge/#list-bulk-charge-batches): GET /bulkcharge - Retrieve all bulk charge batches
|
|
320
|
+
- [Fetch Bulk Charge Batch](https://paystack.com/docs/api/bulk-charge/#fetch-bulk-charge-batch): GET /bulkcharge/:id_or_code - Get batch details
|
|
321
|
+
- [Fetch Charges in Batch](https://paystack.com/docs/api/bulk-charge/#fetch-charges-in-batch): GET /bulkcharge/:id_or_code/charges - Get individual charges in batch
|
|
322
|
+
- [Pause Bulk Charge](https://paystack.com/docs/api/bulk-charge/#pause-bulk-charge): GET /bulkcharge/pause/:batch_code - Pause a running batch
|
|
323
|
+
- [Resume Bulk Charge](https://paystack.com/docs/api/bulk-charge/#resume-bulk-charge): GET /bulkcharge/resume/:batch_code - Resume a paused batch
|
|
324
|
+
|
|
325
|
+
## Disputes API
|
|
326
|
+
|
|
327
|
+
- [Dispute API](https://paystack.com/docs/api/dispute/): Handle chargebacks and payment disputes
|
|
328
|
+
- [List Disputes](https://paystack.com/docs/api/dispute/#list-disputes): GET /dispute - Retrieve all disputes with filters
|
|
329
|
+
- [Fetch Dispute](https://paystack.com/docs/api/dispute/#fetch-dispute): GET /dispute/:id - Get dispute details
|
|
330
|
+
- [List Transaction Disputes](https://paystack.com/docs/api/dispute/#list-transaction-disputes): GET /dispute/transaction/:id - Get disputes for a transaction
|
|
331
|
+
- [Update Dispute](https://paystack.com/docs/api/dispute/#update-dispute): PUT /dispute/:id - Update dispute with refund amount
|
|
332
|
+
- [Add Evidence](https://paystack.com/docs/api/dispute/#add-evidence): POST /dispute/:id/evidence - Upload evidence for dispute
|
|
333
|
+
- [Get Upload URL](https://paystack.com/docs/api/dispute/#get-upload-url): GET /dispute/:id/upload_url - Get URL to upload dispute documents
|
|
334
|
+
- [Resolve Dispute](https://paystack.com/docs/api/dispute/#resolve-dispute): PUT /dispute/:id/resolve - Accept or decline dispute
|
|
335
|
+
- [Export Disputes](https://paystack.com/docs/api/dispute/#export-disputes): GET /dispute/export - Export disputes to CSV
|
|
336
|
+
|
|
337
|
+
## Refunds API
|
|
338
|
+
|
|
339
|
+
- [Refund API](https://paystack.com/docs/api/refund/): Process partial and full refunds
|
|
340
|
+
- [Create Refund](https://paystack.com/docs/api/refund/#create-refund): POST /refund - Initiate a refund for a transaction
|
|
341
|
+
- [List Refunds](https://paystack.com/docs/api/refund/#list-refunds): GET /refund - Retrieve all refunds with filters
|
|
342
|
+
- [Fetch Refund](https://paystack.com/docs/api/refund/#fetch-refund): GET /refund/:reference - Get refund details
|
|
343
|
+
- [Retry Refund](https://paystack.com/docs/api/refund/#retry-refund): POST /refund/:reference/retry - Retry a failed refund with new bank details
|
|
344
|
+
|
|
345
|
+
## Terminal API
|
|
346
|
+
|
|
347
|
+
- [Terminal API](https://paystack.com/docs/api/terminal/): Manage Paystack Terminal devices and events
|
|
348
|
+
- [Send Event](https://paystack.com/docs/api/terminal/#send-event): POST /terminal/:terminal_id/event - Send payment event to Terminal
|
|
349
|
+
- [Fetch Event Status](https://paystack.com/docs/api/terminal/#fetch-event-status): GET /terminal/:terminal_id/event/:event_id - Check event processing status
|
|
350
|
+
- [Fetch Terminal Status](https://paystack.com/docs/api/terminal/#fetch-terminal-status): GET /terminal/:terminal_id/presence - Check if Terminal is online
|
|
351
|
+
- [List Terminals](https://paystack.com/docs/api/terminal/#list-terminals): GET /terminal - Retrieve all registered Terminals
|
|
352
|
+
- [Fetch Terminal](https://paystack.com/docs/api/terminal/#fetch-terminal): GET /terminal/:terminal_id - Get Terminal details
|
|
353
|
+
- [Update Terminal](https://paystack.com/docs/api/terminal/#update-terminal): PUT /terminal/:terminal_id - Update Terminal details
|
|
354
|
+
- [Commission Terminal](https://paystack.com/docs/api/terminal/#commission-terminal): POST /terminal/commission_device - Activate a new Terminal
|
|
355
|
+
- [Decommission Terminal](https://paystack.com/docs/api/terminal/#decommission-terminal): POST /terminal/decommission_device - Deactivate a Terminal
|
|
356
|
+
|
|
357
|
+
## Verification API
|
|
358
|
+
|
|
359
|
+
- [Verification API](https://paystack.com/docs/api/verification/): KYC and identity verification endpoints
|
|
360
|
+
- [Resolve Account](https://paystack.com/docs/api/verification/#resolve-account): GET /bank/resolve - Confirm bank account ownership with account number and bank code
|
|
361
|
+
- [Validate Account](https://paystack.com/docs/api/verification/#validate-account): POST /bank/validate - Validate account details for South African accounts
|
|
362
|
+
- [Resolve Card BIN](https://paystack.com/docs/api/verification/#resolve-card-bin): GET /decision/bin/:bin - Get card information from first 6 digits
|
|
363
|
+
|
|
364
|
+
## Apple Pay API
|
|
365
|
+
|
|
366
|
+
- [Apple Pay API](https://paystack.com/docs/api/apple-pay/): Register and manage domains for Apple Pay transactions
|
|
367
|
+
- [Register Domain](https://paystack.com/docs/api/apple-pay/#register-domain): POST /apple-pay/domain - Register a domain for Apple Pay
|
|
368
|
+
- [List Domains](https://paystack.com/docs/api/apple-pay/#list-domains): GET /apple-pay/domain - List all registered Apple Pay domains
|
|
369
|
+
- [Unregister Domain](https://paystack.com/docs/api/apple-pay/#unregister-domain): DELETE /apple-pay/domain - Remove a domain from Apple Pay
|
|
370
|
+
|
|
371
|
+
## Integration API
|
|
372
|
+
|
|
373
|
+
- [Integration API](https://paystack.com/docs/api/integration/): Manage integration settings
|
|
374
|
+
- [Fetch Timeout](https://paystack.com/docs/api/integration/#fetch-timeout): GET /integration/payment_session_timeout - Get payment session timeout
|
|
375
|
+
- [Update Timeout](https://paystack.com/docs/api/integration/#update-timeout): PUT /integration/payment_session_timeout - Set payment session timeout
|
|
376
|
+
|
|
377
|
+
## Miscellaneous API
|
|
378
|
+
|
|
379
|
+
- [Miscellaneous API](https://paystack.com/docs/api/miscellaneous/): Supporting APIs for banks, countries, and currencies
|
|
380
|
+
- [List Banks](https://paystack.com/docs/api/miscellaneous/#list-banks): GET /bank - Get list of supported banks by country
|
|
381
|
+
- [List Countries](https://paystack.com/docs/api/miscellaneous/#list-countries): GET /country - Get list of supported countries
|
|
382
|
+
- [List States](https://paystack.com/docs/api/miscellaneous/#list-states): GET /address_verification/states - Get states for AVS verification
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# QoreID
|
|
2
|
+
|
|
3
|
+
QoreID provides identity-verification APIs for KYC, business verification, CAC lookups, and hosted verification sessions.
|
|
4
|
+
|
|
5
|
+
## Configuration
|
|
6
|
+
|
|
7
|
+
- Base URL used by payba3: `https://api.qoreid.com`
|
|
8
|
+
- Optional override: `QOREID_BASE_URL`
|
|
9
|
+
- payba3 env switch: `QOREID_ENVIRONMENT=sandbox|live`
|
|
10
|
+
- Sandbox keys: `QOREID_CLIENT`, `QOREID_SECRET`
|
|
11
|
+
- Live keys: `QOREID_LIVE_CLIENT`, `QOREID_LIVE_SECRET`
|
|
12
|
+
|
|
13
|
+
## Authentication
|
|
14
|
+
|
|
15
|
+
QoreID API calls should be made from the backend with client credentials. payba3 obtains and caches an access token, then refreshes it before expiry.
|
|
16
|
+
|
|
17
|
+
Token response shapes can vary by integration surface. Accept both:
|
|
18
|
+
|
|
19
|
+
```json
|
|
20
|
+
{
|
|
21
|
+
"accessToken": "token",
|
|
22
|
+
"expiresIn": 3600
|
|
23
|
+
}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
and:
|
|
27
|
+
|
|
28
|
+
```json
|
|
29
|
+
{
|
|
30
|
+
"access_token": "token",
|
|
31
|
+
"expires_in": 3600
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Never expose QoreID client secrets to frontend code.
|
|
36
|
+
|
|
37
|
+
## Sessions
|
|
38
|
+
|
|
39
|
+
Create hosted verification sessions with:
|
|
40
|
+
|
|
41
|
+
`POST /v1/sessions`
|
|
42
|
+
|
|
43
|
+
Use this when integrating the QoreID Web SDK or any hosted verification flow. The backend should mint the session token and pass only the safe session data to the frontend.
|
|
44
|
+
|
|
45
|
+
## CAC Verification
|
|
46
|
+
|
|
47
|
+
Default CAC Basic endpoint:
|
|
48
|
+
|
|
49
|
+
`POST /v1/ng/identities/cac-basic`
|
|
50
|
+
|
|
51
|
+
Premium variants:
|
|
52
|
+
|
|
53
|
+
- `POST /v2/ng/identities/cac-premium`
|
|
54
|
+
- `POST /v3/ng/identities/cac-premium`
|
|
55
|
+
|
|
56
|
+
Common body:
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
{
|
|
60
|
+
"regNumber": "RC123456"
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## payba3 Notes
|
|
65
|
+
|
|
66
|
+
- `verifyCacNumber(cacNumber)` defaults to CAC Basic V1.
|
|
67
|
+
- Use `verifyCacNumber(cacNumber, { version: "v3", level: "premium" })` for CAC Premium V3.
|
|
68
|
+
- Use `createSession(payload)` for hosted/SDK flows.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# Safehaven
|
|
2
|
+
|
|
3
|
+
Safehaven MFB provides Nigerian banking APIs for account creation, subaccounts, virtual accounts, transfers, and value-added services.
|
|
4
|
+
|
|
5
|
+
## Environments
|
|
6
|
+
|
|
7
|
+
- Sandbox API: `https://api.sandbox.safehavenmfb.com`
|
|
8
|
+
- Live API: `https://api.safehavenmfb.com`
|
|
9
|
+
- payba3 env switch: `SAFEHAVEN_ENVIRONMENT=sandbox|live`
|
|
10
|
+
- Optional override: `SAFEHAVEN_BASE_URL`
|
|
11
|
+
|
|
12
|
+
## Authentication
|
|
13
|
+
|
|
14
|
+
Generate an access token with:
|
|
15
|
+
|
|
16
|
+
`POST /oauth2/token`
|
|
17
|
+
|
|
18
|
+
Headers:
|
|
19
|
+
|
|
20
|
+
- `accept: application/json`
|
|
21
|
+
- `content-type: application/json`
|
|
22
|
+
|
|
23
|
+
Body:
|
|
24
|
+
|
|
25
|
+
```json
|
|
26
|
+
{
|
|
27
|
+
"grant_type": "client_credentials",
|
|
28
|
+
"client_assertion_type": "urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
|
|
29
|
+
"client_id": "SAFEHAVEN_CLIENT_ID",
|
|
30
|
+
"client_assertion": "SAFEHAVEN_CLIENT_ASSERTION"
|
|
31
|
+
}
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Token responses include:
|
|
35
|
+
|
|
36
|
+
- `access_token`
|
|
37
|
+
- `expires_in`
|
|
38
|
+
- `refresh_token`
|
|
39
|
+
- `client_id`
|
|
40
|
+
- `ibs_client_id`
|
|
41
|
+
- `ibs_user_id`
|
|
42
|
+
|
|
43
|
+
Use `expires_in` to refresh before expiry. For banking/account APIs, prefer the returned `ibs_client_id` as the `ClientID` header. Fall back to the OAuth `client_id` only when the token response does not include `ibs_client_id`.
|
|
44
|
+
|
|
45
|
+
## Subaccounts
|
|
46
|
+
|
|
47
|
+
Create an individual subaccount with:
|
|
48
|
+
|
|
49
|
+
`POST /accounts/v2/subaccount`
|
|
50
|
+
|
|
51
|
+
Headers:
|
|
52
|
+
|
|
53
|
+
- `authorization: Bearer {access_token}`
|
|
54
|
+
- `ClientID: {ibs_client_id}`
|
|
55
|
+
- `accept: application/json`
|
|
56
|
+
- `content-type: application/json`
|
|
57
|
+
|
|
58
|
+
Common body fields:
|
|
59
|
+
|
|
60
|
+
```json
|
|
61
|
+
{
|
|
62
|
+
"phoneNumber": "08000000000",
|
|
63
|
+
"identityType": "vID",
|
|
64
|
+
"identityId": "identity-id",
|
|
65
|
+
"emailAddress": "customer@example.com",
|
|
66
|
+
"externalReference": "customer_123",
|
|
67
|
+
"autoSweep": false
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Identity flows may use `identityId`, `identityNumber`, `otp`, or `callbackUrl` depending on the selected `identityType`.
|
|
72
|
+
|
|
73
|
+
## payba3 Notes
|
|
74
|
+
|
|
75
|
+
- Safehaven token refresh must be automatic.
|
|
76
|
+
- Store token metadata, not only `access_token`, because account calls need `ibs_client_id`.
|
|
77
|
+
- Never expose `SAFEHAVEN_CLIENT_ASSERTION` to browser/client code.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# SeerBit
|
|
2
|
+
|
|
3
|
+
SeerBit provides online payments, virtual accounts, collections, payment links, products/orders, recurring billing, and checkout APIs.
|
|
4
|
+
|
|
5
|
+
## Environment
|
|
6
|
+
|
|
7
|
+
- Primary API base URL: `https://seerbitapi.com/api/v2`
|
|
8
|
+
- payba3 env switch: `SEERBIT_ENVIRONMENT=sandbox|live`
|
|
9
|
+
- Optional override: `SEERBIT_BASE_URL`
|
|
10
|
+
- Sandbox keys: `SEERBIT_PUBLIC_KEY`, `SEERBIT_SECRET_KEY`
|
|
11
|
+
- Live keys: `SEERBIT_LIVE_PUBLIC_KEY`, `SEERBIT_LIVE_SECRET_KEY`
|
|
12
|
+
|
|
13
|
+
## Authentication
|
|
14
|
+
|
|
15
|
+
Generate the encrypted bearer token with:
|
|
16
|
+
|
|
17
|
+
`POST /encrypt/keys`
|
|
18
|
+
|
|
19
|
+
Body:
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{
|
|
23
|
+
"key": "{secretKey}.{publicKey}"
|
|
24
|
+
}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Use the returned encrypted key as:
|
|
28
|
+
|
|
29
|
+
`Authorization: Bearer {encryptedKey}`
|
|
30
|
+
|
|
31
|
+
The encrypted-key response may appear as either `EncryptedSecKey` or `EncrytedSecKey`; robust integrations should support both spellings.
|
|
32
|
+
|
|
33
|
+
## Virtual Accounts
|
|
34
|
+
|
|
35
|
+
Create a virtual account:
|
|
36
|
+
|
|
37
|
+
`POST /virtual-accounts`
|
|
38
|
+
|
|
39
|
+
Body:
|
|
40
|
+
|
|
41
|
+
```json
|
|
42
|
+
{
|
|
43
|
+
"publicKey": "SEERBIT_PUBLIC_KEY",
|
|
44
|
+
"fullName": "Jane Doe",
|
|
45
|
+
"bankVerificationNumber": "00000000000",
|
|
46
|
+
"currency": "NGN",
|
|
47
|
+
"country": "NG",
|
|
48
|
+
"reference": "customer_123",
|
|
49
|
+
"email": "jane@example.com"
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Retrieve a virtual account:
|
|
54
|
+
|
|
55
|
+
`GET /virtual-accounts/{paymentReference}`
|
|
56
|
+
|
|
57
|
+
## payba3 Notes
|
|
58
|
+
|
|
59
|
+
- `bankVerificationNumber` is optional in payba3 input and defaults to an empty string for sandbox-friendly flows.
|
|
60
|
+
- Production/compliance flows should pass BVN when required by the merchant/provider configuration.
|
|
61
|
+
- SeerBit encrypted bearer keys do not expose a standard `expires_in` field in the documented response; regenerate on process restart or when the provider rejects a cached token.
|