Интеграции CMS, CRM и ERP Опубликовано 29 июня 2026 г. 8 мин чтения

Оплата в Ecwid в Армении: payment app, статусы заказов и возврат клиента

Ecwid payment flow требует аккуратной связки encrypted request, provider checkout, статуса заказа и server-side проверки оплаты.

Оплата в Ecwid в Армении: payment app, статусы заказов и возврат клиента

Ключевые темы

Оплата в Ecwid в Армении: payment app, статусы заказов и возврат клиентаИнтеграции CMS, CRM и ERPинтеграция оплаты с CRMоплата по ссылке из CRMWooCommerce payment gateway ArmeniaOpenCart vPOS ArmeniaERP платежи

Связанные публичные страницы

Если нужен не только разбор, а страница продукта, API или операционного сценария, начните с этих разделов VPOS.am.

Ecwid payment app начинается с правильного paymentUrl

PaymentUrl должен принимать запрос магазина, создавать payment session и безопасно отправлять клиента в checkout.

Ecwid checkout -> paymentUrl
Encrypted order request is decoded, validated and converted into one controlled payment session.

В Ecwid пользователь выбирает платежный метод, а storefront отправляет платежный запрос на paymentUrl приложения. Этот endpoint не должен просто пересылать браузер дальше. Он должен разобрать запрос, проверить обязательные поля и создать контролируемую payment session.

Минимально нужно сохранить store id, order id, reference transaction id, сумму, валюту, returnUrl и внутренний payment id. Тогда повторный submit, закрытая вкладка или задержанный callback не превращаются в потерянный заказ.

  • принимать encrypted payment request только на backend;
  • создавать одну payment session на один reference transaction;
  • сохранять оригинальный Ecwid order id в metadata;
  • не помечать заказ paid до подтвержденного платежа.

Почему важны idempotency и provider-safe order id

Ecwid order id и provider order id могут иметь разные ограничения, поэтому платежный слой должен хранить стабильную связь.

Ecwid order id -> provider reference
Backend maps storefront order, compact provider reference and internal payment id without losing traceability.

Платежный провайдер может ограничивать длину или формат номера заказа. Поэтому безопаснее создать compact provider reference, а исходный Ecwid order id сохранить во внутренней metadata и журнале событий.

Idempotency нужна, чтобы повторный запрос от Ecwid не создал вторую независимую оплату. Backend должен вернуть уже созданную payment session или аккуратно создать новую payment attempt, если это разрешено правилами магазина.

  • связывать Ecwid order id, provider reference и payment id;
  • использовать idempotency key для повторного submit;
  • не хранить raw tokens в логах;
  • логировать request id и ошибку валидации без секретов.

Как возвращать клиента и обновлять статус заказа

ReturnUrl полезен для UX, но paid-статус должен появляться только после server-side подтверждения.

Provider callback -> Ecwid status
Verified payment updates internal session, syncs Ecwid order and only then returns customer to storefront.

После оплаты провайдер возвращает клиента, но браузерный return не гарантирует финальный статус. Надежный flow сначала проверяет provider callback или status check, обновляет внутреннюю payment session, синхронизирует Ecwid order status и только потом возвращает клиента в storefront.

Если Ecwid status sync временно не прошел, платеж нельзя терять. Нужно сохранить verified paid, поставить повторную синхронизацию и показать оператору исключение после нескольких неуспешных попыток.

  • обновлять Ecwid order status только после verified paid;
  • различать paid, pending, failed, cancelled и refunded;
  • повторять временные ошибки Ecwid API;
  • включать Ecwid-заказы в ежедневную сверку.

FAQ

Можно ли обновлять Ecwid-заказ сразу после returnUrl?

Лучше нет. ReturnUrl нужен для возврата клиента в магазин, но paid-статус должен ставиться после server-side проверки платежа или доверенного provider callback.

Что делать, если Ecwid отправил платежный запрос повторно?

Использовать idempotency key по store id и reference transaction id. Повторный submit должен вернуть существующую payment session или контролируемо создать новую попытку.

Можно ли хранить Ecwid token в открытом виде?

Нет. Токены и секреты нельзя писать в логи или metadata в открытом виде. Если токен нужен для sync, его нужно хранить зашифрованно и ограничить доступ.