Paystack
Paystack is an African payment processor (acquired by Stripe in 2020) that lets businesses accept payments in Nigeria, Ghana, South Africa, Kenya, Côte d'Ivoire, and Egypt across cards, bank transfers, USSD, QR, EFT, and mobile money channels. Its single REST API covers one-time charges, recurring subscriptions, marketplace splits, dedicated virtual accounts, invoices, transfers (payouts), refunds, disputes, settlements, and KYC/identity verification — all wrapped in a developer experience that has made it one of the most respected public APIs on the continent.
APIs
Paystack Accept Payments API
Initialize, verify, charge, and manage one-time card, bank, USSD, mobile money, QR, and bank transfer payments. The Transaction and Charge resources are the core of Paystack — a...
Paystack Subscriptions API
Create plans and run recurring subscriptions against stored card authorizations. Includes plan management, subscription lifecycle (create / disable / enable), customer self-serv...
Paystack Customers API
Create, list, and update customer profiles; whitelist or blacklist customers via risk_action; deactivate stored authorizations; and run KYC validation against customer identities.
Paystack Transfers API
Send money out of your Paystack balance to bank accounts and mobile money wallets across supported markets. Covers transfer recipients, single and bulk transfers, OTP workflows,...
Paystack Splits and Subaccounts API
Build marketplaces by automatically splitting a single payment between the main account and multiple subaccounts. Configure percentage or flat splits, set fee-bearers, and manag...
Paystack Dedicated Virtual Accounts API
Provision dedicated NUBAN virtual bank accounts for individual customers so they can pay by bank transfer with automatic reconciliation back to the customer profile. Includes sp...
Paystack Products and Payment Pages API
Manage products in your Paystack inventory and assemble them into Paystack-hosted Payment Pages so you can collect payments without operating your own checkout.
Paystack Payment Requests API
Issue invoice-style payment requests to customers by email, with verification, notification, finalization, and archival flows.
Paystack Refunds and Disputes API
Process partial and full refunds against successful transactions and respond to cardholder disputes — including evidence upload via signed URL, resolution workflows, and exports.
Paystack Settlements API
Fetch settlement records and the underlying transactions that comprise each payout to your bank account.
Paystack Verification API
Identity, BVN, bank account, card BIN, country, bank, and address-verification lookups used to validate customers, beneficiary accounts, and cards before transacting.
Paystack Balance API
Fetch your Paystack balance per currency and read the balance ledger for treasury operations and reconciliation.
Paystack Integration Settings API
Read and update integration-wide settings such as the payment session timeout for hosted checkout.
Paystack Webhooks
Outbound webhook surface that notifies a single merchant-configured POST endpoint of transaction, dispute, refund, transfer, subscription, invoice, payment request, customer ide...
Collections
Paystack Accept Payments API
POSTMANPaystack Balance API
POSTMANPaystack Customers API
POSTMANPaystack Payment Requests API
POSTMANPaystack Settlements API
POSTMANPaystack Subscriptions API
POSTMANPaystack Transfers API
POSTMANPaystack Verification API
POSTMANPaystack Balance API
OPENArazzo Workflows
Paystack Add a Subaccount to an Existing Split
Create a new subaccount, add it to an existing transaction split, then fetch the split to confirm membership.
ARAZZOPaystack Blacklist a Customer After a Dispute
List the disputes raised against a transaction, fetch the customer, then blacklist them and deactivate the card authorization.
ARAZZOPaystack Bulk Recipients and Bulk Transfer
Bulk-create transfer recipients, list them to confirm registration, then initiate a bulk transfer to pay them all.
ARAZZOPaystack Charge and Refund a Transaction
Initialize and verify a transaction, then create a refund against it and fetch the refund status.
ARAZZOPaystack Create Charge and Submit OTP
Create a direct charge, branch when an OTP is required, submit the OTP, then check the final charge status.
ARAZZOPaystack Create Charge and Submit PIN
Create a direct card charge, branch when a PIN is required, submit the PIN, then check the final charge status.
ARAZZOPaystack Check Authorization and Partial Debit
Check that an authorization can bear a charge, then take a partial debit against it for whatever is available.
ARAZZOPaystack Create Customer and Charge Authorization
Create a customer, initialize a first transaction, verify it to obtain an authorization, then charge that authorization for a recurring debit.
ARAZZOPaystack Create Customer and Send Payment Request
Create a customer, raise an invoice-style payment request for them, send the email notification, then verify the request.
ARAZZOPaystack Provision a Dedicated Virtual Account
Look up an available bank provider, create a customer, assign a dedicated NUBAN virtual account, then fetch its details.
ARAZZOPaystack Create Customer, Plan and Subscription
Create a customer, define a billing plan, then subscribe the customer to the plan for recurring charges.
ARAZZOPaystack Create Product and Payment Page
Create a product, check a page slug is available, create a hosted payment page, then attach the product to the page.
ARAZZOPaystack Create Recipient and Initiate Transfer
Create a transfer recipient from bank details, initiate a transfer to it, then verify the transfer by reference.
ARAZZOPaystack Create Subaccount and Transaction Split
Create a subaccount, build a transaction split that pays it, then initialize a transaction against the split.
ARAZZOPaystack Disable and Re-enable a Subscription
Fetch a subscription to read its email token, disable it, then re-enable it using the same code and token.
ARAZZOPaystack Submit Dispute Evidence and Resolve
Fetch a dispute, attach evidence to it, request an upload URL for supporting files, then resolve the dispute.
ARAZZOPaystack Finalize and Archive a Draft Payment Request
Create a draft payment request, finalize it to issue the invoice, verify it, then archive it once handled.
ARAZZOPaystack Initialize and Verify Transaction
Initialize a checkout transaction and then verify its final status by reference.
ARAZZOPaystack Initiate and Finalize Transfer with OTP
Initiate a transfer, finalize it with the OTP sent to the business phone, then verify the completed transfer.
ARAZZOPaystack Initiate and Monitor a Bulk Charge
Initiate a bulk charge batch against saved authorizations, fetch the batch, then list the charges in the batch.
ARAZZOPaystack Resolve Account and Create Transfer Recipient
Resolve a bank account number to confirm the account name, then create a transfer recipient and initiate a transfer.
ARAZZOPaystack Resolve Card BIN and Charge Authorization
Resolve a card BIN to learn the card brand and country, then charge a saved authorization for that card.
ARAZZOPaystack Settlement Reconciliation
Fetch settlement records, then list the transactions that make up a chosen settlement payout.
ARAZZOPaystack Subscribe and Generate a Management Link
Create a subscription, fetch it to read its status, then generate a self-service management link for the customer.
ARAZZOPaystack Create and Validate Customer (KYC)
Create a customer, resolve their BVN, then submit a bank-account identification to validate the customer.
ARAZZOGraphQL
Paystack GraphQL Schema
This document describes a GraphQL schema that represents the Paystack REST API domain model. Paystack is a Nigerian payments platform (acquired by Stripe in 2020) that provides ...
GRAPHQLPricing Plans
Rate Limits
FinOps
Paystack Finops
FINOPSFeatures
Paystack-hosted authorization URL that handles PCI, SCA, OTP, USSD, QR, and 3DS flows for you.
Initiate charges programmatically with structured PIN, OTP, phone, birthday, and address challenge steps.
Plans plus subscriptions with self-service customer management and email/SMS invoice notifications.
Route a single payment to multiple subaccounts on a percentage or flat basis for marketplaces.
Vendor or merchant profiles with their own settlement bank and percentage charge.
NUBAN virtual accounts assigned to individual customers for bank-transfer-based payments with auto-reconciliation.
No-code Paystack-hosted pages for selling products or accepting donations.
Email-based invoices with verification, notification, finalization, and archive flows.
Pay out from balance to bank accounts and mobile money wallets, one at a time or as batches.
Charge many stored authorizations in a single batch with pause and resume controls.
Partial or full refunds with merchant and customer notes.
Programmatic dispute response with signed evidence-upload URLs and resolution workflow.
Read net settlement payouts and drill down into the transactions that composed each batch.
BVN match, BVN resolution, account number resolution, card BIN lookup, country/bank lookup, and AVS state lists.
Accept NGN, GHS, ZAR, KES, XOF, EGP, and USD across supported markets.
Card, bank transfer, USSD, QR, mobile money (M-Pesa, MTN MoMo, Orange Money, Wave), EFT, Apple Pay, Visa QR.
Signed webhook deliveries for transaction, dispute, refund, transfer, subscription, and invoice events with 72-hour retries.
A complete test environment with test cards covering success, decline, OTP, PIN, and 3DS flows.
First-class merchant dashboard for transactions, customers, subscriptions, transfers, settlements, and disputes.
Use Cases
Drop-in checkout for online stores accepting cards, USSD, bank transfer, and mobile money across Africa.
Subscription-based revenue with plans, automatic renewal, self-service updates, and dunning.
Split-payment routing to vendor subaccounts with platform fee retention.
Accept cards from international customers while settling locally.
M-Pesa, MTN, Orange Money, Wave acceptance in Ghana, Kenya, Côte d'Ivoire.
Dedicated virtual accounts auto-reconcile inbound NUBAN transfers.
Single and bulk transfers to bank or mobile money for gig platforms and payroll-light apps.
Issue payment requests by email with verification and reminders.
Payment Pages for one-off donations or product sales without writing checkout code.
Integrations
Official Paystack payment gateway for WooCommerce stores.
Official Magento extensions for Paystack acceptance.
Plugins for PrestaShop 1.6 and 1.7.
OpenCart extensions for Paystack.
Hosting and billing platform integration.
Course enrolment via Paystack.
Payment gateway integration for Odoo 14.
Paystack gateway driver for the PHP Omnipay payment-abstraction library.
Community and official plugins across major CMS platforms.
Paystack is a Stripe subsidiary; merchants can operate in Stripe-aligned multi-region setups.
Solutions
Hosted checkout for e-commerce and SaaS.
Splits + subaccounts for multi-vendor platforms.
Plans, subscriptions, and dunning for recurring revenue.
Transfers, dedicated virtual accounts, and identity verification for fintech and platform builds.
Payment Pages and Payment Requests for donations and tuition collection.
Event Specifications
Paystack Webhooks
AsyncAPI 2.6 description of Paystack's outbound webhook surface. Paystack notifies a single merchant-configured POST endpoint (the "webhook URL") whenever an event occurs agains...
ASYNCAPI