Payment providers
JazzCash
Connecting JazzCash
JazzCash is Pakistan's largest mobile wallet. Connecting it lets shoppers pay from their JazzCash mobile account, a debit or credit card, or a bank transfer, on JazzCash's own hosted page.
Money settles into your JazzCash merchant account. Eekaam never touches it.
What you need
Sign in to the JazzCash merchant portal. From your integration settings, copy three values:
| Field in Eekaam | What JazzCash calls it | Notes |
|---|---|---|
| Merchant ID | Merchant ID / MerchantID | Looks like MC12345 |
| Password | Merchant password | Not your portal login password — the integration password |
| Integrity Salt | Integrity Salt / HashKey | Signs every request and verifies every callback |
JazzCash issues separate credentials for sandbox and production. Sandbox credentials go in test mode in Eekaam, production ones in live.
Connect it in Eekaam
- Go to Settings → Payments.
- Under Add a payment provider, choose JazzCash and press Install.
- Pick Test or Live to match the credentials you are about to paste.
- Fill in Merchant ID, Password and Integrity Salt.
- Copy the Return URL shown on the form into your JazzCash portal wherever it asks for a return or callback URL.
- Press Save, then Test connection.
There is an optional Return URL Override. Leave it blank — Eekaam sends the right URL per order. Only set it if JazzCash support has told you to use a fixed one.
Turn it on at checkout
Saving credentials does not show JazzCash to shoppers. On the Payments screen, switch At checkout on for JazzCash and press Save in the header.
How a payment runs
- The shopper picks JazzCash at checkout.
- Eekaam builds a signed request and posts them to JazzCash's hosted page.
- They approve the payment in their wallet, with a card, or from their bank.
- JazzCash sends a signed result back to your store's notification URL, and the order moves from pending to paid.
The signature on that callback is checked against your Integrity Salt. A result that does not verify is rejected, so nobody can mark an order paid by calling your store directly.
Troubleshooting
"Invalid credentials" on Test connection. Almost always the Integrity Salt. It is long and easy to truncate — copy it again, with no leading or trailing space.
Shoppers reach JazzCash but the order stays pending. JazzCash accepted the payment but could not reach your store. Confirm the return URL in your JazzCash portal matches the one shown on the JazzCash card in Eekaam.
Payments work in sandbox but not in production. Sandbox and production credentials are different. Save the production set in live mode — test-mode keys never accept real money.
Updated 15 September 2026