Skip to content
SwiftlinkPay

Payment gateway for Nigeria

Get paid online, the simple way.

SwiftlinkPay lets your business accept cards, bank transfers and wallet payments through a hosted checkout, payment links or a developer-friendly API.

A product of Swiftlink Global Services Limited, licensed by the Central Bank of Nigeria. About us

Already a merchant? Sign in to your dashboard

Why SwiftlinkPay

Everything you need to start collecting payments online.

Card payments with 3-D Secure

Accept Visa, Mastercard and Verve cards. Customers are authenticated by their card issuer with 3-D Secure, or by OTP and PIN where the card requires it.

Several ways to pay

Alongside cards, customers can pay by bank transfer to a dedicated account, or with OPay and PalmPay wallets, from the same checkout.

Hosted checkout, no card data on your servers

Redirect customers to the SwiftlinkPay checkout page. Card details are entered on our page, so they never pass through your servers.

Built for developers

A REST API with public and private keys, signed webhooks and a sandbox with test cards, so you can build and test before going live.

One gateway, several ways to collect

Use the hosted checkout from your website, share a payment link, or integrate directly with the API.

Hosted checkout

A ready-made payment page at checkout.swiftlinkpay.com, opened by redirect or embedded on your site.

Payment links

Create a shareable link from the dashboard and get paid without writing any code.

Merchant dashboard

Track transactions, export reports, manage API keys, webhooks and your team.

API and webhooks

Initialize payments, verify them server-side and receive signed status notifications.

Start a payment with one API call

Initialize a transaction from your backend with your public key, redirect the customer to the authorizationUrl, then verify the result server-side with your private key.

Request: POST /transaction/initialize
curl --request POST \
  --url https://api.swiftlinkpay.com/transaction/initialize \
  --header 'Authorization: pk_test_xxxxxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data '{
    "amount": 100000,
    "email": "customer@example.com",
    "currency": "NGN",
    "reference": "order-20250514-001",
    "callbackUrl": "https://yoursite.com/payment/callback",
    "channels": ["card", "bank"]
  }'
Response
{
  "status": 200,
  "message": "Request successfully processed",
  "data": {
    "authorizationUrl": "https://checkout.swiftlinkpay.com/S0h-Jcxbpd_1O_MkUZ-i",
    "reference": "order-20250514-001",
    "accessCode": "S0h-Jcxbpd_1O_MkUZ-i"
  },
  "errors": []
}
  • Send the raw key in the Authorization header, with no “Bearer” prefix.
  • Separate sandbox and production base URLs and keys.
  • Webhooks signed with an x-signature header.
  • Test cards for successful, failed and frictionless flows in the sandbox.

Example taken from the public API documentation. Keys shown are placeholders.

Ready to accept payments?

Create a merchant account, complete onboarding and test in the sandbox before you go live.