Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Оплата

  1. Пользователю предоставляются реквизиты кошелька, на которые необходимо совершить оплату.
  2. Пользователь совершает оплату в своем приложении кошелька и получает уникальный номер транзакции.
  3. Далее пользователь вводит уникальный номер транзакции в платежном окне - активируется транзакция.
  4. Paykassma отсылает постбек на сторону мерчанта.
  5. Средства начисляются на баланс пользователя на платформе мерчанта.

Интеграция через платежное окно (plugin)

Пример ссылки на открытие платежного окна bkash:

https://plugin/.{URL_сервера}/?
label=label
&currency_code=BDT
&lang=en
&wallet_type=bkash
&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


Code Block
wallet_type=bkash
currency_code=BDT
Доступные языки (lang): en, bn
Info

Обратите внимание на описание параметров payment_url_success_id / payment_url_fail_id / payment_url_pending_id и success_url fail_url / pending_url

Для использования payment_url_success_id / payment_url_fail_idpayment_url_pending_id необходимо передать URL'ы саппорту Paykassma, и использовать полученные ID в параметрах.

Для использования success_url / fail_url / pending_url необходимо использовать хэширование URL'ов (подробнее про хэширование см. здесь).

Описание всех параметров плагина смотрите здесь.

Интеграция через клиентский API

Создание платежа

URL: https://api.{ URL сервера }/api/v1/transaction/create/bkash?secret={pluginapi_secret}

На данном этапе мы предоставляем реквизиты кошелька, на который пользователь должен произвести платеж.

Request method:
POST

Format:
JSON

Parameters:

Name

Type

Required

Max Length

Description

currencystringyes3Код валюты.

label

string

yes

190

Это уникальный идентификатор (ID) пользователя, осуществляющего платеж.


Code Block
themeDJango
titleRequest
{
  'currency': 'BDT', 
  'label': 'eligendi'
}
Code Block
themeDJango
titleResponse Success
{
    "status": "ok",
    "params": {
        "identifier": "324342342",
		"account_type": "personal" //Тип кошелька/аккаунта. Возможные значения: agent - агентский аккаунт, personal - персональный аккаунт, merchant - мерчант аккаунт
    }
}
Code Block
themeDJango
titleResponse Fail
{
    'status': 'fail',
    'message': 'MESSAGE'
}


Способ оплаты в зависимости от типа аккаунта bKash

Пользователь Клиента переходит в сервис bKash и проводит там оплату в зависимости от типа аккаунта предоставленного кошелька.

На персональный аккаунт через "Send money".

На агентский аккаунт через "Cash out".

На мерчант аккаунт через "Make Payment".

Запрос активации

URL: http://api.{ URL сервера }/api/v1/transaction/activate?secret={pluginapi_secret}

На данном этапе пользователь передает номер транзакции, который вы пересылаете на сторону Paykassma для активации.

Request method:
POST

Format:
JSON

Parameters:

Name

Type

Required

Max Length

Description

currency_codestringyes3Код валюты.

wallet_type

string

yes

190

Метод (Платежная система).
labelstringyes190Это уникальный идентификатор (ID) пользователя, осуществляющего платеж.
key1stringyes190

Transaction_ID, полученный от пользователя.

Info

bKash - 10 символов, буквы и цифры.


amountfloatyes256Сумма платежа.
custom_transaction_id

string

yes190

Идентификатор транзакции в системе Клиента.

Должен быть уникальным.


