# SendPadi - [SendPadi API Documentation](https://docs.sendpadi.com/introduction.md): Official SendPadi merchant API docs. - [Quickstart](https://docs.sendpadi.com/guides/quickstart.md): Authenticate and call your first SendPadi merchant endpoint. - [Sign requests (playground helper)](https://docs.sendpadi.com/guides/sign-requests.md): Generate X-Timestamp, X-Signature, and Idempotency-Key for the API playground. - [API products](https://docs.sendpadi.com/guides/api-products.md): Working Merchant API products and how they map to the API reference. - [Support](https://docs.sendpadi.com/guides/support.md): Get help with SendPadi API integration. - [Authentication](https://docs.sendpadi.com/api-basics/authentication.md): HMAC and optional OAuth2 for SendPadi merchant API. - [Environments & scopes](https://docs.sendpadi.com/api-basics/environments.md): Test vs live keys and OAuth scopes. - [Errors](https://docs.sendpadi.com/api-basics/errors.md): SendPadi merchant API error shape. - [Idempotency](https://docs.sendpadi.com/api-basics/idempotency.md): Idempotency-Key on money-moving writes. - [Webhooks (basics)](https://docs.sendpadi.com/api-basics/webhooks.md): Outbound event delivery for merchants. - [Get wallets](https://docs.sendpadi.com/api-reference/wallets/get-wallets.md): List merchant wallets. Scope: `wallets:read`. - [List transactions](https://docs.sendpadi.com/api-reference/transactions/list-transactions.md): Paginated merchant transaction history across wallets, transfers, and VAS. Scope: `transactions:read`. - [List banks](https://docs.sendpadi.com/api-reference/transfers/list-banks.md): List banks for local transfers. Use each bank’s `code` as `toBankCode` on verify/create. OPay is `100004`. Scope: `transfers:read`. - [Verify account](https://docs.sendpadi.com/api-reference/transfers/validate-transfer.md): Name enquiry before creating a transfer. Returns the resolved `accountName` to use as `toAccountName` on Local transfer. Scope: `transfers:write`. - [Local transfer](https://docs.sendpadi.com/api-reference/transfers/create-transfer.md): Send NGN to a Nigerian bank account. No PIN — HMAC is the step-up. Call Verify account first and use the returned `accountName`. Scope: `transfers:write`. Requires `Idempotency-Key`. - [Get transfer](https://docs.sendpadi.com/api-reference/transfers/get-transfer.md): Fetch a local transfer by `transferId` from create (UUID — not a wallet funding reference). Scope: `transfers:read`. - [Identity overview](https://docs.sendpadi.com/api-reference/identity/overview.md): Validate a BVN, look up a full BVN record, or look up a NIN. List products for your price, then call the matching verify endpoint. - [List products](https://docs.sendpadi.com/api-reference/identity/list-products.md): List BVN validate, BVN full, and NIN lookup products with your NGN price per call. Use `product` to pick the matching verify endpoint. Scope: `identity:read`. - [Validate BVN](https://docs.sendpadi.com/api-reference/identity/verify-bvn-basic.md): Confirm that a name and/or date of birth match a BVN. Does not return the full record or photo. Charged from your NGN wallet when the provider answers. Scope: `identity:write`. Requires `Idempotency-Key`. - [Look up BVN (full)](https://docs.sendpadi.com/api-reference/identity/verify-bvn-enhanced.md): Look up the full BVN record including photo when available. Charged from your NGN wallet when the provider answers. Scope: `identity:write`. Requires `Idempotency-Key`. - [Verify NIN (basic)](https://docs.sendpadi.com/api-reference/identity/verify-nin-basic.md): Look up core NIN biodata including photo. Charged from your NGN wallet when the provider answers. Scope: `identity:write`. Requires `Idempotency-Key`. - [Verify NIN (enhanced)](https://docs.sendpadi.com/api-reference/identity/verify-nin-enhanced.md): Look up the full NIN record including photo when available. Charged from your NGN wallet when the provider answers. Scope: `identity:write`. Requires `Idempotency-Key`. - [VAS overview](https://docs.sendpadi.com/api-reference/vas/overview.md): Bill payments and eSIM: discover with List billers, then purchase airtime, data, cable, electricity, betting, internet, or eSIM. - [List billers](https://docs.sendpadi.com/api-reference/vas/list-billers.md): Discover VAS providers/plans, or eSIM destinations and packages. Pick a category; for eSIM use locationCode only when listing packages. Scope: `vas:read`. - [Purchase airtime](https://docs.sendpadi.com/api-reference/vas/airtime.md): Purchase airtime via merchant VAS API. Scope: `vas:write`. Requires `Idempotency-Key`. - [Purchase data](https://docs.sendpadi.com/api-reference/vas/data.md): Purchase data via merchant VAS API. Scope: `vas:write`. Requires `Idempotency-Key`. - [Validate cable](https://docs.sendpadi.com/api-reference/vas/validate-cable.md): Verify a smart card / decoder number before paying cable TV. Providers: DSTV, GOTV, STARTIMES, SHOWMAX. Scope: `vas:read`. - [Pay cable TV](https://docs.sendpadi.com/api-reference/vas/cable.md): Pay cable TV via merchant VAS API. Scope: `vas:write`. Requires `Idempotency-Key`. - [Validate electricity](https://docs.sendpadi.com/api-reference/vas/validate-electricity.md): Verify a meter number against a disco plan before paying electricity. Scope: `vas:read`. - [Pay electricity](https://docs.sendpadi.com/api-reference/vas/electricity.md): Pay electricity via merchant VAS API. Scope: `vas:write`. Requires `Idempotency-Key`. - [Fund betting wallet](https://docs.sendpadi.com/api-reference/vas/betting.md): Fund betting wallet via merchant VAS API. Scope: `vas:write`. Requires `Idempotency-Key`. - [Pay internet](https://docs.sendpadi.com/api-reference/vas/internet.md): Pay internet via merchant VAS API. Scope: `vas:write`. Requires `Idempotency-Key`. - [Purchase eSIM](https://docs.sendpadi.com/api-reference/esim/purchase-esim.md): Buy a travel eSIM after listing packages on List billers. `packageId` must be the package UUID (`id`), never `packageCode`. Scope: `vas:write`. Requires `Idempotency-Key`. - [Get VAS transaction](https://docs.sendpadi.com/api-reference/vas/get-transaction.md): Fetch a VAS transaction by id. Scope: `vas:read`. - [Gift cards overview](https://docs.sendpadi.com/api-reference/gift-cards/overview.md): Buy and sell gift cards programmatically. - [List products](https://docs.sendpadi.com/api-reference/gift-cards/list-products.md): List products Scope: `gift-cards:read`. - [List brands](https://docs.sendpadi.com/api-reference/gift-cards/list-brands.md): List brands Scope: `gift-cards:read`. - [List categories](https://docs.sendpadi.com/api-reference/gift-cards/list-categories.md): List categories Scope: `gift-cards:read`. - [List countries](https://docs.sendpadi.com/api-reference/gift-cards/list-countries.md): List countries Scope: `gift-cards:read`. - [Buy pricing](https://docs.sendpadi.com/api-reference/gift-cards/pricing.md): Get buy-side gift card pricing. Scope: `gift-cards:read`. - [Create buy order](https://docs.sendpadi.com/api-reference/gift-cards/create-order.md): Purchase a gift card. Scope: `gift-cards:write`. Requires `Idempotency-Key`. - [Get buy order](https://docs.sendpadi.com/api-reference/gift-cards/get-order.md): Fetch a gift card order by transaction id. Scope: `gift-cards:read`. - [Get order cards (PIN)](https://docs.sendpadi.com/api-reference/gift-cards/get-order-cards.md): Retrieve redeemed card codes/PINs for a completed order. Scope: `gift-cards:read`. - [Sell: list countries](https://docs.sendpadi.com/api-reference/gift-cards/sell-countries.md): Sell: list countries Scope: `gift-cards:read`. - [Sell: list brands](https://docs.sendpadi.com/api-reference/gift-cards/sell-brands.md): Sell: list brands Scope: `gift-cards:read`. - [Sell: brand countries](https://docs.sendpadi.com/api-reference/gift-cards/sell-brand-countries.md): Sell: brand countries Scope: `gift-cards:read`. - [Sell: brand offers](https://docs.sendpadi.com/api-reference/gift-cards/sell-brand-offers.md): Sell: brand offers Scope: `gift-cards:read`. - [Sell pricing](https://docs.sendpadi.com/api-reference/gift-cards/sell-pricing.md): Get sell-side gift card pricing. Scope: `gift-cards:read`. - [Create sell order](https://docs.sendpadi.com/api-reference/gift-cards/sell-order.md): Sell a gift card for NGN wallet credit. Scope: `gift-cards:write`. Requires `Idempotency-Key`. - [Get sell order](https://docs.sendpadi.com/api-reference/gift-cards/get-sell-order.md): Fetch a sell gift card order. Scope: `gift-cards:read`. - [Virtual cards overview](https://docs.sendpadi.com/api-reference/virtual-cards/overview.md): Issue and manage USD virtual debit cards. - [List cards](https://docs.sendpadi.com/api-reference/virtual-cards/list-cards.md): List issued virtual cards. Scope: `virtual-cards:read`. - [Create card](https://docs.sendpadi.com/api-reference/virtual-cards/create-card.md): Issue a virtual card for a cardholder. Scope: `virtual-cards:write`. Requires `Idempotency-Key`. - [Get card](https://docs.sendpadi.com/api-reference/virtual-cards/get-card.md): Retrieve a virtual card by id. Scope: `virtual-cards:read`. - [Fund card](https://docs.sendpadi.com/api-reference/virtual-cards/fund-card.md): Move funds from merchant wallet onto the card. Scope: `virtual-cards:write`. Requires `Idempotency-Key`. - [Freeze card](https://docs.sendpadi.com/api-reference/virtual-cards/freeze-card.md): Temporarily block card spend. Scope: `virtual-cards:write`. - [Unfreeze card](https://docs.sendpadi.com/api-reference/virtual-cards/unfreeze-card.md): Restore spend on a frozen card. Scope: `virtual-cards:write`. - [Withdraw to wallet](https://docs.sendpadi.com/api-reference/virtual-cards/withdraw.md): Withdraw card balance back to the merchant wallet where supported. Scope: `virtual-cards:write`. Requires `Idempotency-Key`. - [List card transactions](https://docs.sendpadi.com/api-reference/virtual-cards/list-transactions.md): Transaction history for a virtual card. Scope: `virtual-cards:read`. - [Close card (step 1/2)](https://docs.sendpadi.com/api-reference/virtual-cards/close-card.md): Initiate card close; returns confirmationToken. Scope: `virtual-cards:write`. - [Confirm close card (step 2/2)](https://docs.sendpadi.com/api-reference/virtual-cards/confirm-close.md): Confirm card termination with intent + token. Scope: `virtual-cards:write`. - [Crypto overview](https://docs.sendpadi.com/api-reference/crypto/overview.md): Buy, sell, send, and swap crypto against your NGN wallet. - [List crypto wallets](https://docs.sendpadi.com/api-reference/crypto/list-wallets.md): List crypto wallets and balances. Scope: `crypto:read`. - [Get crypto wallet](https://docs.sendpadi.com/api-reference/crypto/get-wallet.md): Get a single crypto wallet by currency. Scope: `crypto:read`. - [Enable crypto](https://docs.sendpadi.com/api-reference/crypto/enable.md): Enable crypto for the merchant wallet where required. Scope: `crypto:write`. - [Get buy/sell quote (fiat leg)](https://docs.sendpadi.com/api-reference/crypto/quotes.md): Get a buy or sell quote against NGN. Scope: `crypto:read`. - [Get withdrawal fee](https://docs.sendpadi.com/api-reference/crypto/withdrawal-fee.md): Estimate on-chain withdrawal fee. Scope: `crypto:read`. - [Initiate buy (step 1/2)](https://docs.sendpadi.com/api-reference/crypto/buy.md): Start a crypto buy; confirm with confirmationToken. Scope: `crypto:write`. Requires `Idempotency-Key`. - [Initiate sell (step 1/2)](https://docs.sendpadi.com/api-reference/crypto/sell.md): Start a crypto sell; confirm with confirmationToken. Scope: `crypto:write`. Requires `Idempotency-Key`. - [Initiate on-chain send (step 1/2)](https://docs.sendpadi.com/api-reference/crypto/send.md): Start an on-chain send; confirm with confirmationToken. Scope: `crypto:write`. Requires `Idempotency-Key`. - [Create swap quote](https://docs.sendpadi.com/api-reference/crypto/swap-quotes.md): Create a crypto↔crypto swap quote (~15s expiry). Scope: `crypto:read`. - [Refresh swap quote](https://docs.sendpadi.com/api-reference/crypto/swap-quotes-refresh.md): Refresh an expired swap quote. Scope: `crypto:read`. - [Initiate swap (step 1/2)](https://docs.sendpadi.com/api-reference/crypto/swap.md): Start a swap using a quotation id. Scope: `crypto:write`. Requires `Idempotency-Key`. - [Confirm intent (step 2/2)](https://docs.sendpadi.com/api-reference/crypto/confirm-intent.md): Confirm a pending crypto intent. Scope: `crypto:write`. Requires `Idempotency-Key`. - [Webhooks overview](https://docs.sendpadi.com/api-reference/webhooks/overview.md): Receive HTTP callbacks for merchant events. - [Verifying webhooks](https://docs.sendpadi.com/api-reference/webhooks/verifying.md): Verify X-SendPadi-Signature on inbound webhooks. ## OpenAPI Specs - [openapi](/openapi.json) ## Optional - [Merchant portal](https://developer.sendpadi.com) - [Status](https://api.sendpadi.com/health) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.