> ## Documentation Index
> Fetch the complete documentation index at: https://doc.haipay.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Pakistan

<Warning>
  **Before reading this API documentation, please make sure to check [**API Description Guide**](/docs/en/guide/api_description_guide)**
</Warning>

## **Transaction Limits**

| Transaction Type | Limit                         |
| :--------------- | ----------------------------- |
| Collection       | PKR: 10-500000, USD: 0.5-1500 |
| Disbursement     | PKR: 10-100000                |

> **Amount Decimal Places:** PKR — 2 decimal places | USD — 2 decimal places

## **Collection API**

### **Collection Application**

**Brief Description:**

* Create a collection order

**URL: `/pkr/collect/apply`**\
Note: appId needs to use PKR corresponding, user payment success will increase PKR balance

**Parameters:**

| Parameter       | Required | Type   | Description                                                                                                                                                                         |
| :-------------- | :------- | :----- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| appId           | Yes      | Long   | Business ID (obtained from the backend, must pass the corresponding business ID according to the currency in URL)                                                                   |
| orderId         | Yes      | String | Merchant Order Number (must be unique, max length: 48)                                                                                                                              |
| name            | Yes      | String | Recipient's Name                                                                                                                                                                    |
| phone           | Yes      | String | Mobile number                                                                                                                                                                       |
| email           | Yes      | String | Real Email                                                                                                                                                                          |
| amount          | Yes      | String | Transaction Amount                                                                                                                                                                  |
| payType         | Yes      | String | Transaction Type                                                                                                                                                                    |
| inBankCode      | Yes      | String | [Payment Method](#inBankCode)                                                                                                                                                       |
| callBackUrl     | Yes      | String | Redirect URL after successful payment                                                                                                                                               |
| callBackFailUrl | Yes      | String | Redirect URL after failed payment                                                                                                                                                   |
| cancelUrl       | No       | String | If provided, the payment page displays a Back button that redirects the user to this URL when clicked.                                                                              |
| notifyUrl       | No       | String | Callback URL                                                                                                                                                                        |
| subject         | No       | String | Payment Note                                                                                                                                                                        |
| body            | No       | String | Note Details                                                                                                                                                                        |
| idCard          | No       | String | ID card number, required for JAZZCASH                                                                                                                                               |
| partnerUserId   | Yes      | String | Unique user identifier (e.g., userId), used for risk control system, must be valid, otherwise it will affect the transaction. Format: digits, letters, or symbols -\~!@#\$%&\*()\_. |
| sign            | Yes      | String | Signature                                                                                                                                                                           |

**Return Data Parameters**

| Parameter | Type   | Description                                   |
| :-------- | :----- | :-------------------------------------------- |
| orderId   | String | Merchant Order Number (must be unique)        |
| orderNo   | String | Platform Order Number                         |
| payUrl    | String | Payment URL                                   |
| qrCode    | String | QR Code content – can generate QR by yourself |
| sign      | String | Signature                                     |

### **Collection Query**

**Brief Description:**

* Query collection order

**URL: `/pkr/collect/query`**

**Parameters:**

| Parameter | Required | Type   | Description                                                                                                       |
| :-------- | :------- | :----- | :---------------------------------------------------------------------------------------------------------------- |
| appId     | Yes      | Long   | Business ID (obtained from the backend, must pass the corresponding business ID according to the currency in URL) |
| orderId   | Yes      | String | Merchant Order Number                                                                                             |
| orderNo   | No       | String | Platform Order Number (faster response)                                                                           |
| sign      | Yes      | String | Signature                                                                                                         |

**Return Data Parameters**

| Parameter    | Type    | Description                                                                                          |
| :----------- | :------ | :--------------------------------------------------------------------------------------------------- |
| orderId      | String  | Merchant Order Number (must be unique)                                                               |
| orderNo      | String  | Platform Order Number                                                                                |
| amount       | String  | Transaction Amount                                                                                   |
| actualAmount | String  | Received Amount                                                                                      |
| fee          | String  | Fee                                                                                                  |
| status       | Integer | Status (0 Not Started, 1 Processing, 2 Success \[final], 3 Failed \[final], -1 Pending Confirmation) |
| payTime      | String  | Payment Success Time (present when status=2) (Pakistan Time), format: yyyy-MM-dd HH:mm:ss            |
| errorMsg     | String  | Failure Reason (present when status=3)                                                               |
| sign         | String  | Signature                                                                                            |

### **Payment Methods** <a id="inBankCode" />

| Currency | Payment Type (payType) | Payment Code (inBankCode) | Limit      | Status      | Description        |
| -------- | ---------------------- | ------------------------- | ---------- | ----------- | ------------------ |
| PKR      | PAYMENT\_GATEWAY       | CASHIER                   | 10-500000  | Available   | Cashier Mode       |
| PKR      | EWALLET                | JAZZCASH                  | 10-500000  | Available   | JazzCash Wallet    |
| PKR      | EWALLET                | EASYPAISA                 | 10-500000  | Available   | EasyPaisa Wallet   |
| PKR      | QR                     | QR                        | 100-200000 | Available   | QR                 |
| PKR      | EWALLET                | ALFA                      | 10-500000  | Maintenance | ALFA Wallet        |
| PKR      | EWALLET                | HBL\_KONNECT              | 10-500000  | Maintenance | HBL KONNECT Wallet |
| USD      | EWALLET                | PK\_JAZZCASH\_USD         | 0.5-1500   | Available   | JazzCash Wallet    |
| USD      | EWALLET                | PK\_EASYPAISA\_USD        | 0.5-1500   | Available   | EasyPaisa Wallet   |
| USD      | QR                     | PK\_QR\_USD               | 0.5-500    | Available   | QR                 |

## **Disbursement API**

### **Disbursement Apply**

**Brief Description:**

* Create a disbursement order

**URL: `/pkr/pay/apply`**

**Parameters:**

| Parameter     | Required | Type   | Description                                                                                                                                                                         |
| :------------ | :------- | :----- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| appId         | Yes      | Long   | Business ID (obtained from the backend, must pass the corresponding business ID according to the currency in URL)                                                                   |
| orderId       | Yes      | String | Merchant Order Number (must be unique, max length 48)                                                                                                                               |
| amount        | Yes      | String | Transaction Amount (accurate to two decimals; no punctuation allowed, e.g., “,” is forbidden)                                                                                       |
| accountType   | Yes      | String | Account Type: EWALLET (E-wallet), BANK\_ACCOUNT (Bank)                                                                                                                              |
| bankCode      | Yes      | String | [Payment Code](#bankCode)                                                                                                                                                           |
| accountNo     | Yes      | String | User’s bank account number or wallet account number                                                                                                                                 |
| name          | Yes      | String | Recipient’s Name                                                                                                                                                                    |
| phone         | Yes      | String | Real Mobile Number                                                                                                                                                                  |
| email         | Yes      | String | Real Email                                                                                                                                                                          |
| notifyUrl     | No       | String | Callback URL                                                                                                                                                                        |
| subject       | Yes      | String | Payment Note (transaction title, product name, reason for payment)                                                                                                                  |
| body          | No       | String | Note Details                                                                                                                                                                        |
| birth         | Yes      | String | Date of Birth, format: yyyy-MM-dd                                                                                                                                                   |
| gender        | Yes      | String | Gender, allowed values: MALE, FEMALE, or OTHER                                                                                                                                      |
| idCard        | No       | String | ID card number                                                                                                                                                                      |
| partnerUserId | Yes      | String | Unique user identifier (e.g., userId), used for risk control system, must be valid, otherwise it will affect the transaction. Format: digits, letters, or symbols -\~!@#\$%&\*()\_. |
| sign          | Yes      | String | Signature                                                                                                                                                                           |

**Return Data Parameters**

| Parameter | Required | Type                                   | Description |
| :-------- | :------- | :------------------------------------- | :---------- |
| orderId   | String   | Merchant Order Number (must be unique) |             |
| orderNo   | String   | Platform Order Number                  |             |
| sign      | String   | Signature                              |             |

### **Disbursement Query**

**Brief Description:**

* Query disbursement order

**URL: `/pkr/pay/query`**

**Parameters:**

| Parameter | Required | Type   | Description                                                                                                       |
| :-------- | :------- | :----- | :---------------------------------------------------------------------------------------------------------------- |
| appId     | Yes      | Long   | Business ID (obtained from the backend, must pass the corresponding business ID according to the currency in URL) |
| orderId   | Yes      | String | Merchant Order Number                                                                                             |
| orderNo   | No       | String | Platform Order Number (faster response)                                                                           |
| sign      | Yes      | String | Signature                                                                                                         |

**Return Data Parameters**

| Parameter | Type    | Description                                                                                          |
| :-------- | :------ | :--------------------------------------------------------------------------------------------------- |
| orderId   | String  | Merchant Order Number (must be unique)                                                               |
| orderNo   | String  | Platform Order Number                                                                                |
| amount    | String  | Transaction Amount                                                                                   |
| fee       | String  | Fee                                                                                                  |
| status    | Integer | Status (0 Not Started, 1 Processing, 2 Success \[final], 3 Failed \[final], -1 Pending Confirmation) |
| payTime   | String  | Payment Success Time (present when status=2) (Pakistan Time), format: yyyy-MM-dd HH:mm:ss            |
| errorMsg  | String  | Failure Reason (present when status=3)                                                               |
| sign      | String  | Signature                                                                                            |

### **Payment Codes** <a id="bankCode" />

| Currency | Payment Type (accountType) | Payment Code (bankCode) | Limit     | Status    | Description                    |
| -------- | -------------------------- | ----------------------- | --------- | --------- | ------------------------------ |
| PKR      | EWALLET                    | ALFA                    | 10-100000 | Available | ALFA Wallet                    |
| PKR      | EWALLET                    | BAFL                    | 10-100000 | Available | Bank Alfalah Limited           |
| PKR      | EWALLET                    | EASYPAISA               | 10-100000 | Available | EasyPaisa Wallet               |
| PKR      | EWALLET                    | JAZZCASH                | 10-100000 | Available | JazzCash Wallet                |
| PKR      | EWALLET                    | HBL\_KONNECT            | 10-100000 | Available | HBL KONNECT Wallet             |
| PKR      | BANK\_ACCOUNT              | ABBL                    | 10-100000 | Available | Al Baraka Bank Limited         |
| PKR      | BANK\_ACCOUNT              | ABHI                    | 10-100000 | Available | Abhi Finance                   |
| PKR      | BANK\_ACCOUNT              | ABL                     | 10-100000 | Available | Allied Bank Limited            |
| PKR      | BANK\_ACCOUNT              | ACBL                    | 10-100000 | Available | Askari Commercial Bank         |
| PKR      | BANK\_ACCOUNT              | ADVANS                  | 10-100000 | Available | Advans Pakistan                |
| PKR      | BANK\_ACCOUNT              | APNA                    | 10-100000 | Available | Apna Microfinance Bank         |
| PKR      | BANK\_ACCOUNT              | BAHL                    | 10-100000 | Available | Bank AL Habib Limited          |
| PKR      | BANK\_ACCOUNT              | BARWAQT                 | 10-100000 | Available | Barwaqt                        |
| PKR      | BANK\_ACCOUNT              | BIPL                    | 10-100000 | Available | BankIslami Pakistan            |
| PKR      | BANK\_ACCOUNT              | BOK                     | 10-100000 | Available | Bank of Khyber                 |
| PKR      | BANK\_ACCOUNT              | BOP                     | 10-100000 | Available | Bank of Punjab                 |
| PKR      | BANK\_ACCOUNT              | BYKEA                   | 10-100000 | Available | BYKEA                          |
| PKR      | BANK\_ACCOUNT              | CDNS                    | 10-100000 | Available | CDNS                           |
| PKR      | BANK\_ACCOUNT              | CITI                    | 10-100000 | Available | Citi Bank                      |
| PKR      | BANK\_ACCOUNT              | DIBPL                   | 10-100000 | Available | Dubai Islamic Bank             |
| PKR      | BANK\_ACCOUNT              | FAYSAL                  | 10-100000 | Available | Faysal Bank Limited            |
| PKR      | BANK\_ACCOUNT              | FINCA                   | 10-100000 | Available | FINCA Microfinance Bank        |
| PKR      | BANK\_ACCOUNT              | FINJA                   | 10-100000 | Available | FINJA EMI                      |
| PKR      | BANK\_ACCOUNT              | FMB                     | 10-100000 | Available | First Microfinance Bank        |
| PKR      | BANK\_ACCOUNT              | FWBL                    | 10-100000 | Available | First Women Bank Limited       |
| PKR      | BANK\_ACCOUNT              | HBL                     | 10-100000 | Available | Habib Bank Limited             |
| PKR      | BANK\_ACCOUNT              | HBLASSET                | 10-100000 | Available | HBL ASSET MANAGEMENT           |
| PKR      | BANK\_ACCOUNT              | HMBL                    | 10-100000 | Available | Habib Metropolitan Bank        |
| PKR      | BANK\_ACCOUNT              | ICBC                    | 10-100000 | Available | ICBC                           |
| PKR      | BANK\_ACCOUNT              | JSB                     | 10-100000 | Available | JS Bank                        |
| PKR      | BANK\_ACCOUNT              | KHUSHALI                | 10-100000 | Available | Khushali Bank                  |
| PKR      | BANK\_ACCOUNT              | MCB                     | 10-100000 | Available | MCB Bank Limited               |
| PKR      | BANK\_ACCOUNT              | MCBARIF                 | 10-100000 | Available | MCB ARIF HABIB                 |
| PKR      | BANK\_ACCOUNT              | MCIB                    | 10-100000 | Available | MCB Islamic Banking            |
| PKR      | BANK\_ACCOUNT              | MEEZAN                  | 10-100000 | Available | Meezan Bank Limited            |
| PKR      | BANK\_ACCOUNT              | MOD                     | 10-100000 | Available | MOD                            |
| PKR      | BANK\_ACCOUNT              | NAYAPAY                 | 10-100000 | Available | NayaPay Private Limited        |
| PKR      | BANK\_ACCOUNT              | NBP                     | 10-100000 | Available | National Bank of Pakistan      |
| PKR      | BANK\_ACCOUNT              | NBPF                    | 10-100000 | Available | NBP Funds                      |
| PKR      | BANK\_ACCOUNT              | NRSP                    | 10-100000 | Available | NRSP Microfinance              |
| PKR      | BANK\_ACCOUNT              | PAYMAX                  | 10-100000 | Available | PayMax (Zong)                  |
| PKR      | BANK\_ACCOUNT              | SADAPAY                 | 10-100000 | Available | SadaPay                        |
| PKR      | BANK\_ACCOUNT              | SAMBA                   | 10-100000 | Available | SAMBA                          |
| PKR      | BANK\_ACCOUNT              | SCB                     | 10-100000 | Available | Standard Chartered Bank        |
| PKR      | BANK\_ACCOUNT              | SILK                    | 10-100000 | Available | Silk Bank                      |
| PKR      | BANK\_ACCOUNT              | SIMPAISA                | 10-100000 | Available | SimPaisa                       |
| PKR      | BANK\_ACCOUNT              | SINDH                   | 10-100000 | Available | Sindh Bank                     |
| PKR      | BANK\_ACCOUNT              | SME                     | 10-100000 | Available | SME Bank Limited               |
| PKR      | BANK\_ACCOUNT              | SONERI                  | 10-100000 | Available | Soneri Bank Limited            |
| PKR      | BANK\_ACCOUNT              | SUMMIT                  | 10-100000 | Available | Summit Bank                    |
| PKR      | BANK\_ACCOUNT              | UBANK                   | 10-100000 | Available | Ubank                          |
| PKR      | BANK\_ACCOUNT              | UBL                     | 10-100000 | Available | United Bank Limited            |
| PKR      | BANK\_ACCOUNT              | WHITE                   | 10-100000 | Available | WHITE LABEL ATM                |
| PKR      | BANK\_ACCOUNT              | ZARAI                   | 10-100000 | Available | Zarai Taraqiati Bank           |
| PKR      | BANK\_ACCOUNT              | ZTBL                    | 10-500000 | Available | ZTBL                           |
| PKR      | BANK\_ACCOUNT              | Upaisa                  | 10-500000 | Available | Upaisa                         |
| PKR      | BANK\_ACCOUNT              | TAG                     | 10-500000 | Available | TAG                            |
| PKR      | BANK\_ACCOUNT              | NIB                     | 10-500000 | Available | NIB Bank                       |
| PKR      | BANK\_ACCOUNT              | MMB                     | 10-500000 | Available | Mobilink Microfinance Bank     |
| PKR      | BANK\_ACCOUNT              | KASB                    | 10-500000 | Available | KASB Bank                      |
| PKR      | BANK\_ACCOUNT              | BBL                     | 10-500000 | Available | Burj Bank Limited              |
| PKR      | BANK\_ACCOUNT              | ABIBL                   | 10-500000 | Available | Al Baraka Islamic Bank Limited |
| PKR      | BANK\_ACCOUNT              | AMB                     | 10-500000 | Available | Advans Microfinance Bank       |

## Related Topics

* [Common API](/docs/en/api/version2/CommonApi)
* [HaiPay API Description and Common Rules](/docs/en/guide/api_description_guide)
* [Bangladesh](/docs/en/api/version2/Bangladesh)
