Transfers Control
The Transfers Control API allows you manage settings of your transfers.
Check Balance
Fetch the available balance on your integration
authorization String | Set value to Bearer SECRET_KEY |
GET/balance
cURL
1#!/bin/sh2url="https://api.paystack.co/balance"3authorization="Authorization: Bearer YOUR_SECRET_KEY"45curl "$url" -H "$authorization" -X GET
Sample Response
200 Ok
1{2 "status": true,3 "message": "Balances retrieved",4 "data": [5 {6 "currency": "NGN",7 "balance": 17000008 }9 ]10}
Fetch Balance Ledger
Fetch all pay-ins and pay-outs that occured on your integration
authorization String | Set value to Bearer SECRET_KEY |
GET/balance/ledger
cURL
1#!/bin/sh2url="https://api.paystack.co/balance/ledger"3authorization="Authorization: Bearer YOUR_SECRET_KEY"45curl "$url" -H "$authorization" -X GET
Sample Response
200 Ok
1{2 "status": true,3 "message": "Balance ledger retrieved",4 "data": [5 {6 "integration": 463433,7 "domain": "test",8 "balance": 2078224968,9 "currency": "NGN",10 "difference": -50000,11 "reason": "Who dey breet?",12 "model_responsible": "Transfer",13 "model_row": 56610600,14 "id": 149411613,15 "createdAt": "2021-04-08T09:39:49.000Z",16 "updatedAt": "2021-04-08T09:39:49.000Z"17 },18 {19 "integration": 463433,20 "domain": "test",21 "balance": 2078274968,22 "currency": "NGN",23 "difference": 10000,24 "reason": "",25 "model_responsible": "Transaction",26 "model_row": 1073891448,27 "id": 149314482,28 "createdAt": "2021-04-08T00:00:11.000Z",29 "updatedAt": "2021-04-08T00:00:11.000Z"30 },31 {32 "integration": 463433,33 "domain": "test",34 "balance": 2078264968,35 "currency": "NGN",36 "difference": 500000,37 "reason": "",38 "model_responsible": "Transaction",39 "model_row": 1073278150,40 "id": 149178966,41 "createdAt": "2021-04-07T15:26:36.000Z",42 "updatedAt": "2021-04-07T15:26:36.000Z"43 },44 {45 "integration": 463433,46 "domain": "test",47 "balance": 2077764968,48 "currency": "NGN",49 "difference": 230845,50 "reason": "",51 "model_responsible": "Transaction",52 "model_row": 1073230164,53 "id": 149164577,54 "createdAt": "2021-04-07T14:56:02.000Z",55 "updatedAt": "2021-04-07T14:56:02.000Z"56 },57 {58 "integration": 463433,59 "domain": "test",60 "balance": 2077534123,61 "currency": "NGN",62 "difference": -210000,63 "reason": "",64 "model_responsible": "Refund",65 "model_row": 1600361,66 "id": 149089424,67 "createdAt": "2021-04-07T12:19:22.000Z",68 "updatedAt": "2021-04-07T12:19:22.000Z"69 }70 ],71 "meta": {72 "total": 36944,73 "skipped": 0,74 "perPage": 50,75 "page": 1,76 "pageCount": 73977 }78}
Resend OTP
Generates a new OTP and sends to customer in the event they are having trouble receiving one.
authorization String | Set value to Bearer SECRET_KEY |
content-type String | Set value to application/json |
transfer_code String | Transfer code |
reason String | Either resend_otp or transfer |
POST/transfer/resend_otp
cURL
1#!/bin/sh2url="https://api.paystack.co/transfer/resend_otp"3authorization="Authorization: Bearer YOUR_SECRET_KEY"4content_type="Content-Type: application/json"5data='{6 "transfer_code": "TRF_vsyqdmlzble3uii",7 "reason": "resend_otp"8}'910curl "$url" -H "$authorization" -H "$content_type" -d "$data" -X POST
Sample Response
200 Ok
1{2 "status": true,3 "message": "OTP has been resent"4}
Disable OTP
This is used in the event that you want to be able to complete transfers programmatically without use of OTPs. No arguments required. You will get an OTP to complete the request.
authorization String | Set value to Bearer SECRET_KEY |
POST/transfer/disable_otp
cURL
1#!/bin/sh2url="https://api.paystack.co/transfer/disable_otp"3authorization="Authorization: Bearer YOUR_SECRET_KEY"4content_type="Content-Type: application/json"56curl "$url" -H "$authorization" -H "$content_type" -X POST
Sample Response
200 Ok
1{2 "status": true,3 "message": "OTP has been sent to mobile number ending with 4321"4}
Finalize Disable OTP
Finalize the request to disable OTP on your transfers.
authorization String | Set value to Bearer SECRET_KEY |
content-type String | Set value to application/json |
otp String | OTP sent to business phone to verify disabling OTP requirement |
POST/transfer/disable_otp_finalize
cURL
1#!/bin/sh2url="https://api.paystack.co/transfer/disable_otp_finalize"3authorization="Authorization: Bearer YOUR_SECRET_KEY"4content_type="Content-Type: application/json"5data='{ "otp": "928783" }'67curl "$url" -H "$authorization" -H "$content_type" -d "$data" -X POST
Sample Response
200 Ok
1{2 "status": true,3 "message": "OTP requirement for transfers has been disabled"4}
Enable OTP
In the event that a customer wants to stop being able to complete transfers programmatically, this endpoint helps turn OTP requirement back on. No arguments required.
authorization String | Set value to Bearer SECRET_KEY |
POST/transfer/enable_otp
cURL
1#!/bin/sh2url="https://api.paystack.co/transfer/enable_otp"3authorization="Authorization: Bearer YOUR_SECRET_KEY"4content_type="Content-Type: application/json"56curl "$url" -H "$authorization" -H "$content_type" -X POST
Sample Response
200 Ok
1{2 "status": true,3 "message": "OTP requirement for transfers has been enabled"4}