[POST] Отправка webhook-оповещения
Описание запроса
Оповещение отправляется по факту наступления события с платежом (или с родительским заказом в сценарии покупки через корзину с последующими автоплатежами).
В запросе по платежу передаются:
Если оповещение отправляется по сценарию покупки через корзину с последующими автоплатежами, то в запросе будут заполнены соответствующие данные о продукте/корзине. См. описание формата в документации Checkout.
Описание запроса
Характеристики запроса:
- Метод: POST
- Формат: JSON
- Кодировка: UTF-8
Подпись webhook-оповещения
Проверка подписи позволит подтвердить, что оповещение отправлено Softline.
Формат подписи: hash, сгенерированный по алгоритму SHA-512, от строки:
Формат подписи: hash, сгенерированный по алгоритму SHA-512, от строки:
[secret key];[event];[order_id];[create_date];[payment_method];[currency];[customer.email]где:
- secret key - создается при подключении webhook-оповещений для события.
- event; order_id; create_date; payment_method; currency; customer.email - значения соответствуют значениям аналогичных параметров в уведомлении.
Код события, по которому отправлено оповещение
Значение кодов см. в справочнике.
Значение кодов см. в справочнике.
Дата и время события, по которому отправлено webhook-оповещение
Формат: YYYY-MM-DDThh:mm:ss±hh:mm.
Формат: YYYY-MM-DDThh:mm:ss±hh:mm.
Дополненный идентификатор платежа
Формат идентификатора, в котором к нему может быть добавлен префикс.
Формат идентификатора, в котором к нему может быть добавлен префикс.
Статус платежа
Узнайте подробнее о статусах платежа.
Варианты значений:
Узнайте подробнее о статусах платежа.
Варианты значений:
- not paid - оплата не завершена
- paid - оплата успешно завершена
- deleted - платеж удален, в том числе, если был сделан полный возврат
Идентификатор платежа на вашей стороне
Этот идентификатор вы передаете при создании платежа (payment_id) или проведении автоплатежа (payment_id).
Этот идентификатор вы передаете при создании платежа (payment_id) или проведении автоплатежа (payment_id).
Дата и время создания платежа
Если webhook-оповещение отправляется по событию order.created, то дата и время в этом параметре будут совпадать со значением, которое передано в параметре event_date.
Формат: YYYY-MM-DDThh:mm:ss±hh:mm.
Если webhook-оповещение отправляется по событию order.created, то дата и время в этом параметре будут совпадать со значением, которое передано в параметре event_date.
Формат: YYYY-MM-DDThh:mm:ss±hh:mm.
Дата и время успешного завершения оплаты
Если webhook-оповещение отправляется по событию order.payment.succeeded, то дата и время в этом параметре будут совпадать со значением, которое передано в параметре event_date.
Если webhook-оповещение отправляется по событию order.payment.succeeded, то дата и время в этом параметре будут совпадать со значением, которое передано в параметре event_date.
- Формат: YYYY-MM-DDThh:mm:ss±hh:mm
- Если оплата не завершена, то параметр будет передан с пустым значением ("")
Код валюты платежа
- Формат: ISO 4217 alpha-3, 3 символа
- Варианты значений см. в справочнике
Код языка интерфейса платежной формы
Варианты значений см. в справочнике.
Варианты значений см. в справочнике.
Признак родительского заказа с возможностью автооплаты через Payments API
Варианты значений:
Варианты значений:
- true - заказ является родительским и для него может быть инициирован автоплатеж через Payments API. Узнайте больше о сценариях такой покупки:
- false - заказ не является родительским.
Cсылка на страницу платежной формы
При получении webhook-оповещения по платежу/заказу в тестовой среде - ссылка будет предназначена для тестовой среды (ссылка будет иметь суффикс .demoslweb.com).
При получении webhook-оповещения по платежу/заказу в тестовой среде - ссылка будет предназначена для тестовой среды (ссылка будет иметь суффикс .demoslweb.com).
Тип покупателя
Варианты значения:
Варианты значения:
- physical - физическое лицо
- juridical - юридическое лицо
Телефон покупателя
Если не заполнен, то параметр будет передан с пустым значением ("").
Если не заполнен, то параметр будет передан с пустым значением ("").
Номер налогоплательщика покупателя
Также, используется для передачи:
Также, используется для передачи:
- ИНН компании при оплате в рублях
Наименование компании
Если не заполнено, то параметр будет передан с пустым значением ("").
Если не заполнено, то параметр будет передан с пустым значением ("").
Юридический адрес компании
Если не заполнен, то параметр будет передан с пустым значением ("").
Если не заполнен, то параметр будет передан с пустым значением ("").
Фактический адрес компании
Если не заполнен, то параметр будет передан с пустым значением ("").
Если не заполнен, то параметр будет передан с пустым значением ("").
Данные платежа
Если оповещение отправляется по родительскому заказу при покупке через корзину с последующими автоплатежами, то в запросе будут заполнены соответствующие данные о продукте/корзине. См. описание формата в документации Checkout.
Если оповещение отправляется по родительскому заказу при покупке через корзину с последующими автоплатежами, то в запросе будут заполнены соответствующие данные о продукте/корзине. См. описание формата в документации Checkout.
Не используется, будет передано пустым ("") или заполнено техническим значением.
Не используется, будет передано пустым ("") или заполнено техническим значением.
Описание платежа
Это описание вы передаете при создании платежа (payment_description) или проведении автоплатежа (payment_description).
Это описание вы передаете при создании платежа (payment_description) или проведении автоплатежа (payment_description).
Сумма платежа без VAT
Формат: Число с 2 десятичными знаками, разделитель - точка. Передается как строка.
Формат: Число с 2 десятичными знаками, разделитель - точка. Передается как строка.
Сумма VAT
- Передается в валюте заказа
- Формат: Число с 2 десятичными знаками, разделитель - точка, передается как строка
- Если процент VAT равен нулю, то параметр будет передан с значением "0.00"
Полная сумма платежа
- Передается в валюте заказа
- Включает VAT
- Формат: число с 2 десятичными знаками, разделитель - точка, передается как строка
Сумма вашего дохода
- Передается в валюте заказа
- Формат: число с 2 десятичными знаками, разделитель - точка, передается как строка
Код платежного метода
Варианты значений см. в справочнике.
Варианты значений см. в справочнике.
Код ошибки оплаты
* - Обязательный параметр, если webhook-оповещение отправляется по событию ошибки оплаты (order.payment.failed), в ином случае не передается.
* - Обязательный параметр, если webhook-оповещение отправляется по событию ошибки оплаты (order.payment.failed), в ином случае не передается.
Описание ошибки оплаты
* - Обязательный параметр, если webhook-оповещение отправляется по событию ошибки оплаты (order.payment.failed), в ином случае не передается.
* - Обязательный параметр, если webhook-оповещение отправляется по событию ошибки оплаты (order.payment.failed), в ином случае не передается.
Тип банковской карты покупателя
Примеры значений: Visa, MASTERCARD.
Может быть заполнено, если покупатель успешно завершил оплату банковской картой. В ином случае, параметр будет передан с пустым значением ("").
Примеры значений: Visa, MASTERCARD.
Может быть заполнено, если покупатель успешно завершил оплату банковской картой. В ином случае, параметр будет передан с пустым значением ("").
Последние 4 цифры номера банковской карты покупателя
Может быть заполнено, если покупатель успешно завершил оплату банковской картой. В ином случае, параметр будет передан с пустым значением (null).
Может быть заполнено, если покупатель успешно завершил оплату банковской картой. В ином случае, параметр будет передан с пустым значением (null).
Срок окончания действия банковской карты покупателя
Может быть заполнено, если покупатель успешно завершил оплату банковской картой. В ином случае, параметр будет передан с пустым значением ("").
Формат значения: MM/YYYY, например, 12/2026.
Может быть заполнено, если покупатель успешно завершил оплату банковской картой. В ином случае, параметр будет передан с пустым значением ("").
Формат значения: MM/YYYY, например, 12/2026.
Дополнительные параметры
Эти параметры могут быть заполнены при создании платежа (additional_data) или в процессе обработки. Обратите внимание, срок хранения дополнительных параметров в платеже ограничен.
Эти параметры могут быть заполнены при создании платежа (additional_data) или в процессе обработки. Обратите внимание, срок хранения дополнительных параметров в платеже ограничен.
Название дополнительного параметра
* - Обязательный параметр, если параметр additional_data передан.
* - Обязательный параметр, если параметр additional_data передан.
Значение дополнительного параметра
* - Обязательный параметр, если параметр additional_data передан.
* - Обязательный параметр, если параметр additional_data передан.
Информация о возврате
Передается, если webhook-оповещение отправлено по событию product.returned. В ином случае не передается.
Передается, если webhook-оповещение отправлено по событию product.returned. В ином случае не передается.
Тип операции
* - Обязательный параметр, если был передан параметр return.
Варианты значений:
* - Обязательный параметр, если был передан параметр return.
Варианты значений:
- returned - возврат/chargeback
- removed - не используется в Softline Payments
Дата и время возврата.
Если webhook-оповещение отправляется по событию product.returned, то дата и время в этом параметре будут совпадать со значением, которое передано в параметре event_date.
Если webhook-оповещение отправляется по событию product.returned, то дата и время в этом параметре будут совпадать со значением, которое передано в параметре event_date.
- * - Обязательный параметр, если был передан параметр return.
- Формат: YYYY-MM-DDThh:mm:ss±hh:mm.
Описание причины возврата
* - Обязательный параметр, если был передан параметр return.
Примеры значений:
* - Обязательный параметр, если был передан параметр return.
Примеры значений:
- Географически ограничения
- Повторная оплата
- ChargeBack
- Дубли заказа
- Тестовый заказ
Ответ на оповещение
В случае получения оповещения ваш веб-сервис должен вернуть ответ на полученное оповещение. Время ожидания ответа: 1 минута.
Возможные ответы:
- HTTP/1.1 200 OK - оповещение успешно получено
- Любой другой ответ или отсутствие ответа - оповещение не получено
В случае, если оповещение не было получено, то:
- Отправка будет повторяться по следующему расписанию: 1 раз в 20 минут
- Повторная отправка будет выполняться до тех пор, пока не будет получен код ответа HTTP/1.1 200 OK или не будет совершено 10 попыток
- При повторной отправке данные уведомления не обновляются. В случае изменения заказа/платежа во время отправки оповещения - содержание оповещения не изменится