Principal
Sistema de pago con teléfono Es necesario implementar una arquitectura en la que el cliente pueda pagar sus compras en la caja/KS (caja de autoservicio) usando una aplicación móvil. El pago NO se realiza a través de SBP. Cuando el usuario compra productos, elige pagar con la aplicación. La caja o KS deben identificar al usuario y se inicia el proceso de pago con el banco del cliente. CJM: - El cajero/cliente escanea los productos. - Pasa a pagar. - Se identifica en la caja/KS. - Elige pagar en la aplicación Magnit. - Ingresa a la aplicación Magnit. - Selecciona el banco instalado en el teléfono desde donde se realiza el pago. - En la aplicación bancaria realiza el pago. - Regresa a la pantalla de resultados del pago en la aplicación Magnit. - En la caja/KS recibe un mensaje de pago exitoso. Requisitos no funcionales: - DAU = 1000 en la tienda - Número de tiendas 500 - Número de cajas - en promedio 5 cajas. - El pago debe completarse en un máximo de 2 minutos. - La página de pago debe abrirse en un máximo de 250 ms.
sobes.tech AI
Respuesta de la IA
Для реализации системы оплаты с помощью мобильного приложения, не используя СБП, можно предложить следующую архитектуру:
-
Идентификация пользователя на кассе/КСО:
- Касса/КСО генерирует уникальный QR-код с информацией о покупке и идентификатором транзакции.
- Пользователь сканирует QR-код в приложении Магнит.
-
Переход в приложение Магнит:
- Приложение Магнит получает данные о покупке и предлагает выбрать банк для оплаты.
-
Оплата через банк:
- Приложение Магнит инициирует переход в приложение банка с передачей параметров оплаты (сумма, идентификатор транзакции).
- Пользователь подтверждает оплату в приложении банка.
-
Подтверждение оплаты:
- Банк отправляет уведомление о статусе оплаты в backend Магнита.
- Backend Магнита обновляет статус транзакции.
- Касса/КСО получает уведомление о успешной оплате через push-сообщение или polling.
-
Отображение результата:
- Приложение Магнит показывает результат оплаты.
- Касса/КСО завершает процесс покупки.
Нефункциональные требования:
- Для обеспечения DAU 1000 на магазин и 500 магазинов с 5 кассами каждая, система должна быть масштабируемой и распределённой.
- Использовать кэширование и быстрые очереди сообщений для минимизации задержек.
- Оптимизировать генерацию и обработку QR-кодов.
- Страница оплаты должна загружаться не более 250 мс — использовать CDN, минимизировать запросы.
- Время оплаты до 2 минут — предусмотреть асинхронные уведомления и таймауты.
Такой подход обеспечивает безопасность, масштабируемость и удобство для пользователя.