Перейти к содержимому
Все вопросыБезопасность

Зачем уведомления о платежах подписываются? | MULENPAY

Адрес, на который приходят уведомления о платежах, доступен любому, кто его знает. Без проверки подлинности магазин поверит и постороннему запросу — поэтому уведомление подписывается секретным ключом, а обработчик на стороне магазина обязан эту подпись сверить.

Что произойдёт без проверки

  • Любой, кто знает адрес обработчика и номер заказа, сможет отправить туда «успешную оплату».
  • Магазин пометит заказ оплаченным и отгрузит товар, денег при этом не будет.
  • В отчётах расхождение всплывёт только при сверке с реестром выплат — то есть с задержкой.

Как проверяется подпись

  • Секретный ключ известен только вам и сервису — в запросах к API он не передаётся.
  • Из тела уведомления и ключа считается контрольная сумма и передаётся в заголовке.
  • Обработчик считает её сам и сравнивает: не совпало — запрос отклоняется с ошибкой 401.

Что проверить в своём коде

  • Подпись сверяется до любых действий с заказом, а не после.
  • Сравнение делается функцией, устойчивой к атаке по времени, а не обычным равенством строк.
  • Неподошедший запрос отклоняется, а не игнорируется молча: иначе проблему никто не заметит.

Что делать при утечке секретного ключа — в отдельном ответе.

Посмотреть, как это работает в MulenPay

Остались вопросы?

Напишите нам — ответим и поможем подключить приём платежей.

Телеграм-бот

@Mulenpay_support_bot

Быстрые ответы 24/7

Юридический адрес

RBY Commerce Ltd.

8 Copthall, Roseau Valley, 00152, Commonwealth of Dominica

Оставить заявку

Заполните форму — менеджер свяжется с вами, подберёт условия и поможет с интеграцией.

Нажимая кнопку, вы соглашаетесь с обработкой персональных данных.

TelegramTelegram