You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Оплата

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

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

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

https://plugin.{ URL сервера }/?
label=label&
currency_code=BDT&
lang=lang&
wallet_type=nagad&
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=nagad
currency_code=BDT
Доступные языки (lang): en, bn

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

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

Request method:
POST

Format:
JSON

Parameters:

Name

Type

Required

Max Length

Description

currencystringyes3Код валюты

label

string

yes

190

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


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

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

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

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

 

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

 

На мерчант аккаунт через "Merchant Pay".

 


Активация платежа

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, полученный от пользователя

Nagad - 8 символов, буквы и цифры

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

string

yes190

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

Request
{
    "currency_code": "BDT",
    "wallet_type": "nagad",
    "label": "55",
    "amount": 500,
    "key1": "21NO1YRT",
    "custom_transaction_id": "123465477897"
}
Response Success (при набранном мин. деп.)
{
    "status": "ok",
    "deposit": true,
    "deposit_amount": 500,
    "currency": {
        "code": "BDT",
        "symbol": "BDT"
    }
}
Response Success (при не набранном мин. деп)
{
    "status": "ok",
    "deposit": false,
    "transactions_sum": 100,
    "stockpiling_sum": 100,
    "lacks_sum": 300,
    "minimum_deposit": 400,
    "currency": {
        "code": "BDT",
        "symbol": "BDT"
    }
}
Response 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"
}


Response Possible Transaction Created (если включен функционал "Возможные транзакции")
{
    "status": "possible_transaction_created",
    "message": "Transaction not found. Possible transaction created"
}
Response Fail
{
    'status': 'fail'
    'message': 'MESSAGE'
}

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

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

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

{
    "signature": "56beb10ead1cd49475f1e16dd668a29fff3d4fb9",
    "wallet_type": "nagad",
    "amount": 600,
    "currency_code": "BDT",
    "label": "234",
    "converted_amount": {"USD": 5.5, "INR": 458, "EUR": 5.05, "IDR": 84206.21, "MYR": 25.57, "VND": 131151.4, "SGD": 7.47, "THB": 193.98, "NGN": 4209.6, "TRY": 148.98, "AED": 20.19, "CAD": 7.46, "AUD": 8.62, "BDT": 600, "AFN": 462.19, "ALL": 535.91, "AMD": 2119.43, "AOA": 4550.8, "ARS": 1918.56, "AWG": 9.89, "AZN": 9.34, "BAM": 9.87, "BBD": 10.99, "BGN": 9.9, "BHD": 2.07, "BIF": 15540.93, "BMD": 5.5, "BND": 7.45, "BOB": 37.88, "BRL": 27.32, "BSD": 5.5, "BTC": 0.00021022, "BTN": 455.77, "BWP": 74.58, "BYN": 13.84, "BZD": 11.05, "CDF": 13600.07, "CHF": 4.85, "CLF": 0.17, "CLP": 4753.93, "CNH": 40.18, "CNY": 40.02, "COP": 22536.26, "CRC": 2925.32, "CUC": 5.5, "CUP": 141.53, "CVE": 556.43, "CZK": 121.42, "DJF": 976.05, "DKK": 37.67, "DOP": 311.1, "DZD": 749.34, "EGP": 169.39, "ERN": 82.44, "ETB": 302.52, "FJD": 12.49, "FKP": 4.32, "GBP": 4.32, "GEL": 14.4, "GGP": 4.32, "GHS": 62.02, "GIP": 4.32, "GMD": 332.79, "GNF": 47102.19, "GTQ": 43.03, "GYD": 1148.02, "HKD": 43.04, "HNL": 134.9, "HRK": 38.09, "HTG": 745.53, "HUF": 1939.28, "ILS": 20.81, "IMP": 4.32, "IQD": 7179.8, "IRR": 232348.9, "ISK": 725.15, "JEP": 4.32, "JMD": 846.56, "JOD": 3.89, "JPY": 799.22, "KES": 782.37, "KGS": 485.14, "KHR": 22726.5, "KMF": 2487, "KPW": 4946.52, "KRW": 7365.69, "KWD": 1.69, "KYD": 4.57, "KZT": 2489.17, "LAK": 106934.11, "LBP": 82282.64, "LKR": 1770.53, "LRD": 1023.65, "LSL": 104.54, "LYD": 26.44, "MAD": 54.04, "MDL": 97.44, "MGA": 24817.48, "MKD": 310.95, "MMK": 11511.47, "MNT": 18961.65, "MOP": 44.22, "MRO": 0, "MRU": 207.84, "MUR": 249.7, "MVR": 84.5, "MWK": 5945.5, "MXN": 93.75, "MZN": 351.07, "NAD": 105.03, "NIO": 200.54, "NOK": 58.55, "NPR": 729.23, "NZD": 9.28, "OMR": 2.11, "PAB": 5.5, "PEN": 20.39, "PGK": 19.99, "PHP": 308.95, "PKR": 1628.08, "PLN": 22.54, "PYG": 39804.77, "QAR": 19.98, "RON": 25, "RSD": 591.72, "RUB": 517.19, "RWF": 6485.95, "SAR": 20.61, "SBD": 46, "SCR": 74.05, "SDG": 3303.17, "SEK": 60.26, "SHP": 4.32, "SLL": 115251.1, "SOS": 3121.61, "SRD": 209.95, "SSP": 715.93, "STD": 122463.67, "STN": 123.63, "SVC": 47.96, "SYP": 13809.19, "SZL": 104.52, "TJS": 60.22, "TMT": 19.24, "TND": 16.96, "TOP": 13.14, "TTD": 37.18, "TWD": 175.39, "TZS": 13731.9, "UAH": 202.45, "UGX": 20472.66, "UYU": 207.44, "UZS": 66206.92, "VEF": 0, "VES": 173.52, "VUV": 652.51, "WST": 14.94, "XAF": 3310.73, "XAG": 0.24, "XAU": 0, "XCD": 14.85, "XDR": 4.11, "XOF": 3310.73, "XPD": 0, "XPF": 602.29, "XPT": 0.01, "YER": 1375.96, "ZAR": 104.77, "ZMW": 106.21, "ZWL": 1769.75, "ETH": 0.00327932, "LTC": 0.0848166, "DOGE": 86.06973908, "DASH": 0.20288551, "BCH": 0.02900566, "ZEC": 0.21915246, "ETC": 0.35471858, "XRP": 10.16340924, "TRX": 72.59371303, "XLM": 41.90497255, "WAVES": 3.60487891, "USDT": 5.49542797, "USDTTRC20": 0, "USDT20": 0},
    "direction": "ingoing",
    "created_datetime": "2023-08-20 19:04:08",
    "access_key": "FQ9jMwrNSkFbyMNqYFf6Ed4xeKmjHK",
    "additional_data": [
        {
            "activated_datetime": "2023-08-20 22:04:07",
            "exchanger_identifier": null,
            "comment": "",
            "amount": "600",
            "currency_code": "BDT",
            "wallet_type": "nagad",
            "stockpiling_id": 1061,
            "transaction_id": "52AD1EA4",
            "transaction_type": 1,
            "plugin_custom_order_id": "1234",
            "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.

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

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

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

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

Request method:

POST

Format:
JSON

Parameters:

Name

Type

Required

Description

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

int


required

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

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

is_test

booleanyes

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

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

label

string(1-36)

yes

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

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

yes

Номер счета получателя, 11 цифр, первые две - "01", example "01XXXXXXXXX"

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


Request
{
"withdrawal_id": "af84c26f-931d-4c28-a30d-7b75e46b7685",
"payment_system": "nagad",
"amount": 6000,
"currency_code": "BDT",
"is_test": true,
"label": "c81594cc-e4b1-4ed5-914c-3817f2ccf13a",
"account_email": "[email protected]",
"account_number": "01642234663",
"signature": "98565041a9e126d325e864da0ba3d467f6ab0566"
}
Response Success
{
    "status": "ok",
}
Response Fail
{
    'status': 'fail'
    'message': 'MESSAGE'
}

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

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

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

{
    "signature": "c36db9e7c7b45d429ee0ec5e4d2978cea1431287",
    "wallet_type": "nagad",
    "amount": 1000,
    "currency_code": "BDT",
    "label": "53928",
    "converted_amount": {"USD": 9.21, "INR": 759, "EUR": 8.41, "IDR": 139483.61, "MYR": 41.62, "VND": 218201.75, "SGD": 12.31, "THB": 316.46, "NGN": 7099.48, "TRY": 248.35, "AED": 33.83, "CAD": 12.24, "AUD": 13.94, "BDT": 1000, "AFN": 784.38, "ALL": 854.5, "AMD": 3556.83, "AOA": 7606.75, "ARS": 2535.36, "AWG": 16.6, "AZN": 15.66, "BAM": 16.4, "BBD": 18.42, "BGN": 16.41, "BHD": 3.47, "BIF": 26092.95, "BMD": 9.21, "BND": 12.29, "BOB": 63.67, "BRL": 43.91, "BSD": 9.21, "BTC": 0.00031913, "BTN": 758.01, "BWP": 121.08, "BYN": 23.26, "BZD": 18.57, "CDF": 22850.58, "CHF": 8.08, "CLF": 0.28, "CLP": 7755.8, "CNH": 66.11, "CNY": 66.02, "COP": 36235.92, "CRC": 4997.9, "CUC": 9.21, "CUP": 237.17, "CVE": 925.12, "CZK": 201.13, "DJF": 1640.56, "DKK": 62.65, "DOP": 518.32, "DZD": 1249.95, "EGP": 284.6, "ERN": 138.15, "ETB": 507.65, "FJD": 20.43, "FKP": 7.22, "GBP": 7.22, "GEL": 23.81, "GGP": 7.22, "GHS": 104.44, "GIP": 7.22, "GMD": 552.62, "GNF": 79269.03, "GTQ": 72.45, "GYD": 1927.74, "HKD": 71.79, "HNL": 226.67, "HRK": 63.34, "HTG": 1257.74, "HUF": 3275.81, "ILS": 33.61, "IMP": 7.22, "IQD": 12070.64, "IRR": 389595.44, "ISK": 1213.18, "JEP": 7.22, "JMD": 1423.49, "JOD": 6.52, "JPY": 1319.56, "KES": 1312.1, "KGS": 808.5, "KHR": 38055.79, "KMF": 4123.91, "KPW": 8289.26, "KRW": 11882.19, "KWD": 2.83, "KYD": 7.68, "KZT": 4095.55, "LAK": 178505.27, "LBP": 138302.79, "LKR": 2939.27, "LRD": 1716.8, "LSL": 163.89, "LYD": 44.04, "MAD": 90.75, "MDL": 164.7, "MGA": 41554.64, "MKD": 517.13, "MMK": 19349.5, "MNT": 31775.51, "MOP": 73.97, "MRO": 0, "MRU": 351.04, "MUR": 416.31, "MVR": 141.38, "MWK": 9706.21, "MXN": 154.95, "MZN": 586.93, "NAD": 164.5, "NIO": 337.1, "NOK": 94.28, "NPR": 1212.8, "NZD": 15, "OMR": 3.55, "PAB": 9.21, "PEN": 33.21, "PGK": 33.18, "PHP": 505.49, "PKR": 2649.6, "PLN": 37.25, "PYG": 67026.01, "QAR": 33.58, "RON": 41.46, "RSD": 986.28, "RUB": 848.04, "RWF": 10826.27, "SAR": 34.56, "SBD": 76.89, "SCR": 123.02, "SDG": 5539.99, "SEK": 98, "SHP": 7.22, "SLL": 193135.26, "SOS": 5246.97, "SRD": 355.72, "SSP": 1199.73, "STD": 205221.93, "STN": 205.35, "SVC": 80.62, "SYP": 23141.14, "SZL": 163.79, "TJS": 100.94, "TMT": 32.33, "TND": 28.37, "TOP": 21.65, "TTD": 62.58, "TWD": 291, "TZS": 22661.57, "UAH": 340.28, "UGX": 33433.14, "UYU": 347.09, "UZS": 107190.46, "VEF": 0, "VES": 271.47, "VUV": 1093.46, "WST": 25.04, "XAF": 5514.18, "XAG": 0.38, "XAU": 0, "XCD": 24.89, "XDR": 6.86, "XOF": 5514.18, "XPD": 0.01, "XPF": 1003.14, "XPT": 0.01, "YER": 2305.34, "ZAR": 166.99, "ZMW": 174.84, "ZWL": 2965.71, "ETH": 0.00502918, "LTC": 0.1013311, "DOGE": 119.5468743, "DASH": 0.29575773, "BCH": 0.03805325, "ZEC": 0.30984009, "ETC": 0.50497011, "XRP": 13.35802786, "TRX": 117.94919758, "XLM": 62.13565895, "WAVES": 4.85538562, "USDT": 9.2134184, "USDTTRC20": 0, "USDT20": 0},
    "direction": "outgoing",
    "created_datetime": "2023-08-01 13:30:03",
    "access_key": "FQ9jMwrNSkFbyMNqYFf6Ed4xeKmjHK",
    "additional_data": [
        {
            "activated_datetime": "",
            "exchanger_identifier": "",
            "comment": "1",
            "amount": "1000",
            "currency_code": "BDT",
            "wallet_type": "nagad",
            "stockpiling_id": null,
            "transaction_id": "",
            "transaction_type": null,
            "plugin_custom_order_id": "",
            "withdrawal_id": "10304",
            "withdrawal_status": 5,
            "account_number": "123456789013",
            "account_name": "",
            "account_email": "",
            "bank_details": {
                "bank_code": null,
                "branch_code": null
            }
        }
    ]
}
Сервер Paykassma ожидает ответ в json {"status":"ok"} код ответа 200, в противном случае, при получении отличающегося ответа, Paykassma будет пересылать постбек с определенной периодичностью.
На повторные постбеки необходимо также отвечать {"status":"ok"} код ответа 200.

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

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

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


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

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

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

  2. Выберите из списка нужную ПС.                                                            
  3. Заполните поля для создания заявки в следующем окне (список полей стандартизирован и не все поля являются обязательными. Для создания заявки по определенной ПС, необходимо заполнить обязательные поля для этой ПС).

Обязательные поля для выплаты Nagad:
- Лейбл (ID пользователя)
- Сумма
- Валюта
- Кошелек получателя
- Email получателя


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


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

Оглавление: