Create a withdrawal order to send funds to a customer’s bank account
^[A-Za-z0-9 ]{1,200}$https://yoursite.com/api/webhooks/withdrawal?payout_id=12345Example (Static): Configure https://yoursite.com/api/webhooks/payout in Merchant Portal and omit this parameterSee the Initiate Checkout documentation for complete webhook payload structure and implementation examples.a1b2c3d4e5f6789012345678abcdef12Learn how to generate signatures: See the complete Signature Generation Guide for step-by-step instructions and implementation examples in C#, Node.js, Python, PHP, and Java.^\d{13}$352010834567803XXXXXXXXX or +923XXXXXXXXXPK36SCBL0000001123456702HBL, UBL, MCB, JAZZCASH, EASYPAISA, SCBbankCode field is used for actual transaction processingPKR, USD, EUR^[A-Za-z0-9 ]{1,200}$amount - Withdrawal amountcurrency - Payment currency (3 characters)description - Transaction descriptioncustomerRef - Customer information objectcustomerRef.bankAccountNumber - Bank account or IBANcustomerRef.bankCode - Standard bank code for IBFT processingcustomerRef.accountTitle - Account holder nameorderRef - Order information objectorderRef.orderRef - Unique order referencesignature - Request signature for security verificationintentType - Payment intent typeautoProcessPayout - Auto-process flag (default: false)metadataJson - Additional metadatacallbackUrl - Dynamic callback URL for post-payout redirectcustomerRef.name - Customer full namecustomerRef.email - Customer emailcustomerRef.cnic - Customer CNICcustomerRef.phone - Customer phonecustomerRef.bankName - Bank name (informational only)orderRef.discount - Discount informationorderRef.tax - Tax informationautoProcessPayout is set to true, the system will automatically initiate the bank transfer without requiring manual approval. This is useful for:
false (default), the withdrawal will be created but require manual approval before processing.
bankCode from the Bank Codes Reference sectionautoProcessPayout: false for high-value transactions that need reviewpayoutInfo.status to track withdrawal completionpaymentIntentId for future reference and reconciliationmetadataJson to store additional transaction contextbankName field is optional and informational only - use bankCode for processingestimatedCompletionTime field provides the expected completion timestamp.
| Error | Cause | Solution |
|---|---|---|
| Invalid bank account | Incorrect IBAN or account number format | Verify account number format (10-24 characters) |
| Invalid bank code | Unsupported or incorrect bank code | Use a valid bank code from the supported list |
| Bank not found | Bank code not recognized | Check the Bank Codes Reference section for valid codes |
| Account mismatch | Account title doesn’t match bank records | Verify account holder name |
| Insufficient balance | Not enough funds in merchant wallet | Top up wallet or reduce withdrawal amount |
| Validation error | Missing required fields | Ensure all required fields are provided including bankCode |
bankCode field when creating withdrawal orders. The codes are case-insensitive.
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
HBL | Habib Bank Limited | HBL, Habib Bank |
UBL | United Bank Limited | UBL, United Bank |
MCB | MCB Bank Limited | MCB, MCB Bank |
ABL | Allied Bank Limited | ABL, Allied Bank, Allied |
ASKARI | Askari Bank Limited | Askari, Askari Bank |
MEEZAN | Meezan Bank Limited | Meezan, Meezan Bank |
FAYSAL | Faysal Bank Limited | Faysal, Faysal Bank |
ALFALAH | Bank Alfalah Limited | Alfalah, Bank Alfalah |
ALHABIB | Bank Al Habib Limited | AlHabib, Al Habib, Bank Al Habib |
JSBANK | JS Bank Limited | JS, JS Bank, JSBANK |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
BANKISLAMI | BankIslami Pakistan Limited | BankIslami, Bank Islami |
DIB | Dubai Islamic Bank Pakistan Limited | DubaiIslamic, Dubai Islamic, Dubai Islamic Bank |
ALBARKA | Al Baraka Bank (Pakistan) Limited | Albarka, Al Baraka, ALBARAKA |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
CITI | Citibank N.A. | Citi, Citibank |
SCB | Standard Chartered Bank (Pakistan) Limited | SCB, Standard Chartered, Standard Chartered Bank |
BOK | Bank of Korea | BOK |
ICBC | Industrial and Commercial Bank of China Limited | ICBC |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
NBP | National Bank of Pakistan | NBP, National Bank |
SINDH | Sindh Bank Limited | SindhBank, Sindh Bank |
BOP | The Bank of Punjab | PunjabBank, Bank of Punjab, BOP |
ZTBL | Zarai Taraqiati Bank Limited | Zarai Taraqiati Bank, ZTBL |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
JAZZCASH | JazzCash - Mobilink Bank | JazzCash, Jazz Cash, Mobilink Bank |
EASYPAISA | Easypaisa - Telenor Microfinance Bank | EasyPaisa, Easypaisa, Telenor Microfinance |
SADAPAY | SadaPay | SADAPAY, Sada Pay |
NAYAPAY | Nayapay | NAYAPAY, NayaPay, Naya Pay |
UPAISA | UPaisa - U Microfinance Bank Limited | UPaisa, U Paisa, U Microfinance Bank |
KEENU | Keenu | KEENU, Keenu Bank |
TAG | TAG | TAG |
FINJA | Finja | FINJA, Finja Lending |
BYKEA | Bykea | BYKEA |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
NRSP | NRSP Microfinance Bank Limited | NRSP, NRSP Microfinance |
FMFB | First Microfinance Bank Limited | First Microfinance Bank, FMFB |
FINCA | FINCA Microfinance Bank Limited | FINCA, FINCA Microfinance |
FWBL | First Women Bank Limited | FWBL, First Women Bank |
APNA | Apna Microfinance Bank Limited | Apna, Apna Microfinance |
BURJ | Burj Bank Limited | Burj, Burj Bank |
MIB | Mobilink Microfinance Bank Limited | MIB, Mobilink Microfinance |
ADVANS | Advans Pakistan Microfinance Bank Limited | Advans, Advans Pakistan |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
SILK | Silk Bank Limited | Silk, Silk Bank |
SONERI | Soneri Bank Limited | Soneri, Soneri Bank |
SUMMIT | Summit Bank Limited | Summit, Summit Bank |
NIB | NIB Bank Limited | NIB, NIB Bank |
HMB | Habib Metropolitan Bank Limited | HabibMetro, Habib Metro, Habib Metropolitan Bank |
SAMBA | Samba Bank Limited | Samba, Samba Bank |
WASEELA | Waseela Microfinance Bank Limited | Waseela, Waseela bank |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
CDNS | Central Directorate of National Savings | CDNS, National Savings |
PAYMAX | PayMax | PayMax |
ALMEEZAN | Al Meezan Investment Management Limited | Al Meezan, Al Meezan Investment |
HBLAM | HBL Asset Management Limited | HBL ASSET MANAGEMENT, HBL Asset Management |
NBPFM | NBP Fund Management Limited | NBP Fund Management |
MCBAH | MCB-Arif Habib Savings and Investments Limited | MCB-Arif Habib, MCB Arif Habib |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
ABHI | Abhi Finance Services Limited | ABHI |
SEEDCREED | SeedCreed Financial Services Limited | SEEDCREED, SeedCreed, Seed Creed |
HUMRAH | Humrah Financial Services | Humrah, HUMRAH |
NUMBERS | Numbers Private Limited | Numbers, NUMBERS |
TEZPAY | TezPay | TezPAy, Tez Pay, TEZPAY |
EZWAGE | EZ wage | EZ wage, EZwage, EZWAGE |
| Bank Code | Bank Name | Also Accepts |
|---|---|---|
AFTIBFT | AFT IBFT | AFT IBFT, AFT |
bankCode field is required and must match one of the standard codes listed above. The system will validate the bank code before processing the withdrawal. Bank codes are case-insensitive, so you can use hbl, HBL, or Hbl.autoProcessPayout: false for manual review of high-value transactionsTest Usertest@example.com (optional)3520108345678 (optional)03123456789 (optional)PK36SCBL0000001123456702SCB (required)Standard Chartered Bank (optional)Test User