Principal
Telefon orqali to'lov tizimi Mijozning mobil ilova yordamida kassada/KSda (o'z-o'ziga xizmat ko'rsatish kassasi) xaridlarni to'lash imkoniyatini ta'minlaydigan arxitekturani amalga oshirish zarur. To'lov SBP orqali amalga oshirilmaydi. Foydalanuvchi mahsulotlarni xarid qilayotganda, ilova yordamida to'lashni tanlaydi. Kassa yoki KS foydalanuvchini aniqlashi va mijozning banki yordamida to'lov jarayonini boshlashi kerak. CJM: - Kassir/mijoz mahsulotlarni skaner qiladi. - To'lashga o'tadi. - Kassa/KSda identifikatsiya qilinadi. - Magnit ilovasida to'lashni tanlaydi. - Magnit ilovasiga o'tadi. - Telefonga o'rnatilgan bankni tanlaydi, to'lov shu bank yordamida amalga oshiriladi. - Bank ilovasida to'lovni amalga oshiradi. - Magnit ilovasida to'lov natijasi ekraniga qaytadi. - Kassa/KS muvaffaqiyatli to'lov haqida xabar oladi. Nofaol talablar: - DAU = 1000 do'konda - Do'konlar soni 500 - Kassa soni - o'rtacha 5 ta kassalar. - To'lov maksimal 2 daqiqada amalga oshirilishi kerak. - To'lov sahifasi maksimal 250 ms ichida ochilishi kerak.
sobes.tech AI
AIdan javob
Для реализации системы оплаты с помощью мобильного приложения, не используя СБП, можно предложить следующую архитектуру:
-
Идентификация пользователя на кассе/КСО:
- Касса/КСО генерирует уникальный QR-код с информацией о покупке и идентификатором транзакции.
- Пользователь сканирует QR-код в приложении Магнит.
-
Переход в приложение Магнит:
- Приложение Магнит получает данные о покупке и предлагает выбрать банк для оплаты.
-
Оплата через банк:
- Приложение Магнит инициирует переход в приложение банка с передачей параметров оплаты (сумма, идентификатор транзакции).
- Пользователь подтверждает оплату в приложении банка.
-
Подтверждение оплаты:
- Банк отправляет уведомление о статусе оплаты в backend Магнита.
- Backend Магнита обновляет статус транзакции.
- Касса/КСО получает уведомление о успешной оплате через push-сообщение или polling.
-
Отображение результата:
- Приложение Магнит показывает результат оплаты.
- Касса/КСО завершает процесс покупки.
Нефункциональные требования:
- Для обеспечения DAU 1000 на магазин и 500 магазинов с 5 кассами каждая, система должна быть масштабируемой и распределённой.
- Использовать кэширование и быстрые очереди сообщений для минимизации задержек.
- Оптимизировать генерацию и обработку QR-кодов.
- Страница оплаты должна загружаться не более 250 мс — использовать CDN, минимизировать запросы.
- Время оплаты до 2 минут — предусмотреть асинхронные уведомления и таймауты.
Такой подход обеспечивает безопасность, масштабируемость и удобство для пользователя.