Payment

  1. The user selects the Ipay API method and enters the amount on the merchant's platform.

  2. The user is redirected to the payment page.

  3. The user selects one of the available payment methods: Ipay or LankaQR:

Ipay payment Flow:

  1. The user enters the necessary information for further payment confirmation: phone number and email address associated with their account.
  2. The user receives a push notification on their phone with a payment request.
  3. The user opens the Ipay app and confirms the payment.

LankaQR payment Flow:

  1. The user scans the QR code in their Ipay app using the QR pay section.
  2. The user confirms the payment.

After payment confirmation Flow:

  1. Paykassma sends a postback to the merchant's side.
  2. The funds are credited to the user's balance on the merchant's platform.

Payment window integration (plugin)

Due to the specifics of the payment system (PS), the Ipay API method can only be integrated through an iframe (plugin), with the payment page being opened in a new tab or in a popup.

Example of a link to open a Ipay API payment window:

https://plugin.{server_URL}/?
label=label
&currency_code=LKR
&lang=lang
&wallet_type=ipay_api
&custom_transaction_id=custom_transaction_id
&fixed_amount=fixed_amount
&payment_url_success_id=2
&payment_url_pending_id=3
&payment_url_fail_id=1
&success_url=hash
&fail_url=hash
&pending_url=hash


wallet_type=ipay_api
currency_code=LKR
Available languages(lang): en

Pay attention to the description of the parameters payment_url_success_id / payment_url_fail_idpayment_url_pending_id and success_url / fail_url pending_url.
To use payment_url_success_id / payment_url_fail_idpayment_url_pending_id you need to send the URLs to Paykassma support and use the received IDs in the parameters.
To use success_url / fail_urlpending_url you must use hashing URLs (For more details on hashing click here).

Redirect parameters for successful and unsuccessful payments are mandatory for this payment system.

For the description of all the plug-in parameters click here.

API integration

Integration via API is not available for this method.

Deposit postback

For the general documentation on post backs click here.

Example of deposit postback for Ipay API

{
    "signature": "910135b2a60d0a8f940db8c6e6cc8e334f90d937",
    "wallet_type": "ipay_api",
    "amount": 100,
    "currency_code": "LKR",
    "label": "1044289391",
    "converted_amount": {
        "USD": 0.34,
        "INR": 29,
        "EUR": 0.32,
        "IDR": 5423.46,
        ...
        "USDTTRC20": 0,
        "USDT20": 0
    },
    "direction": "ingoing",
    "created_datetime": "2024-11-06 13:10:01",
    "access_key": "PFOgBdC9NxcLWMGVH8lk",
    "additional_data": [
        {
            "activated_datetime": "2024-11-06 13:10:01",
            "exchanger_identifier": null,
            "comment": "",
            "amount": "100",
            "currency_code": "LKR",
            "wallet_type": "ipay_api",
            "stockpiling_id": 8,
            "transaction_id": "W000000000528349",
            "transaction_type": 0,
            "plugin_custom_order_id": "1343140123",
            "withdrawal_id": null,
            "withdrawal_status": null,
            "account_number": "",
            "account_name": "",
            "account_email": "",
            "bank_details": {
                "bank_code": "",
                "branch_code": ""
            }
        }
    ]
}

The Paykassma server is waiting for a response in json {"status": "ok"} response code 200, otherwise, when receiving a different response, Paykassma will forward the postback with a certain frequency.
Repeated postbacks must also be answered with {"status":"ok"} response code 200.

Withdrawals for users

Payments to users are made by using Ipay method ( for more details on Ipay method click here).