Операции с кошельком Qostiq
Выставление счетов Bill [/bill/create]
Bill - Этот метод позволяет выставлять счета для оплаты при помощи кошельков Qostiq wallet.
URL: https://core.qostiq.com/bill/create
Метод: POST
Обязательные параметры: shop_amount, shop_currency, shop_id, shop_order_id, payer_currency
Уникальность shop_order_id проверяется в зависимости от настроек магазина, рекомендуем включить данную функцию и передавать уникальное значение для вашего магазина, для избежание дублированного выставления счетов на оплату.
В запросе могут передаваться дополнительные параметры, например, description – описание счета, или payer_account – email/номер кошелька аккаунта плательщика в системе Qostiq
Пример запроса:
{
"description": "Test Bill",
"payer_currency": 980,
"shop_amount": "23.15",
"shop_currency": 980,
"shop_id": "112",
"shop_order_id": 4239,
"sign": "ad7fbe8df102bc70e28deddba8b45bb3f4e6cafdaa69ad1ecc0e8b1d4e770575"
}
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
shop_id | идентификатор магазина в системе Qostiq | Integer | 5 |
shop_amount | сумма выставленного счета | Number (Не больше 2х знаков после точки) | 1, 1.0, 1.00 или "1.00" |
shop_currency | валюта выставленного счета (зачисления на магазин) | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро |
payer_currency | валюта оплаты плетельщиком (валюта списания с плательщика в системе Qostiq, может отличаться от валюты магазина) | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро |
sign | подпись | String | "a7f5bcbb774cea9d9886cbb3ce2f8731359e356a7d759437b4e9e31da1152109" |
shop_order_id | номер счета на стороне магазина, формат | String | "h8fj38dkh-hf8k-4f8d-9c8c-jd8dh38dksn92" |
description | описание выставленного счета (не обязательный параметр) | String | "test bill" |
payer_account | email или номер счета плательщика на стороне платежной системы Qostiq (не обязательный параметр), | String или integer | "support@qostiq.com" или 201494711279 |
Так же, в запросе можно передавать дополнительные параметры, в формировании подписи они не участвуют.
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
failed_url | URL, на который будет перенаправлен плательщик, после не успешной оплаты счета, | String | "https://qostiq.com/failed" |
success_url | URL, на который будет перенаправлен плательщик, после успешной оплаты счета | String | "https://qostiq.com/success" |
callback_url | URL адрес на который будет отправляться уведомление об успешной оплате | String | "https://qostiq.com/callback_url_kvt" |
callback_rejected_url | URL адрес на который будет отправляться уведомление о неуспешной оплате | String | "https://qostiq.com/callback_rejected_url_kvt" |
lifetime | время действия счета для оплаты, в минутах | String | "43200" |
Важно! Success URL, Fail URL, URL уведомлений, URL Reject уведомлений указанные в настройках магазина, имееют приоритет выше переданных в запросе, поэтому необходимо удалить их из настроек магазина.
Пример ответа:
{
"data": {
"created": "Wed, 06 Dec 2017 14:30:44 GMT",
"id": 25,
"lifetime": "43200",
"payer_account": null,
"payer_currency": 980,
"payer_price": 23.15,
"shop_amount": 23.15,
"shop_currency": 980,
"shop_id": 3,
"shop_order_id": 4239,
"shop_refund": 23.15,
"url": "https://wallet.qostiq.com/ru/bill/pay/WtvoXPzcphd"
},
"error_code": 0,
"message": "Ok",
"result": true
}
Где,
| Параметр | Описание |
|---|---|
data | информация по созданному счету для оплаты |
id | уникальный идентификатор счета в системе Qostiq |
lifetime | время действия счета для оплаты, в минутах, по умолчанию: 43200 минут |
payer_account | аккаунт плательщика, которому выставлен счет для оплаты (если передавался в запросе) |
payer_currency | валюта, в которой должен оплатить счет плательщик |
payer_price | сумма, которую должен оплатить плательщик для погашения счета |
shop_currency | валюта счета, зачисления на магазин |
shop_amount | сумма счета, переданная магазином |
shop_id | идентификатор магазина |
shop_order_id | номер счета на стороне магазина |
url | URL на который можно перенаправить пользователя для оплаты счета |
Внимание! При указании payer_account счет будет выставлен и привязан к пользователю для оплаты. Пользователь сможет просмотреть список неоплаченных счетов в своем личном кабинете и оплатить его. Для удобства оплаты, можно перенаправить пользователя на url из ответа на запрос. Необходимо обязательно перенаправить пользователя на url из ответа, если вы не передавали payer_account
Пример ошибки при выставлении счета:
{
"data": null,
"message": "invalid sign",
"error_code": 1,
"result": false
}
Где
| Параметр | Описание |
|---|---|
message | описание ошибки |
error_code | код ошибки |
Выставить счет Qostiq [POST]
- Request (application/json)
{
"description": "Test Bill",
"payer_currency": 980,
"shop_amount": "23.15",
"shop_currency": 980,
"shop_id": "112",
"shop_order_id": 4239,
"sign": "ad7fbe8df102bc70e28deddba8b45bb3f4e6cafdaa69ad1ecc0e8b1d4e770575"
}
- Response 200 ()
{
"data":
{
"created": "Wed, 06 Dec 2017 14:35:43 GMT",
"id": 26,
"lifetime": 43200,
"payer_account": null,
"payer_currency": 980,
"payer_price": 23.15,
"shop_amount": 23.15,
"shop_currency": 980,
"shop_id": 3,
"shop_order_id": 4239,
"url": https://wallet.qostiq.com/ru/bill/pay/kdrNIrMtuhb
}
"error_code": 0,
"message": "Ok",
"result": true
}
Выставление счетов Bill v.2 с возможностью оплаты на свободную сумму [/bill/create/v2]
Bill v.2 - новый метод позволяет выставлять счета для оплаты при помощи кошельков Qostiq wallet в 2х вариантах:
-
на фиксированную сумму - вы определяете сколько клиент должен заплатить за ваши услуги (если передан
amount); -
на свободную сумму - вы оставляете за клиентом право указывать сумму которая будет зачислена на магазин (если не передан
amount).
URL: https://core.qostiq.com/bill/create/v2
Метод: POST
Обязательные параметры: currency, now, shop_id, shop_order_id
Уникальность shop_order_id проверяется в зависимости от настроек магазина, рекомендуем включить данную функцию и передавать уникальное значение для вашего магазина, для избежание дублированного выставления счетов на оплату.
В запросе могут передаваться дополнительные параметры, например, description – описание счета, или email – email кошелька плательщика в системе Qostiq
Пример запроса:
{
"currency": 840,
"shop_id": 6,
"now": 1687520474,
"shop_order_id": "dc5a286e-6c5e-43e8-8c68-926fa15d09ec",
"sign": "771952b72a0869945d62373b46a79feabc5a674b34cf78de5dc7c4c36981cf87"
}
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
shop_id | идентификатор магазина в системе Qostiq | Integer | 6 |
currency | валюта выставленного счета (зачисления на магазин) | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро |
now | время запроса в формате timestamp | Integer | 1687520474 |
sign | подпись | String | "771952b72a0869945d62373b46a79feabc5a674b34cf78de5dc7c4c36981cf87" |
shop_order_id | номер счета на стороне магазина, формат | String | "dc5a286e-6c5e-43e8-8c68-926fa15d09ec" |
Так же, в запросе можно передавать дополнительные параметры, в формировании подписи они не участвуют.
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
amount | сумма выставленного счета, при использовании данного параметра клиент не будет иметь возможность сменить сумму оплаты | Number (Не больше 2х знаков после точки) | 1, 1.0, 1.00 или "1.00" |
email | email кошелька плательщика в системе Qostiq | String | "example@mail.com" |
failed_url | URL, на который будет перенаправлен плательщик, после не успешной оплаты счета, | String | "https://qostiq.com/failed" |
success_url | URL, на который будет перенаправлен плательщик, после успешной оплаты счета | String | "https://qostiq.com/success" |
callback_url | URL адрес на который будет отправляться уведомление об успешной оплате | String | "https://qostiq.com/callback_url_kvt" |
callback_rejected_url | URL адрес на который будет отправляться уведомление о неуспешной оплате | String | "https://qostiq.com/callback_rejected_url_kvt" |
lifetime | время действия счета для оплаты, в минутах (90 по умолчанию) | String | "43200" |
lang | язык страницы оплаты (доступны английский "en", польский - "pl", русский - "ru", украинский - "uk") | String | "en" |
Важно! Success URL, Fail URL, URL уведомлений, URL Reject уведомлений указанные в настройках магазина, имееют приоритет выше переданных в запросе, поэтому необходимо удалить их из настроек магазина.
Пример ответа:
{
"data": {
"created": "Fri, 23 Jun 2023 11:44:50 GMT",
"id": 1914,
"lifetime": "90",
"payer_account": null,
"payer_currency": 840,
"payer_price": null,
"shop_amount": null,
"shop_currency": 840,
"shop_id": 6,
"shop_order_id": "dc5a286e-6c5e-43e8-8c68-926fa15d09ec",
"shop_refund": null,
"url": "https://wallet.qostiq.com/ru/bill/pay/ba534fbd7bad42e09c47ce70c06b4886"
},
"error_code": 0,
"message": "Ok",
"result": true
}
Где,
| Параметр | Описание |
|---|---|
data | информация по созданному счету для оплаты |
id | уникальный идентификатор счета в системе Qostiq |
lifetime | время действия счета для оплаты, в минутах, по умолчанию: 43200 минут |
payer_account | аккаунт плательщика, которому выставлен счет для оплаты (если передавался в запросе) |
payer_currency | валюта, в которой должен оплатить счет плательщик |
payer_price | сумма, которую должен оплатить плательщик для погашения счета |
shop_currency | валюта счета, зачисления на магазин |
shop_amount | сумма счета, переданная магазином |
shop_id | идентификатор магазина |
shop_order_id | номер счета на стороне магазина |
url | URL на который можно перенаправить пользователя для оплаты счета |
Внимание! При указании email счет будет выставлен и привязан к пользователю для оплаты. Пользователь сможет просмотреть список неоплаченных счетов в своем личном кабинете и оплатить его. Для удобства оплаты, можно перенаправить пользователя на url из ответа на запрос. Необходимо обязательно перенаправить пользователя на url из ответа, если вы не передавали email
Пример ошибки при выставлении счета:
{
"data": null,
"message": "invalid sign",
"error_code": 10,
"result": false
}
Где
| Параметр | Описание |
|---|---|
message | описание ошибки |
error_code | код ошибки |
Выставить счет Qostiq [POST]
- Request (application/json)
{
"currency": 840,
"shop_id": 6,
"now": 1687520474,
"shop_order_id": "dc5a286e-6c5e-43e8-8c68-926fa15d09ec",
"sign": "771952b72a0869945d62373b46a79feabc5a674b34cf78de5dc7c4c36981cf87"
}
- Response 200 ()
{
"data": {
"created": "Fri, 23 Jun 2023 11:44:50 GMT",
"id": 1914,
"lifetime": 90,
"payer_account": null,
"payer_currency": 840,
"payer_price": null,
"shop_amount": null,
"shop_currency": 840,
"shop_id": 6,
"shop_order_id": "dc5a286e-6c5e-43e8-8c68-926fa15d09ec",
"shop_refund": null,
"url": "https://wallet.test-qostiq.com/ru/bill/pay/ba534fbd7bad42e09c47ce70c06b4886"
},
"error_code": 0,
"message": "Ok",
"result": true
}
Запрос статуса Bill [/bill/shop_order_status]
Этот метод позволяет узнать текущий статус платежа совершенного при помощи кошелька Qostiq wallet.
URL: https://core.qostiq.com/bill/shop_order_status
Метод: POST
Обязательные параметры: now, shop_id, shop_order_id
Пример запроса:
{
"now": "2021-05-01 16:56:25.009469",
"shop_id": 1092,
"shop_order_id": "234234232323",
"sign": "b9b838e0b1baedcf7dd60711b1afab246c3496b5cc3433df0c5a2e2d07fea976"
}
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
now | время запроса | String | "2021-05-01 16:56:25.009469" |
shop_id | идентификатор магазина в системе Qostiq | Integer | 1092 |
shop_order_id | номер счета на стороне Вашего сервиса | String | "234234232323" |
sign | подпись | String | "b9b838e0b1baedcf7dd60711b1afab246c3496b5cc3433df0c5a2e2d07fea976" |
Пример ответа:
{
"data": {
"client_price": 1.16,
"created": "2020-10-20 14:01:28",
"description": "",
"is_unique": true,
"payment_id": 852095,
"payway": "qostiq_usd",
"processed": "2020-10-20 14:01:33",
"ps_currency": 980,
"ps_data": {
"ps_payer_account": "201538122124"
},
"shop_amount": 1.1,
"shop_currency": 980,
"shop_id": 1092,
"shop_order_id": "234234232323",
"shop_refund": 1.1,
"status": 2
},
"error_code": 0,
"message": "Ok",
"result": true
}
Где,
| Параметр | Описание |
|---|---|
client_price | сумма платежа |
created | дата создания |
description | описание счета |
is_unique | уникальность номера платежа |
payment_id | идентификатор платежа на стороне Qostiq |
payway | платежное направление |
processed | дата проведения платежа |
ps_currency | валюта выставленного счета |
ps_data | дополнительная информация от платежной системы, например аккаунт плательщика |
shop_amount | сумма счета, переданная магазином |
shop_currency | валюта счета, зачисляемая в магазин |
shop_id | идентификатор магазина в системе Qostiq |
shop_order_id | номер счета на стороне магазина |
shop_refund | сумма зачисления на баланс магазина, в валюте счета |
status | статус счета |
Внимание! Запрос статуса необходимо делать не чаще чем раз в 10 секунд.
Если shop_order_id не уникален по операциям bill в рамках магазина, в ответе содержится "is_unique":false и метод возвращает информацию по последнему созданному Bill.
Запрос статуса Bill [POST]
- Request (application/json)
{
"now": "2021-05-01 16:56:25.009469",
"shop_id": "1092",
"shop_order_id": "234234232323",
"sign": "ad7fbe8df102bc70e28deddba8b45bb3f4e6cafdaa69ad1ecc0e8b1d4e770575"
}
- Response 200 ()
{
"data": {
"client_price": 1.16,
"created": "2020-10-20 14:01:28",
"description": "",
"is_unique": true,
"payment_id": 852095,
"payway": "qostiq_usd",
"processed": "2020-10-20 14:01:33",
"ps_currency": 980,
"ps_data": {
"ps_payer_account": "201538122124"
},
"shop_amount": 1.1,
"shop_currency": 980,
"shop_id": 1092,
"shop_order_id": "234234232323",
"shop_refund": 1.1,
"status": 2
},
"error_code": 0,
"message": "Ok",
"result": true
}
Статус операций Bill [/bill/status]
| Status | Значение | Описание | Финальный? |
|---|---|---|---|
| 1 | Waiting | Платеж находится в стадии ожидания действий пользователя | Нет |
| 2 | Paid | Платеж оплачен клиентом | Да |
| 3 | Canceled | Платеж отменен клиентом | Да |
| 4 | Expired | Истёк срок жизни счёта | Да |
Запрос статуса Bill при неуникальном shop_order_id [POST]
- Request (application/json)
{
"now": "2021-05-01 16:56:25.009469",
"shop_id": "112",
"shop_order_id": "123billtest",
"sign": "6fb934f7e00d205cb5ebb62117d9b74029d84c2ffc7c87fe5b38ac5196fecf02"
}
- Response 200 ()
{
"data": {
"client_price": 1.0,
"created": "2021-06-09 13:47:05",
"description": "",
"is_unique": false,
"payment_id": 19732961,
"payway": "qostiq_usd",
"processed": null,
"ps_currency": 980,
"ps_data": {
"ps_payer_account": "201538122124"
},
"shop_amount": 1.0,
"shop_currency": 980,
"shop_id": 1092,
"shop_order_id": "123billtest",
"shop_refund": 0.93,
"status": 4
},
"error_code": 0,
"message": "Ok",
"result": true
}
Предварительный расчет выплаты на кошелек: Transfer [/transfer/try]
Transfer/try. Данный метод не является обязательным для создания выплаты на кошелек. Возвращает дополнительную информацию для создания transfer и предварительный расчет по комиссиям и конвертации.
URL: https://core.qostiq.com/transfer/try
Метод: POST
Обязательные параметры: amount, amount_type, payee_currency, shop_currency, shop_id
Пример запроса:
{
"amount": 1.11,
"amount_type": "receive_amount",
"payee_currency": 978,
"shop_currency": 840,
"shop_id": 6,
"sign": "cea33ec0eeeef9866b01d51c7bbe55b4d3c3f2e18f681d7629940b816ff35a2b"
}
Где,
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
amount | сумма получения или списания (зависит от amount_type) | Number (Не больше 2х знаков после точки) | 1.00 или 1 |
amount_type | указывает на тип суммы, возможны значения: receive_amount – сумма к получению на аккаунт, writeoff_amount - сумма к списанию с баланса магазина | String | "receive_amount" или "writeoff_amount" |
payee_currency | валюта получения на аккаунт в Qostiq | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро, 398 - Казахстанский Тенге |
shop_currency | валюта списания с магазина, | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро, 398 - Казахстанский Тенге |
shop_id | идентификатор магазина, с которого осуществляется выплата | Integer | 5 |
sign | подпись запроса | String | "cea33ec0eeeef9866b01d51c7bbe55b4-d3c3f2e18f681d7629940b816ff35a2b" |
Пример ответа:
{
"data": {
"account_info_config": {
"payee_account": {
"comment": {
"en": "Enter Wallet Number or Email",
"ru": "Введите номер кошелька или email"
},
"example": "31557414711",
"label": {
"en": "Wallet Number or Email",
"ru": "Введите номер кошелька или email"
},
"regex": "^3[\\d]{10}$|^([a-zA-Z0-9_-]+\\.)*[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)*\\.[a-zA-Z]{2,6}$"
}
},
"info": {},
"payee_amount": 1.11,
"payee_currency": 978,
"shop_currency": 840,
"write_off_amount": 1.19
},
"error_code": 0,
"message": "Ok",
"result": true
}
Где,
| Параметр | Описание |
|---|---|
account_info_config.payee_account | информация об аккаунте, в том числе регулярное выражение, которому должен соответствовать аккаунт |
payee_amount | сумма к получению на счет в валюте payee_currency |
payee_currency | валюта получения на счет суммы payee_amount |
shop_currency | валюта списания с магазина суммы write_off_amount |
write_off_amount | сумма списания с магазина в валюте shop_currency |
Предварительный расчет выплаты [POST]
для демонстрации запроса в правом окне смените Production на Mock Server
- Request (application/json)
{
"amount": "1.11",
"amount_type": "receive_amount",
"payee_currency": "978",
"shop_currency": "840",
"shop_id": "6",
"sign": "cea33ec0eeeef9866b01d51c7bbe55b4d3c3f2e18f681d7629940b816ff35a2b"
}
- Response 200 ()
{
"data": {
"account_info_config": {
"payee_account": {
"comment": {
"en": "Enter Wallet Number or Email",
"ru": "Введите номер кошелька или email"
},
"example": "31557414711",
"label": {
"en": "Wallet Number or Email",
"ru": "Номер кошелька или email"
},
"regex": "^3[\\d]{10}$|^([a-zA-Z0-9_-]+\\.)*[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)*\\.[a-zA-Z]{2,6}$"
}
},
"info": {},
"payee_amount": 1.11,
"payee_currency": "978",
"shop_currency": "840",
"write_off_amount": 1.19
},
"error_code": 0,
"message": "Ok",
"result": true
}
Вывод средств на кошелек: Transfer [/transfer/create]
Transfer - Операция Transfers используется для вывода средств с магазина на персональный аккаунт пользователя в валюте Qostiq.
URL: https://core.qostiq.com/transfer/create
Метод: POST
Обязательные параметры: amount, amount_type, payee_account, payee_currency, shop_currency, shop_id, shop_payment_id
Shop_payment_id должен быть уникальным для каждого нового перевода.
В запросе могут передаваться дополнительные параметры, например, description – описание выплаты.
Пример запроса:
{
"amount": 10,
"amount_type": "receive_amount",
"payee_account": "201497141132",
"payee_currency": 980,
"shop_currency": 980,
"shop_id": 112,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561324",
"sign": "cd30ba2b6e29f508edf40582e17a9a602a43be9b527238b1b0a6777e226381f4"
}
Где,
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
payee_account | аккаунт получателя средств в системе Qostiq, может быть передан как номер кошелька, так и email пользователя | String | "201487668051" или "qostiq@qostiq.com"; |
amount | сумма получения или списания (зависит от amount_type) | Number (Не больше 2х знаков после точки) | 1.00 или 1 |
amount_type | указывает на тип суммы, возможны значения: receive_amount – сумма к получению на аккаунт, writeoff_amount - сумма к списанию с баланса магазина | String | "receive_amount" или "writeoff_amount" |
payee_currency | валюта получения на аккаунт в Qostiq | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро, 398 - Казахстанский Тенге |
shop_currency | валюта списания с магазина, | Integer | 840 - Доллар США, 978 - Евро, 980 - Украинская гривна, 398 - Казахстанский Тенге |
shop_id | идентификатор магазина, с которого осуществляется выплата | Integer | 5 |
shop_payment_id | уникальный идентификатор платежа на стороне магазина | String | "h8fj38dkh-hf8k-4f8d-9c8c-jd8dh38dksn92" |
Пример ответа:
{
"data": {
"balance": 0.9,
"id": 3,
"payee_account": 201497141132,
"payee_amount": 10,
"payee_currency": 980,
"shop": 112,
"shop_currency": 980,
"write_off_amount": 10
},
"error_code": 0,
"message": "Ok",
"result": true
}
Где,
| Параметр | Описание |
|---|---|
balance | баланс магазина, после успешного создания перевода |
id | уникальный идентификатор перевода на стороне Qostiq |
payee_amount | сумма к получению на счет в валюте payee_currency |
payee_currency | валюта получения на счет суммы payee_amount |
shop_currency | валюта списания с магазина суммы shop_write_off |
shop_payment_id | уникальный идентификатор платежа на стороне магазина |
write_off_amount | сумма списания с магазина в валюте shop_currency |
Внимание! У перевода отсутствует статус, т.к. если он создался и в ответе вернулся ID перевода, то перевод считается успешно проведенным, дополнительных запросов не требуется.
Перевести средства с баланса магазина [POST]
для демонстрации запроса в правом окне смените Production на Mock Server
- Request (application/json)
{
"amount": 10,
"amount_type": "receive_amount",
"payee_account": "201497141132",
"payee_currency": 980,
"shop_currency": 980,
"shop_id": 112,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561324",
"sign": "cd30ba2b6e29f508edf40582e17a9a602a43be9b527238b1b0a6777e226381f4"
}
- Response 200 ()
{
"data": {
"balance": 88.91,
"id": 12,
"payee_account": 201497141132,
"payee_amount": 10,
"payee_currency": 980,
"shop": 112,
"shop_currency": 980,
"write_off_amount": 10
},
"error_code": 0,
"message": "Ok",
"result": true
}
Вывод средств на кошелек: Transfer [/transfer/create]
Transfer - Операция Transfers используется для вывода средств с магазина на персональный аккаунт пользователя в валюте Qostiq.
URL: https://core.qostiq.com/transfer/create
Метод: POST
Обязательные параметры: amount, amount_type, payee_account, payee_currency, shop_currency, shop_id, shop_payment_id
Shop_payment_id должен быть уникальным для каждого нового перевода.
В запросе могут передаваться дополнительные параметры, например, description – описание выплаты.
Пример запроса:
{
"amount": 10,
"amount_type": "receive_amount",
"payee_account": "201497141132",
"payee_currency": 980,
"shop_currency": 980,
"shop_id": 112,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561324",
"sign": "cd30ba2b6e29f508edf40582e17a9a602a43be9b527238b1b0a6777e226381f4"
}
Где,
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
payee_account | аккаунт получателя средств в системе Qostiq, может быть передан как номер кошелька, так и email пользователя | String или integer | 201487668051 или "qostiq@qostiq.com"; |
amount | сумма получения или списания (зависит от amount_type) | Number (Не больше 2х знаков после точки) | 1, 1.0, 1.00 или "1.00" |
amount_type | указывает на тип суммы, возможны значения: receive_amount – сумма к получению на аккаунт, writeoff_amount - сумма к списанию с баланса магазина | String | "receive_amount" или "writeoff_amount" |
payee_currency | валюта получения на аккаунт в Qostiq | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро, 398 - Казахстанский Тенге |
shop_currency | валюта списания с магазина, | Integer | 980 - Украинская гривна, 840 - Доллар США, 978 - Евро |
shop_id | идентификатор магазина, с которого осуществляется выплата | Integer | 5 |
shop_payment_id | уникальный идентификатор платежа на стороне магазина | String | "h8fj38dkh-hf8k-4f8d-9c8c-jd8dh38dksn92" |
Пример ответа:
{
"data": {
"balance": 0.9,
"id": 3,
"payee_account": 201497141132,
"payee_amount": 10,
"payee_currency": 980,
"shop": 112,
"shop_currency": 980,
"write_off_amount": 10
},
"error_code": 0,
"message": "Ok",
"result": true
}
Где,
| Параметр | Описание |
|---|---|
balance | баланс магазина, после успешного создания перевода |
id | уникальный идентификатор перевода на стороне Qostiq |
payee_amount | сумма к получению на счет в валюте payee_currency |
payee_currency | валюта получения на счет суммы payee_amount |
shop_currency | валюта списания с магазина суммы shop_write_off |
shop_payment_id | уникальный идентификатор платежа на стороне магазина |
write_off_amount | сумма списания с магазина в валюте shop_currency |
Внимание! У перевода отсутствует статус, т.к. если он создался и в ответе вернулся ID перевода, то перевод считается успешно проведенным, дополнительных запросов не требуется.
Перевести средства с баланса магазина [POST]
для демонстрации запроса в правом окне смените Production на Mock Server
- Request (application/json)
{
"amount": 10,
"amount_type": "receive_amount",
"payee_account": "201497141132",
"payee_currency": 980,
"shop_currency": 980,
"shop_id": 112,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561324",
"sign": "cd30ba2b6e29f508edf40582e17a9a602a43be9b527238b1b0a6777e226381f4"
}
- Response 200 ()
{
"data": {
"balance": 88.91,
"id": 12,
"payee_account": 201497141132,
"payee_amount": 10,
"payee_currency": 980,
"shop": 112,
"shop_currency": 980,
"write_off_amount": 10
},
"error_code": 0,
"message": "Ok",
"result": true
}
Запрос статуса Transfer [/transfer/shop_payment_status]
Запрос статуса по переводу transfer выполняется по номеру платежа магазина.
В случае получения time-out или других ошибок на запрос создания transfer, можно сделать запрос статуса перевода с помощью данного метода. Если в ответе вернулся идентификатор и данные по переводу, то значит перевод был успешно создан и проведен. В противном случае вернется ошибка, что перевод не найден и необходимо будет повторить запрос на создание перевода.
URL: https://core.qostiq.com/transfer/shop_payment_status
Метод: POST
Обязательные параметры: now, shop_payment_id, shop_id
| Параметр | Описание | Формат | Пример |
|---|---|---|---|
now | время запроса | String | "2018-06-15 09:58:01.01" |
shop_payment_id | номер счета на стороне Вашего сервиса | String | "h8fj38dkh-hf8k-4f8d-9c8c-jd8dh38dksn92" |
shop_id | идентификатор магазина в системе Qostiq | Integer | 5 |
sign | подпись | String | "a7f5bcbb774cea9d9886cbb3ce2f8731359e356a7d759437b4e9e31da1152109" |
Пример запроса:
{
"shop_id": 112,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561322",
"now": "2018-01-23 16:45:14.145107",
"sign": "e76c5ed9431d18ad6c01ea123241fe88330714c97bdd184860a80cb675c1e016"
}
Пример ответа, если transfer был создан и проведен:
{
"data": {
"id": 3,
"payee_currency": 980,
"receive_amount": 1,
"shop_currency": 980,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561322",
"write_off_amount": 1
},
"error_code": 0,
"message": "Ok",
"result": true
}
Пример ответа, если transfer не был создан (не найден):
{
"data": null,
"error_code": 7,
"message": "Transfer (shop_payment_id=test) wasn't found",
"result": false
}
Запросить статус transfer [POST]
- Request (application/json)
{
"shop_id": 112,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561322",
"now": "2018-01-23 16:45:14.145107",
"sign": "e76c5ed9431d18ad6c01ea123241fe88330714c97bdd184860a80cb675c1e016"
}
- Response 200 ()
{
"data":
{
"id": 3,
"payee_currency": 980,
"receive_amount": 1,
"shop_currency": 980,
"shop_payment_id": "55ac443d-958b-40e3-8956-e04e72561322",
"write_off_amount": 1
},
"error_code": 0,
"message": "Ok",
"result": true
}
- Response 200 (error)
{
"data": null,
"error_code": 7,
"message": "Transfer (shop_payment_id=test) wasn't found",
"result": false
}