[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 - юридическое лицо
E-mail покупателя
Это значение, которые вы передали при создании платежа в параметре customer.email.
Это значение, которые вы передали при создании платежа в параметре customer.email.
Имя покупателя
Это значение, которые вы передали при создании платежа в параметре customer.first_name.
Это значение, которые вы передали при создании платежа в параметре customer.first_name.
Фамилия покупателяЭто значение, которые вы передали при создании платежа в параметре customer.last_name.
Телефон покупателя
Это значение, которые вы передали при создании платежа в параметре customer.phone. Если не заполнено, то параметр будет передан с пустым значением ("").
Это значение, которые вы передали при создании платежа в параметре customer.phone. Если не заполнено, то параметр будет передан с пустым значением ("").
Номер налогоплательщика покупателя
Это значение, которые вы передали при создании платежа в параметре customer.vat_number. Если не заполнено, то параметр будет передан с пустым значением ("").
Это значение, которые вы передали при создании платежа в параметре customer.vat_number. Если не заполнено, то параметр будет передан с пустым значением ("").
Наименование компании
Это значение, которые вы передали при создании платежа в параметре customer.company_name. Если не заполнено, то параметр будет передан с пустым значением ("").
Это значение, которые вы передали при создании платежа в параметре customer.company_name. Если не заполнено, то параметр будет передан с пустым значением ("").
Юридический адрес компании
Это значение, которые вы передали при создании платежа в параметре customer.company_billing_address. Если не заполнено, то параметр будет передан с пустым значением ("").
Это значение, которые вы передали при создании платежа в параметре customer.company_billing_address. Если не заполнено, то параметр будет передан с пустым значением ("").
Фактический адрес компании
Это значение, которые вы передали при создании платежа в параметре customer. company_delivery_address. Если не заполнено, то параметр будет передан с пустым значением ("").
Это значение, которые вы передали при создании платежа в параметре customer. company_delivery_address. Если не заполнено, то параметр будет передан с пустым значением ("").
Данные платежа
Если оповещение отправляется по родительскому заказу при покупке через корзину с последующими автоплатежами, то в запросе будут заполнены соответствующие данные о продукте/корзине. См. описание формата в документации 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 попыток
- При повторной отправке данные уведомления не обновляются. В случае изменения заказа/платежа во время отправки оповещения - содержание оповещения не изменится