Skip to main content

Overview

The walletType of an order names one payment method: a provider (JazzCash or Easypaisa) and what the customer pays to (an account number, a Till ID or a QR code). A deposit is only ever given a receiving account of exactly the method you requested.

Deposit methods

JazzCashTillID, JazzCashQR and EasypaisaQR are new values. TillID keeps its name and means an Easypaisa Till ID, as before.
BankAccount is still a valid walletType: it is used for withdrawals, and a deposit can be created with it. Bank accounts aren’t offered on the hosted payment page for now, though. The payment link of a BankAccount deposit opens on the list of available methods, and the customer pays with one of the six methods above.

Exact matching

A deposit requested on a walletType is assigned only to a member who has a receiving account of exactly that method. No method falls back to another one, and never to another provider.
Changed behaviour. JazzCash and Easypaisa used to cover the provider’s Till IDs as well. They now mean the account number only.

If you already integrate

  • Requests you send today keep working: JazzCash, Easypaisa, TillID and BankAccount are accepted as before, and the request and response fields are unchanged.
  • If you relied on JazzCash reaching JazzCash Till IDs, request JazzCashTillID for those payments.
  • If you relied on Easypaisa reaching Easypaisa Till IDs, request TillID for those payments.
  • To let customers pay by QR code, request JazzCashQR or EasypaisaQR.
  • If your code validates walletType against a fixed list, add JazzCashTillID, JazzCashQR and EasypaisaQR.

When no account of the method is available

The order is accepted as Awaiting, exactly as before. C2C waits for a member with a receiving account of the requested method and doesn’t substitute another method. When the customer opens the payment page it shows “Finding an available agent…” and re-checks every 10 seconds. If no member is assigned before the link expires, the order ends CancelledTimeout. See the Deposit flow.

When the customer changes the method

Once the page shows where to pay, the customer can tap Change and pick another method. The page lists only the methods that are enabled for your account and available for that order, so it can show fewer than six. The order is then paid on the method they picked: what they submit follows that method, and your fee is re-quoted for it.

What the customer submits

What the customer submits on the hosted payment page depends on the method. There is no single rule for all deposits.

Account number and Till ID methods

JazzCash, JazzCashTillID, Easypaisa and TillID. The customer pays the account number or Till ID shown, then enters the last digits of the transaction ID (TID) of that payment. txnRefDigitsRequired on the order sets how many digits: 4 to 8, 4 by default.

QR methods

JazzCashQR and EasypaisaQR. These methods have no transaction ID step, and txnRefDigitsRequired has no effect on them. Before the QR code is shown, the customer gives the account they pay from: They then scan the QR code, pay, and tap I’ve Completed Payment. The assigned member uses the account the customer gave to find the incoming payment.
In every case, what the customer submits is their claim, not proof. The order completes only when the member confirms that the money arrived. Neither the transaction ID digits nor the account a customer pays from is returned by the Merchant API or sent in webhooks.

Withdrawals

Withdrawals are unchanged. A withdrawal’s walletType must be one of JazzCash, Easypaisa, TillID or BankAccount. JazzCashTillID, JazzCashQR and EasypaisaQR are deposit-only. A withdrawal on one of them is rejected with 400:

Enabling methods

C2C switches each method on or off per merchant, separately for deposits and withdrawals. Creating an order on a method that is disabled for your account returns 422, for example JazzCashQR deposits are disabled for this merchant. A disabled method isn’t offered on the payment page either. If JazzCash deposits were switched off for your account before the new methods were added, JazzCashTillID and JazzCashQR deposits start switched off too. The same applies to Easypaisa and EasypaisaQR. Ask C2C to enable the methods you want to use.

Fees

Your fee rules are configured by C2C per order type and method. A new method that has no rule of its own is priced by its provider’s rule:
  • A rule for JazzCash also prices JazzCashTillID and JazzCashQR deposits.
  • A rule for Easypaisa also prices EasypaisaQR deposits.
  • TillID keeps its own rules. It isn’t priced by the Easypaisa rule.
Among your account’s rules, one for the exact method takes precedence over the provider’s rule. The fee is fixed when the order is accepted and re-quoted only if the customer pays with a different method than you requested.

Next steps

Create a deposit

Request a method with walletType

Hosted payment page

What your customer sees for each method

Deposit flow

Full lifecycle, statuses and timeouts

Errors

Disabled methods and deposit-only methods