Skip to main content
POST

Authorizations

Authorization
string
header
required

Your secret key as a Bearer token. The key prefix selects the environment: sk_test_... (test) or sk_live_... (live).

Headers

customer-id
string
required

The merchant customer this request acts on behalf of.

Body

application/json
amount
integer
required

Amount in the smallest currency unit. Minimum 100.

Required range: x >= 100
Example:

10000

reference
string
required

Your unique reference for this transaction.

Example:

"99999533334"

transactionType
enum<string>
required

Use withdrawal for both a fiat bank withdrawal (with withdrawalDetails) and a crypto transfer (with blockchainDetails).

Available options:
withdrawal,
deposit,
wallet_transfer
Example:

"withdrawal"

currency
string
default:NGN

Optional. Defaults to NGN.

Example:

"NGN"

withdrawalDetails
object

Required for a fiat bank withdrawal (transactionType: withdrawal).

blockchainDetails
object

Required for a crypto transfer (transactionType: withdrawal); supply this instead of withdrawalDetails.

walletDetails
object

Required for a wallet_transfer to another Payluk wallet.

depositDetails
object

Required when transactionType is deposit. Identifies the saved card to charge.

Response

Payment intent created.