> ## 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.

# Egypt

> [!WARNING]
>
> **Before reading this API document, please check [**API Description Guide**](https://doc.haipay.net/en/history/V20260801/get-started/api-conventions.md)**

## **Transaction Limits**

| Transaction Type | Limit |
| :- | - |
| Collection | EGP: 5-30000, USD: 0.01-500 |
| Disbursement | EGP: 20-30000 |

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

## **Collection API**

### **Collection Application**

**Brief Description:**

* Create a collection order

**URL:**

EGP: `/egp/collect/apply`
Note: appId needs to use EGP corresponding, user payment success will increase EGP balance

USD: `/usd/collect/apply`
Note: appId needs to use USD corresponding, user payment success will increase USD balance

**Parameters:**

| Parameter Name | Required | Type | Description |
| :- | :- | :- | :- |
| appId | Yes | Long | Business ID (obtained from backend, needs to pass the corresponding Business ID based on the currency in the URL) |
| orderId | Yes | String | Merchant order number (must be unique, length no more than 48) |
| name | Yes | String | Payer name |
| phone | Yes | String | Payer mobile number |
| email | Yes | String | Payer email address |
| amount | Yes | String | Transaction amount |
| payType | Yes | String | [Payment Method Type](#inBankCode) |
| inBankCode | Yes | String | [Payment Method Code](#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 | Yes | String | Payment remark |
| body | No | String | Remark details |
| 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 |

#####

request

```json theme={null}
{
    "appId": 1054,
    "orderId": "M233323000059",
    "amount": "3000.00",
    "phone": "01012345678",
    "email": "mohamed.hassan@gmail.com",
    "name": "Mohamed Hassan",
    "inBankCode": "VODAFONE",
    "payType": "EWALLET",
    "partnerUserId": "149597870",
    "sign": "af0gAHkUOyYHu9owQp8NJ4mPEeUW4vuJcjdxqLIzrVw8AvpLSjD1DXupReSG/CyuSkFRyiIvCp5u703AuGGmfgD2gKDH3Ywau41bAbG2jnHJ8mtjiSJ5iWUzanyd4Kr7d1+rETbzUl7/BkW3t0X8UUFdqpxwG8DPUjAwUKfplWDHV7koG51Ozexd80DCsmW6eWdouAZ1uNXGLYmV3ftE3BmfNRtuv1C5bfTJWrTEIOxbF6g2uYOFZTlIgrQgd7/2PsAYwQQXNz8Q8CYl4OxqCv4pXJxaLWPbR5tqZu9og5kn32C9aHW/NlU1y39vzz+4ef81yPAqUV9oHlSMSPrMmw=="
}
```

response

```json theme={null}
{
    "status": "1",
    "error": "00000000",
    "msg": "",
    "data": {
        "orderId": "M233323000059",
        "orderNo": "6023071013539074",
        "payUrl": "https://pay.haipay.asia/cashier/1L9zQS2",
        "sign": "YEoA8Y2JzQFGVzwJSqmemm1Kfv/bfyIfCqv2dp7RNzT5B72AQvdD+nt2nR4sL1HWscvmNHyVt5ovAi7MMhy3ziih/sMph+wPx4YjH3W1h5DyBvSlWvaKfKrK5ViomZ0pPYWydwRHnnRnicxToHK9S6qtSy7Q73O0hdz4hJ9p41Th3ycBl2Q9SeqSZYSY1ohcPDhdyRf2y0prb8rHgpBKzxZ5BKX/1bsE9OmsSEHAEYT8OGgko6aNe8XPAhr4G48cpWTftvnGQuzh0O65nuZRI/PF+Axt2zJCVbFHDDSREI9NlAT82ebDqhlVdxQzKE67D1nxgjb3dPmDUYHOBpmwxQ=="
    }
}
```

Response data field description

| Parameter Name | Type | Description |
| :- | :- | :- |
| orderId | String | Merchant order number (must be unique) |
| orderNo | String | Platform order number |
| payUrl | String | Payment link |
| sign | String | Signature |

### **Collection Query**

**Brief Description:**

* Query collection order

**URL:**

EGP: `/egp/collect/query`

USD: `/usd/collect/query`

**Parameters:**

| Parameter Name | Required | Type | Description |
| :- | :- | :- | :- |
| appId | Yes | Long | Business ID (obtained from backend, needs to pass the corresponding Business ID based on the currency in the URL) |
| orderId | Yes | String | Merchant order number |
| orderNo | No | String | Platform order number (faster response) |
| sign | Yes | String | Signature |

request

```json theme={null}
{
  "appId": 1054,
    "orderId": "M22222000028",
    "sign": "EmyJGm3ELzG4FsOd0Krs9ncbSjo4oTGuXWML+7djYla3+VAwd9wS17z38p/7U2ZAjroO04XrE7YXcB1o76Dtyipj3h3bJzs7FYma1QNkMUdt9hh7m8U6hMsMQX7vIWHtXNwz4pbTSC75+kQWXaCew7KoE6LXECdJU8AISgNgeki2TK9R0pCfshr0Z2SZBPeuT6OvIH5LdmqgdZhuqnffGU2qnXk4KMkO848e6/WALLBR+LE1wyKHfPnYVcuKSMVYxkvKyyIL5JIPEgW0o5bh4RCbaUn3NZtyYwrU1uQ3ZDFRThm9j6XAQP+LBlmq3nOePqBtp/VDVarRaV+7FbQg3A=="
}
```

response

```json theme={null}
{
    "status": "1",
    "error": "00000000",
    "msg": "",
    "data": {
        "orderId": "M22222000028",
        "orderNo": "6023042811314347",
        "amount": "50000.00",
        "actualAmount": "0.00",
        "fee": "0.00",
        "status": 1,
        "sign": "fP433ygWVDLVGxYkVnIJj7riGq0U3vyVX+MbBAImxfGLZkZcEAHVEoVYuULZSmXAAXKRSyd67WlDNm+24pougM54ofAoH4HMtCL2tfCoBReFyz3z02AGKkrKE2xWhSpWoqfQoBvzwuN5iGMMu0s9Q1YvqiwJ8WDVIENnmiIyD8qDJN7caHTW2US14/faG+69AvnuIgJ/nu7/jogOlgEYdZdVYU7gcRDE+d47KjlFGswQkJ/h/uzV7cWtUqrtOO7ZnZ3/z33Xx8awokX36QoYcPSWAU0h+Ij9O9402HNhm1eTbYcLU0uI/z8xCAtyAI/tTyiFijpiNlxUKQj+zKsILw=="
    }
}
```

Response data field description

| Parameter Name | 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 | Transaction fee |
| status | Integer | Status (0 Not Started, 1 In Progress, 2 Success (final), 3 Failed (final), -1 Exception Pending Confirmation) |
| payTime | String | Payment success time (when status=2), format: yyyy-MM-dd HH:mm:ss (Egypt Time) |
| errorMsg | String | Failure reason (when status=3) |
| sign | String | Signature |

### **Payment Methods**

| Currency | Payment Type (payType) | Payment Code (inBankCode) | Limit | Status | Description |
| - | - | - | - | - | - |
| EGP | EWALLET | REFERENCE\_CODE | 10-30000 | Available | Fawry Wallet |
| EGP | EWALLET | VODAFONE | 5-30000 | Available | Vodafone Wallet |
| EGP | EWALLET | ORANGE | 5-30000 | Available | Orange Cash Wallet |
| EGP | EWALLET | ETISALAT | 5-30000 | Available | Etisalat Cash Wallet |
| EGP | EWALLET | WEPAY | 5-30000 | Available | WE Pay Wallet |
| USD | EWALLET | EG\_REFERENCE\_CODE\_USD | 0.2-500 | Available | Fawry Wallet |
| USD | EWALLET | EG\_VODAFONE\_USD | 0.1-500 | Available | Vodafone Wallet |
| USD | EWALLET | EG\_ORANGE\_USD | 0.1-500 | Available | Orange Cash Wallet |
| USD | EWALLET | EG\_ETISALAT\_USD | 0.1-500 | Available | Etisalat Cash Wallet |
| USD | EWALLET | EG\_WEPAY\_USD | 0.1-500 | Available | WE Pay Wallet |

## **Disbursement API**

> [!TIP]
>
> > 1. Transactions submitted before 3:00 PM on business days will arrive on the same day (business days are Sunday to Thursday, Egypt's weekend is Friday and Saturday).
>
> 2. Transactions submitted after 3:00 PM on business days will be successful on the next business day.
>    * For example: transactions submitted after 3:00 PM on Thursday will be processed successfully on Sunday.
> 3. Local weekends or public holidays do not process disbursement transactions, need to wait until the next business day to process

### **Disbursement Application**

**Brief Description:**

* Create a disbursement order

**URL: `/egp/pay/apply`**

**Parameters:**

| Parameter Name | Required | Type | Description |
| :- | :- | :- | :- |
| appId | Yes | Long | Business ID (obtained from backend, needs to pass the corresponding Business ID based on the currency in the URL) |
| orderId | Yes | String | Merchant order number (must be unique, length no more than 48) |
| amount | Yes | String | Transaction amount (Unit: Egyptian Pound) |
| accountType | Yes | String | [Payment Method Type](#bankCode) |
| bankCode | Yes | String | [Payment Method Code](#bankCode) |
| accountNo | Yes | String | User bank/wallet account number (wallet account please use +2 prefix mobile number format) (Only 010, 011, 012 prefixed carriers are supported) |
| name | Yes | String | Recipient name |
| phone | Yes | String | Recipient mobile number (please use +2 prefix mobile number format) (The phone field must be the same as the accountNo field.) |
| email | Yes | String | Recipient email address |
| notifyUrl | No | String | Callback URL |
| subject | No | String | Payment remark (transaction title, product name, payment reason) |
| body | No | String | Remark details |
| 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 |

#####

request (when accountType is EWALLET type)

```json theme={null}
{
  "appId": 1054,
  "orderId": "M100000450012",
  "amount": "3000.00",
  "accountType": "EWALLET",
  "bankCode": "MEEZA",
  "accountNo": "+201012345678",
  "name": "Mohamed Hassan",
  "phone": "01012345678",
  "email": "mohamed.hassan@gmail.com",
  "partnerUserId": "149597870",
  "sign": "I1PeK3eJOVsFFNowxVRqMXpeWm1lr/BcRpBi8WsW4wVo1+5CC3JsrFq/m/L2O69NzKHvtDWi4zia3DL3dPut0yMyUyqL91LNCSaeISbGsQPlhEsQpyTOryS/RKOfsrn2Xo37SCF/phAvndOk2jwwGwqM5xLz1ms9Ukl85wv27QFNrXIMxK2p18oe7MpMYrgf+xvEBE/VqCtKMtN9pO449wWwXzHWNPbZ76s4pAvKwRE9yXQDr7Iw14Dktcnl1FoLM4gWM/obkO+mz6SyAGDuXhVh/+OD/IGNiCyTCNq6ciQY28UnCFV6ZIP40gxsFhfBJKbK+Raw7y1Bh912ifYfug=="
}
```

response

```json theme={null}
{
  "status": "1",
  "error": "00000000",
  "msg": "",
  "data": {
    "orderId": "M100000450012",
    "orderNo": "1525091710234210109",
    "sign": "LmhUnkw5j0pMiimsG8rKwdNNZGvXH5MpSmD6mdHZwq1SQwuK5BohmdEoqKB/jkMk28o3da4Cxh6Q+tW97+yTCemRrF+dMaHA73rpOeUuujKQl/UcFvJuMhfLBa2tp09L71NzoBqpPD6aXf37mYAz8E1HmERwFPpac5FVxIYanHG8cqmMLJYsVmHTSxWavgWU03ys9UczBePkBiR8sl2FSOhFABB0wAP28lswrV/ABS68IsLKtyd1fyI3GBfSbIK5nDEEnlE+EdElFdLs9taAxJImeVF1x4eT47+bkPJ2qS8z3K8QGzKLF3W+8SiRZGfSwDTsLKH+2Vycvy5auRl+ag=="
  }
}
```

Response data field description

| Parameter Name | Required | Type |
| :- | :- | :- |
| orderId | String | Merchant order number (must be unique) |
| orderNo | String | Platform order number |
| sign | String | Signature |

### **Disbursement Query**

**Brief Description:**

* Query disbursement order

**URL: `/egp/pay/query`**

**Parameters:**

| Parameter Name | Required | Type | Description |
| :- | :- | :- | :- |
| appId | Yes | Long | Business ID (obtained from backend, needs to pass the corresponding Business ID based on the currency in the URL) |
| orderId | Yes | String | Merchant order number |
| orderNo | No | String | Platform order number (faster response) |
| sign | Yes | String | Signature |

request

```json theme={null}
{
  "appId": 1000,
  "orderId": "M100000450012",
  "orderNo": "1525091710234210109",
  "sign": "ZxkVZL+GAyv0VhvWn4IvuYahTzxgQuthkuV2ONWiqIfIDb2avvHlFOUJVzqZi1q8CPHXZm1ltanRTRVTxfsuftLvGeDioUHglWt46/RU6c1OPznpLGsZ35Q3n5tW2y1EnOsxPynXBFLuDQy+aZ3l9u6AQ30T0zQexMGT+IxuFkmUp02g/6juaHa5ZgNMv7lN67ixIp162wrM7OJuaOif872QijSceRdZhzaMGImAwB0D4MosRV4WMBOKkwgPdmS7GuZN66YUidXk3wTGqX3MYRw6M0kj4eNegSUwPXvp4q4p0KO8Y3xUMld54GY2ApX3WN3CBtC/vpJqEszjGBbbGg=="
}
```

response — Order failed

```json theme={null}
{
  "status": "1",
  "error": "00000000",
  "msg": "",
  "data": {
    "orderId": "M100000450012",
    "orderNo": "1525091710234210109",
    "amount": "3000.00",
    "fee": "0",
    "status": 3,
    "errorMsg": "الطلب غير موجود",
    "sign": "KKuvCl0SuNANJs+l2ogDaJm8pmV+Hi+Xa7q27vJ6D1Ehs4aOp13kRbITfJAhczh3T81BE9qwHeJaYwf+r0EypKM9TL6pMwfG8Az4gRy1D57wiUaVjl2PWcvbEqrn1hL0b+btkjvAM9I+CcSv+wuOW3/uku17Ws3FhgJLj9sFsQUBAPjDO+758VnwBytCOLBmljLBXyKgNgpmFQ1/DNkqWl0UNzyLK45Zw3yf5NiwhEFbvW0jlOWlfu/ql4hluISUQG573jEoFCBEnQLb2tQoRZj1QYNRCXPf5lbej0vzqbEwvR9h+ZOf255t1MocJkdIe463DTV5U3KZdVT87HMagw=="
  }
}
```

response — Order successful

```json theme={null}
{
  "status": "1",
  "error": "00000000",
  "msg": "",
  "data": {
    "orderId": "M100000450012",
    "orderNo": "1525091710234210109",
    "amount": "3000.00",
    "fee": "10",
    "status": 2,
    "payTime": "2024-03-01 23:59:59",
    "sign": "khPtOmGq+cpKX0HFAI/lbP0dx4oVyNAnL5oLsdmhDJdASlQm0yg5I3o+MhImYggEsL6c2bo5fP29t54OZFqSdQDfIuNDvGbAMAr4mRBxc0hoHLkBLyyagfVPBLyQA1JY8XV3ZL4ySzQ3ZQnMCfrh2K39ueUuz6HpZ03Hj0KYijVRCXAZaio/L5jfLBT12QXmvIfAHa8s/k9flhK05ENHPep3zjj/MZGOEaX7jkEJLfjK0duypDCa61BRQjM+oePOdVsgleIl1Yf98UAxMDZ/A3912KFHEb+/jvmdnulNbiJFyuT1fEe+j2teUgw3vFsZAtwNWAgxhC7UO+N0Q5z4EA=="
  }
}
```

Response data field description

| Parameter Name | Type | Description |
| :- | :- | :- |
| orderId | String | Merchant order number (must be unique) |
| orderNo | String | Platform order number |
| amount | String | Transaction amount |
| fee | String | Transaction fee |
| status | Integer | Status (0 Not Started, 1 In Progress, 2 Success (final), 3 Failed (final), -1 Exception Pending Confirmation) |
| payTime | String | Payment success time (when status=2), format: yyyy-MM-dd HH:mm:ss (Egypt Time) |
| errorMsg | String | Payment failure reason (when status=3) |
| sign | String | Signature |

### **Payment Methods**

| Currency | Payment Type (accountType) | Payment Code (bankCode) | Limit | Status | Description |
| - | - | - | - | - | - |
| EGP | EWALLET | MEEZA | 20-30000 | Available | MeezaWallet is a mobile number–based e-wallet under Egypt’s Meeza payment network, supporting account type identification based on the phone number and enabling payouts to local wallets such as Vodafone Cash, Orange Money, and Etisalat Cash. |
| EGP | EWALLET | OPAY | 20-30000 | Available | OpayCard |
| EGP | BANK\_ACCOUNT | ABP | 20-30000 | Available | AllBank Inc |
| EGP | BANK\_ACCOUNT | AAIB | 20-30000 | Available | Arab African International Bank |
| EGP | BANK\_ACCOUNT | ABC | 20-30000 | Available | Arab Banking Corporation - Egypt |
| EGP | BANK\_ACCOUNT | ABK | 20-30000 | Available | Al Ahli Bank of Kuwait – Egypt |
| EGP | BANK\_ACCOUNT | ABRK | 20-30000 | Available | Al Baraka Bank Egypt |
| EGP | BANK\_ACCOUNT | ADIB | 20-30000 | Available | Abu Dhabi Islamic Bank – Egypt |
| EGP | BANK\_ACCOUNT | AIB | 20-30000 | Available | Arab Investment Bank |
| EGP | BANK\_ACCOUNT | ARAB | 20-30000 | Available | Arab Bank |
| EGP | BANK\_ACCOUNT | ARIB | 20-30000 | Available | Arab International Bank |
| EGP | BANK\_ACCOUNT | AUB | 20-30000 | Available | Ahly United Bank |
| EGP | BANK\_ACCOUNT | AUDI | 20-30000 | Available | Audi Bank |
| EGP | BANK\_ACCOUNT | BBE | 20-30000 | Available | ATTIJARIWAFA BANK EGYPT S.A.E |
| EGP | BANK\_ACCOUNT | BDC | 20-30000 | Available | Banque Du Caire |
| EGP | BANK\_ACCOUNT | BLOM | 20-30000 | Available | Blom Bank Egypt |
| EGP | BANK\_ACCOUNT | BOA | 20-30000 | Available | Bank of Alexandria |
| EGP | BANK\_ACCOUNT | CAE | 20-30000 | Available | Credit Agricole |
| EGP | BANK\_ACCOUNT | CIB | 20-30000 | Available | Commercial International Bank |
| EGP | BANK\_ACCOUNT | CITI | 20-30000 | Available | Citibank |
| EGP | BANK\_ACCOUNT | EALB | 20-30000 | Available | Egyptian Arab Land Bank |
| EGP | BANK\_ACCOUNT | EDBE | 20-30000 | Available | Export Development Bank of Egypt |
| EGP | BANK\_ACCOUNT | EGB | 20-30000 | Available | Egyptian Gulf Bank |
| EGP | BANK\_ACCOUNT | ENBD | 20-30000 | Available | Emirates National Bank of Dubai |
| EGP | BANK\_ACCOUNT | FAIB | 20-30000 | Available | Faisal Islamic Bank of Egypt |
| EGP | BANK\_ACCOUNT | HDB | 20-30000 | Available | Housing And Development Bank |
| EGP | BANK\_ACCOUNT | HSBC | 20-30000 | Available | HSBC |
| EGP | BANK\_ACCOUNT | IDBE | 20-30000 | Available | Industrial Development Bank of Egypt |
| EGP | BANK\_ACCOUNT | MASH | 20-30000 | Available | Mashreq Bank |
| EGP | BANK\_ACCOUNT | MIDB | 20-30000 | Available | Misr Iran Development Bank |
| EGP | BANK\_ACCOUNT | MISR | 20-30000 | Available | Banque Misr |
| EGP | BANK\_ACCOUNT | NBAD | 20-30000 | Available | National Bank of Abu Dhabi |
| EGP | BANK\_ACCOUNT | NBE | 20-30000 | Available | National Bank of Egypt |
| EGP | BANK\_ACCOUNT | NBG | 20-30000 | Available | National Bank of Greece |
| EGP | BANK\_ACCOUNT | NBK | 20-30000 | Available | National Bank of Kuwait – Egypt |
| EGP | BANK\_ACCOUNT | NSB | 20-30000 | Available | Nasser Social Bank |
| EGP | BANK\_ACCOUNT | PDAC | 20-30000 | Available | The Principal Bank for Development and Agri. |
| EGP | BANK\_ACCOUNT | QNB | 20-30000 | Available | Qatar National Bank Alahli |
| EGP | BANK\_ACCOUNT | SAIB | 20-30000 | Available | Societe Arabe Internationale De Banque |
| EGP | BANK\_ACCOUNT | SCB | 20-30000 | Available | Suez Canal Bank |
| EGP | BANK\_ACCOUNT | UB | 20-30000 | Available | The United Bank |
| EGP | BANK\_ACCOUNT | UNB | 20-30000 | Available | United National Bank |

## Related Topics

* [Common API](https://doc.haipay.net/docs/en/api/version2/CommonApi.md)
* [HaiPay API Description and Common Rules](https://doc.haipay.net/en/history/V20260801/get-started/api-conventions.md)
* [Turkey Payment API](https://doc.haipay.net/en/history/V20260801/payments/local/turkey.md)
* [Egypt — Collection Application (POST /egp/collect/apply)](https://doc.haipay.net/en/history/V20260801/api-reference/egp/collect-apply.md)
* [Egypt — Collection Query (POST /egp/collect/query)](https://doc.haipay.net/en/history/V20260801/api-reference/egp/api/collectQuery.md)
* [Egypt — Disbursement Application (POST /egp/pay/apply)](https://doc.haipay.net/en/history/V20260801/api-reference/egp/api/payApply.md)
* [Egypt — Disbursement Query (POST /egp/pay/query)](https://doc.haipay.net/en/history/V20260801/api-reference/egp/api/payQuery.md)
* [Handle Asynchronous Notifications and Verify Signatures](https://doc.haipay.net/en/history/V20260801/operations/callback.md)
* [Test Order Status Changes and Notifications End to End](https://doc.haipay.net/en/history/V20260801/testing/end-to-end.md)
* [Look Up Collection Payment Types and Codes (payType)](https://doc.haipay.net/en/history/V20260801/resources/cashin-code-list.md)
* [Look Up Disbursement Account Types and Bank Codes](https://doc.haipay.net/en/history/V20260801/resources/cashout-code-list.md)
* [HaiPay local payment methods product page](https://www.haipay.net/products/local-payment)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.