Page History
Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Payment
- The user is provided with wallet details to which payment must be made.
- The user makes a payment in their wallet app and receives a unique transaction number.
- Next, the user enters a unique transaction number in the payment window, after which the transaction is activated.
- Paykassma sends a postback to the merchant's side.
- Funds are credited to the user’s balance on the merchant platform.
Payment window integration (plugin)
Example of a link to open a Ipay payment window:
https://plugin.{URL_сервера}/? label =label ¤cy_code =LKR &lang =en &wallet_type =ipay &custom_transaction_id =custom_transaction_id &fixed_amount=fixed_amount &payment_url_fail_id=1 |
---|
Code Block |
---|
wallet_type=bkash_api
currency_code=BDT
Доступные языки (lang): en, bn |
Info |
---|
Pay attention to the description of the parameters payment_url_success_id / payment_url_fail_id/ payment_url_pending_id and success_url / fail_url / pending_url. |
For the description of all the plug-in parameters click here.
API integration
Creating payment
URL: https://api.{ URL server }/api/v1/transaction/create/ipay?secret={pluginapi_secret}
At this stage, we provide the details of the wallet to which the user must make a payment.
Request method:
POST
Format:
JSON
Parameters:
Name | Type | Required | Max Length | Description |
currency | string | yes | 3 | Currency code. |
label | string | yes | 190 | The unique identifier (ID) of the user who makes the payment. |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"currency": "LKR",
"label": "eligendi"
} |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
'status': 'ok',
'params': {
'identifier': '6234234234'
}
} |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
'status': 'fail',
'message': 'MESSAGE'
} |
Activation request
URL: http://api.{ URL server }/api/v1/transaction/activate?secret={pluginapi_secret}
At this stage, the user transmits the transaction number, which you forward to the Paykassma side for activation.
Request method:
POST
Format:
JSON
Parameters:
Name | Type | Required | Max Length | Description |
currency_code | string | yes | 3 | LKR |
wallet_type | string | yes | 190 | Method: Ipay. |
label | string | yes | 190 | The unique identifier (ID) of the user who makes the payment. |
key1 | string | yes | 190 | Transaction ID received from the user (8 digits). |
amount | float | yes | 256 | Amount of payment. |
custom_transaction_id | string | yes | 190 | Transaction ID in the Client's system. Must be unique. |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"currency_code": "LKR",
"label": "786442",
"wallet_type": "ipay",
"key1": "23936785",
"amount": 1000,
"custom_transaction_id": "3158538"
} |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"status": "ok",
"deposit": true,
"deposit_amount": 100,
"currency": {
"code": "LKR",
"symbol": "LKR"
}
} |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"status": "pending",
"message": "The deposit status check has been started. The operation may take longer than expected. Upon completion of the verification, the funds will be credited to your account"
} |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"status": "possible_transaction_created",
"message": "Transaction not found. Possible transaction created"
} |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
'status': 'fail',
'message': 'MESSAGE'
} |
Deposit postback
For the general documentation on post backs click here.
Example of deposit postback for Ipay
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"signature": "2ad41735cd2d225cb30fe0665e83a3ade8618e0d",
"wallet_type": "ipay",
"amount": 1000,
"currency_code": "LKR",
"label": "545932754",
"converted_amount": {
"USD": 3.44, "INR": 287, "EUR": 3.26, , . . . , "USDTTRC20": 0, "USDT20": 0
},
"direction": "ingoing",
"created_datetime": "2023-09-26 19:37:02",
"access_key": "TA25Ea9sjPUFJvIG",
"additional_data": [
{
"activated_datetime": "2023-09-26 22:37:00",
"exchanger_identifier": "923139471223",
"comment": "",
"amount": "1000",
"currency_code": "LKR",
"wallet_type": "ipay",
"stockpiling_id": 4819603,
"transaction_id": "23936218009",
"transaction_type": 0,
"plugin_custom_order_id": "5586199250",
"withdrawal_id": null,
"withdrawal_status": null,
"account_number": "",
"account_name": "",
"account_email": "",
"bank_details": {
"bank_code": "",
"branch_code": ""
}
}
]
} |
Warning |
---|
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. |
Withdrawals for users
For the general documentation on the withdrawals of funds click here.
Creating withdrawal request for Ipay
URL: https://api.{ URL server }/v2/withdrawal/create
Request method:
POST
Format:
JSON
Parameters:
Name | Type | Required | Description |
withdrawal_id | string | yes | Withdrawal ID, if the parameter is not passed, then the system generates withdrawal _id. |
payment_system | string | yes | Payment system. |
amount | int | required | Additional requirements:
|
currency_code | string | yes | Currency code. |
label | string | yes | The unique identifier (ID) of the user who makes the payment. |
account_number | string | yes | The account number of the Client's user in ipay, in the format 07XXXXXX. Validation:
|
bank_details.bank_code | string | yes | Here you need to pass the name of the bank, for example, "Bank of Ceylon". |
account_name | string | yes | The name of the account holder. |
is_test | boolean | yes | The is_test parameter possible values: true - if Withdrawal is test; |
signature | string | yes | Signature generated with private_key. |
Code Block | ||||
---|---|---|---|---|
| ||||
{
"withdrawal_id": "1234567test565856",
"payment_system": "ipay",
"amount": 10000,
"currency_code": "LKR",
"label": "125199",
"account_number": "03405138",
"account_name": "Test Name Acc",
"is_test": true,
"bank_details": {
"bank_code": "Bank Of Ceylon"
},
"signature": "2e56786153bec935220fa1e9409ab24bd99cf9e8"
} |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"status": "ok",
} |
Code Block | ||||
---|---|---|---|---|
| ||||
{
'status': 'fail',
'message': 'MESSAGE'
} |
*If, when trying to create a withdrawal request, the amount of account balances in the currency of the request is less than the total amount of new and still incomplete applications, the error message"Insufficient balance" will be displayed (to configure this functionality, contact the TP Paykassma).
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"status": "fail",
"message": {
"withdrawals_sum_amount": [
"Insufficient balance"
]
}
} |
Example of withdrawal postback for Ipay
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"signature": "c698b4961e4bfd93957c3144647f4a6704960f03",
"wallet_type": "ipay",
"amount": 10000,
"currency_code": "LKR",
"label": "125199",
"converted_amount": {
"USD": 30.63, "INR": 2553, "EUR": 28.07, "IDR": 472521.76, "MYR": 143.14, . . . , "USDT": 30.61996208, "USDTTRC20": 0, "USDT20": 0
},
"direction": "outgoing",
"created_datetime": "2023-11-19 21:39:01",
"access_key": "icK2pOJnH7wxSZy9jmLslGeo",
"additional_data": [
{
"activated_datetime": "",
"exchanger_identifier": "",
"comment": "test",
"amount": "10000",
"currency_code": "LKR",
"wallet_type": "ipay",
"stockpiling_id": null,
"transaction_id": "",
"transaction_type": null,
"plugin_custom_order_id": "",
"withdrawal_id": "1234567test565856",
"withdrawal_status": 5,
"account_number": "03405138",
"account_name": "Test Name Acc",
"account_email": "",
"bank_details": {
"bank_code": "Bank Of Ceylon",
"branch_code": null
}
}
]
} |
Warning |
---|
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. |
After processing the withdrawal, Paykassma will send a postback about the withdrawal result with status, signed with a signature.
Withdrawal statuses
1 | SUCCESS | Status for withdrawal when the withdrawal request has been successfully processed. |
5 | FAIL | Status for withdrawal when the withdrawal request was rejected. |
Table of Contents | ||
---|---|---|
|