Bank transfer
Send funds directly to a recipient's bank.
Available through H2H integrations.
Pakistan Bank Payouts allow merchants to send funds directly to bank accounts in Pakistan. The payout is processed through the selected banking channel using the recipient's bank account details.
This payment method supports Payout operations and is available through H2H integration.
The merchant must provide the recipient's bank account information, including the bank code, account number, account holder name, and other required beneficiary details. Once the payout is initiated, its status can be tracked using the payout status endpoint.
Payout
To initiate a payout with the Bank transfer payment method, add the following parameters to your request.
| Parameter | Value |
|---|---|
| URL | https://gateway.amanpay.io |
| API endpoint | /payments/payouts/initiate |
| HTTP request method | POST |
| Request body format | JSON |
Request parameters
| Header | Value | Required | Description |
|---|---|---|---|
Content-Type | application/json | Required | HTTP header indicating the media type of the resource sent in the request body. |
Authorization | calculated | Required | For more details about request signature generation, see the About the signature section. |
| Parameter | Type | Required | Description |
|---|---|---|---|
merchantId | integer | Required | Your unique merchant ID that you got from Amanpay when integrating. |
paymentId | string | Required | Payment ID unique within your system. |
amount | number | Required | The amount is specified in major units and may include decimal places, for example, 500.50. |
currency | string | Required | Code of the payout currency in the ISO-4217 alpha-3 format. |
customerId | string | Optional | Customer's ID unique within your system. If not passed in the request, the value from the customerEmail parameter is used. |
customerEmail | string | Required | Customer's email. |
customerName | string | Required | Customer's full name. |
paymentMethod | string | Required | Payment method's code. Pass banktransfer in this parameter. |
recipientType | string | Required | Customer's account type. Pass bank_account in this parameter. |
bankCode | string | Required | Recipient bank code. See the Bank codes. |
recipientBankAccNumber | string | Required | Recipient's bank account number. |
notifyUrl | string | Optional | URL for receiving callbacks for a specific payment. |
{
"merchantId": 123,
"paymentId": "ORDER_100001_123",
"amount": 100.00,
"currency": "PKR",
"customerId": "customer174",
"customerEmail": "mark_cooper@example.com",
"customerName": "Mark Cooper",
"paymentMethod": "banktransfer",
"recipientType": "bank_account",
"bankCode": "MEEZAN",
"recipientBankAccNumber": "PXXXXXXXXXXXXXXXXXXXX"
}
{
"transactionId": "1003685",
"paymentID": "payment_812",
"status": "PENDING",
"amount": 100,
"currency": "PKR",
"paymentType": "payout"
}
{
"result_code": "DUPLICATE_PAYMENT_ID",
"result_message": "Payment ID already exists"
}
For the full list of possible responses, see Responses & Callbacks.