Code Block
languagephp
themeDJango
titleRequest
{
    "currency_code": "BDT",
    "wallet_type": "bkash",
    "label": "55",
    "amount": 500,
    "key1": "AAD6DHSAVC",
    "custom_transaction_id": "123465477897"
}
Code Block
languagephp
themeDJango
titleResponse Success (при набранном мин. деп.)
{
    "status": "ok",
    "deposit": true,
    "deposit_amount": 500,
    "currency": {
        "code": "BDT",
        "symbol": "BDT"
    }
}
Code Block
languagephp
themeDJango
titleResponse Success (при не набранном мин. деп.)
{
    "statusamount": "ok"500,
    "depositkey1": false"AAD6DHSAVC",
    "transactionscustom_transaction_sumid": "123465477897"
}
Code Block
languagephp
themeDJango
titleResponse Success
{100,
    "stockpiling_sumstatus": 100"ok",
    "lacks_sumdeposit": 300true,
    "minimumdeposit_depositamount": 400500,
    "currency": {
        "code": "BDT",
        "symbol": "BDT"
    }
}
Code Block
languagephp
themeDJango
titleResponse Pending (при активации подозрительной)
{
    "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
languagephp
themeDJango
titleResponse Possible Transaction Created (если включен функционал "Возможные транзакции")
{
    "status": "possible_transaction_created",
    "message": "Transaction not found. Possible transaction created"
}
Code Block
themeDJango
titleResponse Fail
{
    'status': 'fail',
    'message': 'MESSAGE'
}

Постбек депозита

Общую документацию по постбекам смотрите здесь.

Пример постбека на депозит bKash

Code Block
languagephp
themeDJango
collapsetrue
{
    "signature": "35e54262246adeafd4694e767557945827339a7f",
    "wallet_type": "bkash",
    "amount": 500,
    "currency_code": "BDT",
    "label": "7848747947846",
    "converted_amount": {"USD": 4.61,"INR": 380, "EUR": 4.2, "IDR": 69702.53, "MYR": 20.81, "VND": 109100.85, "SGD": 6.15, "THB": 158.07, "NGN": 3549.74, "TRY": 124.18, "AED": 16.92, "CAD": 6.11, "AUD": 6.96, "BDT": 500, "AFN": 392.19, "ALL": 427.25, "AMD": 1778.42, "AOA": 3803.37, "ARS": 1271.54, "AWG": 8.3, "AZN": 7.83, "BAM": 8.2, "BBD": 9.21, "BGN": 8.21, "BHD": 1.74, "BIF": 13046.47, "BMD": 4.61, "BND": 6.15, "BOB": 31.84, "BRL": 21.99, "BSD": 4.61, "BTC": 0.00015943, "BTN": 379, "BWP": 60.54, "BYN": 11.63, "BZD": 9.29, "CDF": 11425.29, "CHF": 4.04, "CLF": 0.14, "CLP": 3878.55, "CNH": 33.06, "CNY": 33.02, "COP": 18082.75, "CRC": 2498.95, "CUC": 4.61, "CUP": 118.58, "CVE": 462.56, "CZK": 100.38, "DJF": 820.28, "DKK": 31.27, "DOP": 259.16, "DZD": 624.77, "EGP": 142.3, "ERN": 69.08, "ETB": 253.82, "FJD": 10.22, "FKP": 3.6, "GBP": 3.6, "GEL": 11.9, "GGP": 3.6, "GHS": 52.22, "GIP": 3.6, "GMD": 276.31, "GNF": 39634.5, "GTQ": 36.22, "GYD": 963.87, "HKD": 35.89, "HNL": 113.34, "HRK": 31.62, "HTG": 628.87, "HUF": 1633.77, "ILS": 16.76, "IMP": 3.6, "IQD": 6035.32, "IRR": 194797.68, "ISK": 605.39, "JEP": 3.6, "JMD": 711.75, "JOD": 3.26, "JPY": 659.33, "KES": 657.15, "KGS": 404.25, "KHR": 19027.89, "KMF": 2061.95, "KPW": 4144.63, "KRW": 5933.82, "KWD": 1.42, "KYD": 3.84, "KZT": 2047.77, "LAK": 89252.61, "LBP": 69151.38, "LKR": 1469.64, "LRD": 858.4, "LSL": 81.95, "LYD": 22.02, "MAD": 45.38, "MDL": 82.35, "MGA": 20777.32, "MKD": 258.57, "MMK": 9674.75, "MNT": 15887.75, "MOP": 36.98, "MRO": 0, "MRU": 175.52, "MUR": 208.15, "MVR": 70.69, "MWK": 4853.1, "MXN": 77.35, "MZN": 293.46, "NAD": 82.25, "NIO": 168.55, "NOK": 47.01, "NPR": 606.4, "NZD": 7.49, "OMR": 1.77, "PAB": 4.61, "PEN": 16.61, "PGK": 16.59, "PHP": 252.72, "PKR": 1324.8, "PLN": 18.6, "PYG": 33513, "QAR": 16.79, "RON": 20.69, "RSD": 492.16, "RUB": 424.19, "RWF": 5413.13, "SAR": 17.28, "SBD": 38.44, "SCR": 61.28, "SDG": 2770, "SEK": 48.85, "SHP": 3.6, "SLL": 96567.61, "SOS": 2623.48, "SRD": 177.86, "SSP": 599.87, "STD": 102610.94, "STN": 102.67, "SVC": 40.31, "SYP": 11570.57, "SZL": 81.89, "TJS": 50.47, "TMT": 16.16, "TND": 14.19, "TOP": 10.82, "TTD": 31.29, "TWD": 145.48, "TZS": 11319.27, "UAH": 170.14, "UGX": 16716.57, "UYU": 173.55, "UZS": 53595.22, "VEF": 0, "VES": 135.74, "VUV": 546.73, "WST": 12.52, "XAF": 2752.15, "XAG": 0.19, "XAU": 0, "XCD": 12.45, "XDR": 3.43, "XOF": 2752.15, "XPD": 0, "XPF": 500.67, "XPT": 0, "YER": 1152.67, "ZAR": 83.54, "ZMW": 87.42, "ZWL": 1482.86, "ETH": 0.00251358, "LTC": 0.05065982, "DOGE": 59.80674641, "DASH": 0.14777208, "BCH": 0.01902045, "ZEC": 0.15475058, "ETC": 0.25289799, "XRP": 6.67674578, "TRX": 59.03020283, "XLM": 31.08030456, "WAVES": 2.42673726, "USDT": 4.60787289, "USDTTRC20": 0, "USDT20": 0},
    "direction": "ingoing",
    "created_datetime": "2023-08-01 13:37:42",
    "access_key": "FQ9jMwrNSkFbyMNqYFf6Ed4xeKmjHK",
    "additional_data": [
        {
            "activated_datetime": "2023-08-01 16:37:16",
            "exchanger_identifier": null,
            "comment": "",
            "amount": "100",
            "currency_code": "BDT",
            "wallet_type": "bkash",
            "stockpiling_id": 963,
            "transaction_id": "CD0C06E08D",
            "transaction_type": 1,
            "plugin_custom_order_id": null,
            "withdrawal_id": null,
            "withdrawal_status": null,
            "account_number": "",
            "account_name": "",
            "account_email": "",
            "bank_details": {
                "bank_code": "",
                "branch_code": ""
            }
        },
        {
            "activated_datetime": "2023-08-01 16:37:40",
            "exchanger_identifier": null,
            "comment": "",
            "amount": "400",
            "currency_code": "BDT",
            "wallet_type": "bkash",
            "stockpiling_id": 963,
            "transaction_id": "5750E9FBB3",
            "transaction_type": 1,
            "plugin_custom_order_id": null,
            "withdrawal_id": null,
            "withdrawal_status": null,
            "account_number": "",
            "account_name": "",
            "account_email": "",
            "bank_details": {
                "bank_code": "",
                "branch_code": ""
            }
        }
    ]
}
Warning

Сервер Paykassma ожидает ответ в json {"status":"ok"} код ответа 200, в противном случае, при получении отличающегося ответа, Paykassma будет пересылать постбек с определенной периодичностью.
На повторные постбеки необходимо также отвечать {"status":"ok"} код ответа 200.

Выводы / выплаты пользователям

Общую документацию по выводам смотрите здесь.

Создание вывода

URL: https://api.{ URL сервера }/v2/withdrawal/create

Request method:

POST

Format:
JSON

Parameters:

Name

Type

Required

Description

withdrawal_idstring yes Идентификатор вывода, если параметр не передается, то система
генерирует withdrawal
генерирует withdrawal_id.
payment_systemstring yesПлатежная система.
amount

int


required

Дополнительные требования:

  1. amount >= Величина установленного минимального значения;
  2. amount <= Величина установленного максимального значения.
currency_codestringyesКод валюты.

is_test

booleanyes

Параметр is_test может принимать одно из двух значений:

  • true - если Вывод
тестовый 
  • тестовый; 
  • false - если вывод
реальный 
  • реальный. 

label

string

yes

Label пользователя, для которого проводится вывод.

account_emailstring yesЕ-mail держателя счета.
account_numberstring 

yes

Номер счета получателя.

11 цифр, первые две - "01", example "01XXXXXXXXX".

signaturestringyesПодпись, формируемая с private_key.


Code Block
languagephp
themeDJango
titleRequest
{
"withdrawal_id": "af84c26f-931d-4c28-a30d-7b75e46b7685",
"payment_system": "bkash",
"amount": 6000,
"currency_code": "BDT",
"is_test": true,
"label": "c81594cc-e4b1-4ed5-914c-3817f2ccf13a",
"account_email": "[email protected]",
"account_number": "01642234663",
"signature": "98565041a9e126d325e864da0ba3d467f6ab0566"
}


Code Block
languagephp
themeDJango
titleResponse Success:
{
    "status": "ok",
}


Code Block
languagephp
themeDJango
titleResponse Fail
{
    'status': 'fail',
    'message': 'MESSAGE'
}

*Если при попытке создания заявки на вывод сумма балансов счетов в валюте заявки будет меньше, чем общая сумма новой и еще незавершенных заявок, то отобразитсяошибка 'Недостаточный баланс' (для настройки данного функционала обратитесь в ТП Paykassma).

Code Block
languagephp
themeDJango
titleResponse Fail (при недостаточном балансе)
{
    "status": "fail",
    "message": {
        "withdrawals_sum_amount": [
            "Insufficient balance"
        ]
    }
}

Пример постбека на вывод 

Code Block
languagephp
themeDJango
collapsetrue
{
    "signature": "80dea4b4ac348b3362a6ae8a384bda273090d736",
    "wallet_type": "bkash",
    "amount": 1000,
    "currency_code": "BDT",
    "label": "53999",
    "converted_amount": {"USD": 9.19, "INR": 762, "EUR": 8.4, "IDR": 139456.4, "MYR": 41.85, "VND": 218252.65, "SGD": 12.34, "THB": 319.65, "NGN": 7059.31, "TRY": 248.14, "AED": 33.76, "CAD": 12.29, "AUD": 14.01, "BDT": 1000, "AFN": 782.21, "ALL": 880.95, "AMD": 3553.15, "AOA": 7606.14, "ARS": 2556.17, "AWG": 16.57, "AZN": 15.63, "BAM": 16.41, "BBD": 18.38, "BGN": 16.42, "BHD": 3.47, "BIF": 25985.39, "BMD": 9.19, "BND": 12.32, "BOB": 63.39, "BRL": 45.21, "BSD": 9.19, "BTC": 0.00031527, "BTN": 759.15, "BWP": 123.06, "BYN": 23.16, "BZD": 18.49, "CDF": 22761.01, "CHF": 8.07, "CLF": 0.28, "CLP": 7825.36, "CNH": 66.09, "CNY": 66.01, "COP": 37354.96, "CRC": 4997.9, "CUC": 9.19, "CUP": 236.69, "CVE": 925.13, "CZK": 203.57, "DJF": 1633.46, "DKK": 62.6, "DOP": 518.16, "DZD": 1249.8, "EGP": 284.5, "ERN": 137.88, "ETB": 503.71, "FJD": 20.82, "FKP": 7.24, "GBP": 7.24, "GEL": 23.94, "GGP": 7.24, "GHS": 102.53, "GIP": 7.24, "GMD": 555.18, "GNF": 78901.88, "GTQ": 72.13, "GYD": 1919.37, "HKD": 71.77, "HNL": 225.63, "HRK": 63.29, "HTG": 1256.82, "HUF": 3290.49, "ILS": 33.88, "IMP": 7.24, "IQD": 12017.81, "IRR": 388924.19, "ISK": 1215.7, "JEP": 7.24, "JMD": 1419.83, "JOD": 6.51, "JPY": 1311.31, "KES": 1314.41, "KGS": 806.76, "KHR": 37931.08, "KMF": 4134.66, "KPW": 8272.54, "KRW": 12026.76, "KWD": 2.83, "KYD": 7.64, "KZT": 4085.16, "LAK": 178275.46, "LBP": 137706.07, "LKR": 2935.82, "LRD": 1714.25, "LSL": 170.49, "LYD": 44.17, "MAD": 90.83, "MDL": 161.83, "MGA": 40949.06, "MKD": 516.95, "MMK": 19265.17, "MNT": 31711.4, "MOP": 73.76, "MRO": 0, "MRU": 347.91, "MUR": 415.74, "MVR": 141.09, "MWK": 9637.55, "MXN": 159.13, "MZN": 587.12, "NAD": 171.88, "NIO": 335.77, "NOK": 93.87, "NPR": 1214.64, "NZD": 15.12, "OMR": 3.54, "PAB": 9.19, "PEN": 33.46, "PGK": 33.33, "PHP": 512.31, "PKR": 2646.06, "PLN": 37.35, "PYG": 66768.73, "QAR": 33.47, "RON": 41.61, "RSD": 985.18, "RUB": 872.02, "RWF": 10882.98, "SAR": 34.48, "SBD": 76.92, "SCR": 121.87, "SDG": 5528.81, "SEK": 98.37, "SHP": 7.24, "SLL": 192745.54, "SOS": 5224.43, "SRD": 352.64, "SSP": 1197.31, "STD": 204807.82, "STN": 208.19, "SVC": 80.28, "SYP": 23094.44, "SZL": 170.64, "TJS": 100.59, "TMT": 32.17, "TND": 28.36, "TOP": 21.78, "TTD": 62.19, "TWD": 291.36, "TZS": 22933.31, "UAH": 338.83, "UGX": 33073.3, "UYU": 344.16, "UZS": 107221.29, "VEF": 0, "VES": 273.17, "VUV": 1091.26, "WST": 24.99, "XAF": 5511.18, "XAG": 0.39, "XAU": 0, "XCD": 24.84, "XDR": 6.83, "XOF": 5511.18, "XPD": 0.01, "XPF": 1002.59, "XPT": 0.01, "YER": 2301.14, "ZAR": 171.84, "ZMW": 176.38, "ZWL": 2959.73, "ETH": 0.00501297, "LTC": 0.11098363, "DOGE": 123.99061787, "DASH": 0.29568477, "BCH": 0.04051484, "ZEC": 0.31233151, "ETC": 0.51252969, "XRP": 13.94632462, "TRX": 118.36066918, "XLM": 65.99332558, "WAVES": 4.94463261, "USDT": 9.20218423, "USDTTRC20": 0, "USDT20": 0},
    "direction": "outgoing",
    "created_datetime": "2023-08-04 09:13:00",
    "access_key": "FQ9jMwrNSkFbyMNqYFf6Ed4xeKmjHK",
    "additional_data": [
        {
            "activated_datetime": "",
            "exchanger_identifier": "",
            "comment": "",
            "amount": "1000",
            "currency_code": "BDT",
            "wallet_type": "bkash",
            "stockpiling_id": null,
            "transaction_id": "",
            "transaction_type": null,
            "plugin_custom_order_id": "",
            "withdrawal_id": "10319",
            "withdrawal_status": 1,
            "account_number": "56432467654",
            "account_name": "",
            "account_email": "[email protected]",
            "bank_details": {
                "bank_code": null,
                "branch_code": null
            }
        }
    ]
}
Warning
Сервер Paykassma ожидает ответ в json {"status":"ok"} код ответа 200, в противном случае, при получении отличающегося ответа, Paykassma будет пересылать постбек с определенной периодичностью.
На повторные постбеки необходимо также отвечать {"status":"ok"} код ответа 200.

После обработки вывода, Paykassma пришлет постбек о результате вывода со статусом, подписанный сигнатурой.

Статусы выводов

1SUCCESSСтатус для вывода, когда заявка на вывод была успешно обработана.
5FAILСтатус для вывода, когда заявка на вывод была отклонена.

Создание заявки на выплату в ЛК Paykassma

Для создания заявки на вывод, необходимо перейти на страницу Выводы (Оплаты → Выводы) и выполнить следующие шаги:

  1. Нажмите на кнопку "Добавить заявку на вывод".
    Image Modified


  2. Выберите из списка нужную ПС.
    Image Modified


  3. Заполните поля для создания заявки в следующем окне (Список полей стандартизирован и не все поля являются обязательными. Для создания заявки по определенной ПС, необходимо заполнить обязательные поля для этой ПС).
    Обязательные поля для выплаты bKash:
    - Лейбл (ID пользователя)
    - Сумма
    - Валюта
    - Кошелек получателя
    - Email получателя

    Image Modified

    4. После оплаты статус вывода поменяется.
  4. Image Removed
  5. Image Added


    Paykassma не высылает постбек по выводам, созданным вручную.

Оглавление:

Table of Contents
excludeОглавление: