Документация API

Все запросы должны отправляться на адрес https://wdonate.ru/api/{метод}

API принимает POST запросы в виде JSON-объекта. В заголовке Content-type должно передаваться application/json.
В ответ сервер вернет JSON-объект с запрошенными данными (или сообщение об ошибке, если что-то пошло не так).
Для авторизации в API используются параметры token и botId.

Внимание! У API есть ограничения. Суточный лимит запросов - 3000. Не чаще одного запроса в 5 секунд.

Методы API

getLink

Метод для создания новой ссылки на оплату.

Параметры запроса:

Параметр Тип данных Описание Обязательный По умолчанию Возможные значения
token string Токен для доступа к API да - -
botId int ID бота в VK да - -
sum float Сумма по умолчанию нет 0.00 от 1.00 до 100000.00
userId int ID пользователя нет 0 от 0 до 18446744073709551615
payload int Произвольное число нет 0 от -2147483647 до 2147483647
priority_pay_method string Приоритетный способ оплаты нет card fk, card, sbp

Параметры ответа:

Параметр Тип данных Описание
status string Статус запроса, success или error (в случае ошибки)
response.link string Ссылка на страницу оплаты

Пример запроса:

{"token":"example_token","botId":1,"userId":1}

Пример ответа:

{"status":"success","response":{"link":"https://wdonate.ru/pay/xxxxxx"}}

getPayments

Метод для получения истории платежей.

Параметры запроса:

Параметр Тип данных Описание Обязательный По умолчанию
token string Токен для доступа к API да
botId int ID бота в VK да
count int Лимит записей да 0

Параметры ответа:

Параметр Тип данных Описание
status string Статус запроса, success или error (в случае ошибки)
response[][id] int Номер оплаты в системе
response[][userId] int VK ID плательщика (если был передан)
response[][type] string Способ оплаты: sbp = СБП, yoomoney = ЮMoney, card = банковская карта, fk = freekassa
response[][sum] float Сумма платежа в рублях
response[][txnId] string Id транзакции в платежной системе
response[][time] int Дата и время платежа в Unixtime
response[][payload] int Произвольное число

Пример запроса:

{"token":"example_token","botId":1,"count":10}

Пример ответа:

{"status":"success","response":[{"id":123,"userId":1,"type":"sbp","sum":1000,"txnId":"qw_123","time":1658677484,"payload":0}]}

getBalance

Метод для получения текущего баланса.

Параметры запроса:

Параметр Тип данных Описание Обязательный По умолчанию
token string Токен для доступа к API да
botId int ID бота в VK да

Параметры ответа:

Параметр Тип данных Описание
status string Статус запроса, success или error (в случае ошибки)
response.balance float Текущий баланс

Пример запроса:

{"token":"example_token","botId":1}

Пример ответа:

{"status":"success","response":{"balance":1000}}

getCallback

Метод для получения текущего Callback URL.

Параметры запроса:

Параметр Тип данных Описание Обязательный По умолчанию
token string Токен для доступа к API да
botId int ID бота в VK да

Параметры ответа:

Параметр Тип данных Описание
status string Статус запроса, success или error (в случае ошибки)
response.url string Текущий Callback URL

Пример запроса:

{"token":"example_token","botId":1}

Пример ответа:

{"status":"success","response":{"url":"https://current_callback_url/"}}

setCallback

Метод для установки Callback URL.

Параметры запроса:

Параметр Тип данных Описание Обязательный По умолчанию
token string Токен для доступа к API да
botId int ID бота в VK да
callbackUrl string Callback URL да

Параметры ответа:

Параметр Тип данных Описание
status string Статус запроса, success или error (в случае ошибки)
response.url string Текущий Callback URL

Пример запроса:

{"token":"example_token","botId":1}

Пример ответа:

{"status":"success","response":{"url":"https://new_callback_url/"}}

delCallback

Метод для удаления текущего Callback URL.

Параметры запроса:

Параметр Тип данных Описание Обязательный По умолчанию
token string Токен для доступа к API да
botId int ID бота в VK да

Параметры ответа:

Параметр Тип данных Описание
status string Статус запроса, success или error (в случае ошибки)
response.url string Текущий Callback URL

Пример запроса:

{"token":"example_token","botId":1}

Пример ответа:

{"status":"success","response":{"url":""}}

Готовые решения:

NodeJS: https://www.npmjs.com/package/wdonate