Оплата

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

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

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

http://plugin.{ URL сервера }/?
label=label&
currency_code=MMK&
lang=lang&
wallet_type=kbzpay_manual
&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=kbzpay_manual
currency_code=MMK
Доступные языки (lang): en, my (Бирманский)

Обратите внимание на описание параметров 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/kbzpay_manual?secret={pluginapi_secret}

На данном этапе сначала мы принимаем запрос на ввод по платежной системе. Далее в ответе мы предоставим реквизиты кошелька, на который пользователь должен перевести платеж. После оплаты Вам необходимо отправить запрос на активацию транзакции.

Request method:

POST

Format:
JSON

Parameters:

Name

Type

Required

Max Length

Description

currencystringyes3Код валюты.

label

string

yes

190

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


{
  'currency': 'MMK',
  'label': 'eligendi'
}


{
    "status": "ok",
    "params": {
        "kbzpay number": "12321"
    }
}


{
    'status': 'fail',
    'message': 'MESSAGE'
}

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

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

Request method:
POST

Format:
form-data

Parameters:

Name

Type

Required

Max Length

Description

currency_codestringyes3Код валюты (MMK).

wallet_type

string

yes

190

kbzpay_manual
labelstringyes190Это уникальный идентификатор (ID) пользователя, осуществляющего платеж.
key1stringyes25Transaction_ID, полученный от пользователя (15-25 цифр).
screenshotfileyes
Скриншот оплаты от пользователя.
amountintyes256Сумма платежа
custom_transaction_id

string

yes190

Идентификатор транзакции в системе Клиента. Должен быть уникальным.


{
    "status": "success",
    "message": "",
    "code": 20000,
    "data": [],
    "paginate": {
        "offset": 0,
        "total": 1,
        "limit": 1
    }
}


{
    'status': 'fail',
    'message': 'MESSAGE'
}

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

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

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

{
    "signature": "f33227723305ae59e4aa75b295f92856225e1b57",
    "wallet_type": "kbzpay_manual",
    "amount": 10000,
    "currency_code": "MMK",
    "label": "1234",
    "converted_amount": {
        "USD": 4.76, "INR": 398, "EUR": 4.37, "IDR": 73921.99, "MYR": 22.17, "VND": 115010.42, "SGD": 6.38, "THB": 167.39, "NGN": 3900.39, "TRY": 137.13, "AED": 17.5, "CAD": 6.53, "AUD": 7.27, "BDT": 527.37, "AFN": 334.48, "ALL": 450.99, "AMD": 1915.39, "AOA": 3953.92, "ARS": 1695.96, "AWG": 8.42, "AZN": 8.1, "BAM": 8.51, "BBD": 9.53, "BGN": 8.53, "BHD": 1.79, "BIF": 13555.29, "BMD": 4.76, "BND": 6.37, "BOB": 32.91, "BRL": 23.35, "BSD": 4.76, "BTC": 0.00013087, "BTN": 396.8, "BWP": 63.92, "BYN": 15.69, "BZD": 9.6, "CDF": 12269.81, "CHF": 4.21, "CLF": 0.15, "CLP": 4142.87, "CNH": 34.05, "CNY": 33.81, "COP": 19211.07, "CRC": 2527.44, "CUC": 4.76, "CUP": 122.68, "CVE": 481.14, "CZK": 107.09, "DJF": 848.34, "DKK": 32.55, "DOP": 271.01, "DZD": 638.91, "EGP": 147.21, "ERN": 71.46, "ETB": 265.86, "FJD": 10.68, "FKP": 3.8, "GBP": 3.8, "GEL": 12.89, "GGP": 3.8, "GHS": 56.96, "GIP": 3.8, "GMD": 320.4, "GNF": 41035.63, "GTQ": 37.28, "GYD": 996.31, "HKD": 37.14, "HNL": 117.74, "HRK": 32.9, "HTG": 631.2, "HUF": 1662.14, "ILS": 17.7, "IMP": 3.8, "IQD": 6239.27, "IRR": 201351.48, "ISK": 668.48, "JEP": 3.8, "JMD": 740.86, "JOD": 3.38, "JPY": 706.31, "KES": 725.95, "KGS": 424.07, "KHR": 19589.16, "KMF": 2148.46, "KPW": 4287.88, "KRW": 6164.84, "KWD": 1.47, "KYD": 3.97, "KZT": 2185.07, "LAK": 98540.01, "LBP": 71595.88, "LKR": 1564.8, "LRD": 895.69, "LSL": 87.53, "LYD": 22.95, "MAD": 48.25, "MDL": 84.44, "MGA": 21523.74, "MKD": 268.21, "MMK": 10000, "MNT": 16436.86, "MOP": 38.24, "MRO": 0, "MRU": 190.02, "MUR": 210.3, "MVR": 73.37, "MWK": 8019.02, "MXN": 81.94, "MZN": 304.2, "NAD": 88.71, "NIO": 174.61, "NOK": 50.85, "NPR": 634.87, "NZD": 7.88, "OMR": 1.83, "PAB": 4.76, "PEN": 17.8, "PGK": 17.76, "PHP": 263.72, "PKR": 1360.29, "PLN": 19.08, "PYG": 35439.16, "QAR": 17.34, "RON": 21.7, "RSD": 510.15, "RUB": 420.34, "RWF": 5886.8, "SAR": 17.87, "SBD": 40.34, "SCR": 63.51, "SDG": 2863.35, "SEK": 49.85, "SHP": 3.8, "SLL": 99905.11, "SOS": 2721.12, "SRD": 180.88, "SSP": 620.6, "STD": 106157.31, "STN": 107.71, "SVC": 41.67, "SYP": 11970.46, "SZL": 87.5, "TJS": 52, "TMT": 16.68, "TND": 14.79, "TOP": 11.31, "TTD": 32.36, "TWD": 149.61, "TZS": 11915, "UAH": 171.96, "UGX": 18034.93, "UYU": 187.79, "UZS": 58452.22, "VEF": 0, "VES": 168.69, "VUV": 565.63, "WST": 13.34, "XAF": 2864.32, "XAG": 0.2, "XAU": 0, "XCD": 12.88, "XDR": 3.58, "XOF": 2864.32, "XPD": 0, "XPF": 521.08, "XPT": 0.01, "YER": 1192.51, "ZAR": 88.65, "ZMW": 110.95, "ZWL": 1534.11, "ETH": 0.00245266, "LTC": 0.07219128, "DOGE": 66.58294586, "DASH": 0.16986823, "BCH": 0.02215688, "ZEC": 0.17741246, "ETC": 0.26494925, "XRP": 8.21697897, "TRX": 49.58453556, "XLM": 42.06387053, "WAVES": 2.49371036, "USDT": 4.76317523, "USDTTRC20": 0, "USDT20": 0
    },
    "direction": "ingoing",
    "created_datetime": "2023-11-21 23:30:24",
    "access_key": "SU8jgmm716Pky0o5zjWA2qvJtieFaYqS",
    "additional_data": [
        {
            "activated_datetime": "2023-11-22 02:30:22",
            "exchanger_identifier": null,
            "comment": "",
            "amount": "10000",
            "currency_code": "MMK",
            "wallet_type": "kbzpay_manual",
            "stockpiling_id": 1252,
            "transaction_id": "01003246080588218368",
            "transaction_type": 0,
            "plugin_custom_order_id": "test",
            "withdrawal_id": null,
            "withdrawal_status": null,
            "account_number": "",
            "account_name": "",
            "account_email": "",
            "bank_details": {
                "bank_code": "",
                "branch_code": ""
            }
        }
    ]
}
Сервер 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_idstringyes Идентификатор вывода, если параметр не передается, то система генерирует withdrawal_id.
payment_systemstring yesПлатежная система.
amount

int


required

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

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

label

string

yes

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

account_numberstring 

yes

Одиннадцатизначный номер счета пользователя Клиента в KBZpay.

Валидация:

  • Цифры: 0-9.

is_test

booleanyes

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

  • true - если вывод тестовый;
  • false - если вывод реальный.
signaturestringyesПодпись, формируемая с private_key.


{
    "withdrawal_id": "1234567test1234",
    "payment_system": "kbzpay_manual",
    "amount": 30000,
    "currency_code": "MMK",
    "label": "125199",
    "account_number": "09444595698",
    "is_test": true,
    "signature": "1bfb60ae114b102fff0409804da2302f4f7fbee5"
}


{
    "status": "ok",
}


{
    'status': 'fail',
    'message': 'MESSAGE'
}

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

{
    "status": "fail",
    "message": {
        "withdrawals_sum_amount": [
            "Insufficient balance"
        ]
    }
}

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

{
    "signature": "66e711eedd6e35e023bbe58a182074aa89997ad1",
    "wallet_type": "kbzpay_manual",
    "amount": 30000,
    "currency_code": "MMK",
    "label": "125199",
    "converted_amount": {
        "USD": 14.29, "INR": 1192, "EUR": 13.1, "IDR": 221765.98, "MYR": 66.5, "VND": 345031.26, "SGD": 19.13, "THB": 502.18, "NGN": 11701.17, "TRY": 411.4, "AED": 52.5, "CAD": 19.58, "AUD": 21.81, "BDT": 1582.12, "AFN": 1003.45, "ALL": 1352.96, "AMD": 5746.16, "AOA": 11861.77, "ARS": 5087.88, "AWG": 25.27, "AZN": 24.3, "BAM": 25.54, "BBD": 28.59, "BGN": 25.6, "BHD": 5.38, "BIF": 40665.88, "BMD": 14.29, "BND": 19.1, "BOB": 98.72, "BRL": 70.05, "BSD": 14.29, "BTC": 0.00039262, "BTN": 1190.4, "BWP": 191.76, "BYN": 47.07, "BZD": 28.8, "CDF": 36809.43, "CHF": 12.63, "CLF": 0.45, "CLP": 12428.62, "CNH": 102.14, "CNY": 101.44, "COP": 57633.21, "CRC": 7582.32, "CUC": 14.29, "CUP": 368.04, "CVE": 1443.42, "CZK": 321.26, "DJF": 2545.03, "DKK": 97.65, "DOP": 813.02, "DZD": 1916.73, "EGP": 441.63, "ERN": 214.39, "ETB": 797.57, "FJD": 32.04, "FKP": 11.4, "GBP": 11.4, "GEL": 38.66, "GGP": 11.4, "GHS": 170.89, "GIP": 11.4, "GMD": 961.2, "GNF": 123106.9, "GTQ": 111.85, "GYD": 2988.92, "HKD": 111.42, "HNL": 353.21, "HRK": 98.69, "HTG": 1893.59, "HUF": 4986.42, "ILS": 53.1, "IMP": 11.4, "IQD": 18717.81, "IRR": 604054.45, "ISK": 2005.44, "JEP": 11.4, "JMD": 2222.58, "JOD": 10.14, "JPY": 2118.94, "KES": 2177.84, "KGS": 1272.21, "KHR": 58767.49, "KMF": 6445.39, "KPW": 12863.63, "KRW": 18494.52, "KWD": 4.4, "KYD": 11.9, "KZT": 6555.2, "LAK": 295620.04, "LBP": 214787.64, "LKR": 4694.4, "LRD": 2687.07, "LSL": 262.58, "LYD": 68.86, "MAD": 144.74, "MDL": 253.33, "MGA": 64571.22, "MKD": 804.63, "MMK": 30000, "MNT": 49310.57, "MOP": 114.71, "MRO": 0, "MRU": 570.07, "MUR": 630.89, "MVR": 220.11, "MWK": 24057.07, "MXN": 245.82, "MZN": 912.6, "NAD": 266.13, "NIO": 523.84, "NOK": 152.55, "NPR": 1904.62, "NZD": 23.63, "OMR": 5.5, "PAB": 14.29, "PEN": 53.41, "PGK": 53.28, "PHP": 791.17, "PKR": 4080.87, "PLN": 57.25, "PYG": 106317.47, "QAR": 52.03, "RON": 65.1, "RSD": 1530.45, "RUB": 1261.02, "RWF": 17660.41, "SAR": 53.61, "SBD": 121.03, "SCR": 190.52, "SDG": 8590.04, "SEK": 149.55, "SHP": 11.4, "SLL": 299715.34, "SOS": 8163.35, "SRD": 542.65, "SSP": 1861.8, "STD": 318471.94, "STN": 323.14, "SVC": 125, "SYP": 35911.39, "SZL": 262.49, "TJS": 156, "TMT": 50.03, "TND": 44.36, "TOP": 33.92, "TTD": 97.07, "TWD": 448.83, "TZS": 35745.01, "UAH": 515.88, "UGX": 54104.78, "UYU": 563.36, "UZS": 175356.66, "VEF": 0, "VES": 506.07, "VUV": 1696.88, "WST": 40.02, "XAF": 8592.97, "XAG": 0.6, "XAU": 0.01, "XCD": 38.63, "XDR": 10.73, "XOF": 8592.97, "XPD": 0.01, "XPF": 1563.23, "XPT": 0.02, "YER": 3577.52, "ZAR": 265.94, "ZMW": 332.86, "ZWL": 4602.32, "ETH": 0.00735799, "LTC": 0.21657386, "DOGE": 199.74883758, "DASH": 0.5096047, "BCH": 0.06647064, "ZEC": 0.53223739, "ETC": 0.79484775, "XRP": 24.65093693, "TRX": 148.75360668, "XLM": 126.19161159, "WAVES": 7.4811311, "USDT": 14.28952571, "USDTTRC20": 0, "USDT20": 0
    },
    "direction": "outgoing",
    "created_datetime": "2023-11-21 23:36:01",
    "access_key": "SU8jgmm716Pky0o5zjWA2qvJtieFaYqS",
    "additional_data": [
        {
            "activated_datetime": "",
            "exchanger_identifier": "",
            "comment": "test",
            "amount": "30000",
            "currency_code": "MMK",
            "wallet_type": "kbzpay_manual",
            "stockpiling_id": null,
            "transaction_id": "",
            "transaction_type": null,
            "plugin_custom_order_id": "",
            "withdrawal_id": "1234567test1234",
            "withdrawal_status": 5,
            "account_number": "09444595698",
            "account_name": "",
            "account_email": "",
            "bank_details": {
                "bank_code": null,
                "branch_code": null
            }
        }
    ]
}


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

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

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



Оглавление: