Визначте правила переходу статусів

Опишіть, коли замовлення стає очікуваним, оплаченим, скасованим чи поверненим. Не прирівнюйте будь-яку відповідь провайдера до успіху. Ідентифікатор замовлення, сума та валюта мають збігатися з даними магазину; підпис перевіряється на сервері. Секрет платіжного модуля не повинен потрапляти в JavaScript або журнал запитів.

Далі за темою: Повторні API-запити в Laravel: як не створювати дублікати.

Відтворіть повторне повідомлення

Провайдер може надіслати callback повторно, якщо не отримав підтвердження. У тестовому середовищі повторіть одну й ту саму подію: оплата, складські операції та повідомлення менеджеру не мають дублюватися. Окремо перевірте повідомлення із затримкою, коли покупець уже закрив браузер, і повідомлення з неправильним підписом.

Далі за темою: Не працює оформлення замовлення в OpenCart: порядок діагностики.

Звірте кінцевий результат

Після тесту порівняйте історію платежу, історію замовлення та запис у CRM. Для відмови й повернення перевірте погоджені правила резерву товару. Журнал повинен дозволяти знайти операцію за її ID, але не містити зайвих платіжних чи персональних даних. Остаточний тест виконуйте способом, погодженим із власником магазину.

Чи можна перевіряти справжньою оплатою?

Лише за погодженим сценарієм із визначеною сумою й правилами повернення. Для більшості перевірок спочатку достатньо sandbox платіжного провайдера.

Документація та джерела