Paystack is a fintech company that provides payment processing solutions for businesses in Africa.
Supported Transaction Types
Authorisation
Capture
Purchase
Refund
Withdrawal
Void
Integrations Supported
Deposit
Hosted Payment Page
Direct Connect ( server-to-server)
Withdrawal
Hosted Payment Page
Direct Connect ( server-to-server)
Official Logo:

Currencies & Countries Supported
Title  | Description  | 
|---|---|
Currencies Supported  | Major Currencies in Africa  | 
Additional attributes to process Paystack
You must include the following JSON Attributes to the payload. These attributes inform us to redirect to Paystack to finalize the payment process.
Description  | Hosted Payment Page  | Direct Connect (Withdrawals)  | 
|---|---|---|
Transaction type  | "TransactionType": "PURC",  | "TransactionType": "ORIGINALCREDIT",  | 
Client  | "Client": { "Email": "test@email.com", "FirstName": "John", "LastName": "Doe", "Country": "NGA", "MobileNo": "10449262289", "Street": "Street Name, 1", "City": "London", "IPAddress": "127.0.0.1" },  | "Client": { "Email": "test@email.com", "FirstName": "John", "LastName": "Doe", "Country": "NGA", "MobileNo": "10449262289", "Street": "Street Name, 1", "City": "London", "IPAddress": "127.0.0.1" },  | 
Force Transaction Routing  | "Routing": { "ForcePayment": "PAYSTACK" },  | |
Payment Method Data  | "PaymentMethodData": { "BankCode": "057", "BeneficiaryAccountNumber": "0000000000" },  | |
Test Indicator (required in Sandbox Environment only)  | "IsTest": True  | |
Sample Deposit Request
Refer to our API Reference Document here to create a Hosted Payment Page, use the below mandatory tags to process a deposit.
Below is a sample deposit request.
{
  "TransactionType": "PURC",
  "Amount": "10.00",
  "Currency": "NGN",
  "OrderReference": "MerchantOrder1",
  "RedirectionURL": "https://www.yourURLhere.com/Redirect/",
  "CallBackURL": "https://www.yourURL.com/Listener",
  "UniqueReference": "3a9f50f7-2deb-4dbf-a186-d58641s36665",
  "Language": "en",
  "Client": {
    "Email": "test@email.com",
    "ClientAccount": "CliAcc01002",
    "FirstName": "John",
    "LastName": "Doe",
    "Country": "NGA",
    "MobileNo": "10449262289",
    "Street": "Street Name, 1",
    "City": "London",
    "IPAddress": "127.0.0.1""
  },
  "Routing": {
    "ForcePayment": "PAYSTACK"
  },
  "IsTest": true
}Withdrawals
Withdrawals are processed via Direct Connect. The API reference to request a payout can be found here.
Below is a sample Withdrawal request.
{
  "TransactionType": "ORIGINALCREDIT",
  "Currency": "NGN",
  "Amount": "50",
  "OrderReference": "Order002"
  "UniqueReference": "4b8da4f0-d3b4-44ae-8019-8c66905ffad7",
  "RedirectionURL": "https://yoururl.com/Redirect/",
  "CallBackURL": "https://yoururl.com/Listener",
  "FailRedirectionURL": "https://yoururl.com/Redirect/",
  "Language": "en",
  "Client": {
    "Email": "test@email.com",
    "FirstName": "John",
    "LastName": "Doe",
    "Country": "NGA",
    "MobileNo": "10449262289",
    "Street": "Street Name, 1",
    "City": "London",
    "IPAddress": "127.0.0.1"
  },
  "Routing": {
    "ForcePayment": "PAYSTACK"
  },
  "PaymentMethodData": {
    "BankCode": "057",
    "BeneficiaryAccountNumber": "0000000000"
  },
  "IsTest": "True"
}Test Credentials
No testing credentials are available for Paystack payments. Transaction reference will be generated, and a response pending will be received. Ask our support team to process the transaction for you to simulate a successful transaction.