Sobes.tech
Principal

Телефон аркылуу төлөм системасы Клиент мобилдик тиркемени колдонуу аркылуу кассада/KSда (өзүн-өзү тейлөө кассасы) сатып алууларды төлөй алат архитектураны ишке ашыруу керек. Төлөм СБП аркылуу эмес. Колдонуучу товарларды сатып алганда, төлөөнү колдонмо аркылуу тандайт. Касса же KS колдонуучуну аныктап, кардардын банкы аркылуу төлөө процесси башталат. CJM: - Касир/кардар товарларды сканерлейт. - Төлөөгө өтөт. - Кассада/KSда идентификацияланат. - Magnit колдонмосунда төлөөнү тандайт. - Magnit колдонмосуна өтөт. - Телефонго орнотулган банкты тандайт, ал аркылуу төлөм жүргүзүлөт. - Банктын колдонмосунда төлөмдү жүргүзөт. - Төлөөнүн натыйжасы экранга кайтарат. - Кассада/KSда ийгиликтүү төлөө тууралуу билдирүү алат. Функционалдык эмес талаптар: - DAU = 1000 дүкөндө - Дүкөндөрдүн саны 500 - Касса саны - орто эсеп менен 5 касса. - Төлөм максималдуу 2 мүнөттө аяктайт. - Төлөм баракчасы максималдуу 250 мс ичинде ачылышы керек.

sobes.tech AI

AIден жооп

Для реализации системы оплаты с помощью мобильного приложения, не используя СБП, можно предложить следующую архитектуру:

  1. Идентификация пользователя на кассе/КСО:

    • Касса/КСО генерирует уникальный QR-код с информацией о покупке и идентификатором транзакции.
    • Пользователь сканирует QR-код в приложении Магнит.
  2. Переход в приложение Магнит:

    • Приложение Магнит получает данные о покупке и предлагает выбрать банк для оплаты.
  3. Оплата через банк:

    • Приложение Магнит инициирует переход в приложение банка с передачей параметров оплаты (сумма, идентификатор транзакции).
    • Пользователь подтверждает оплату в приложении банка.
  4. Подтверждение оплаты:

    • Банк отправляет уведомление о статусе оплаты в backend Магнита.
    • Backend Магнита обновляет статус транзакции.
    • Касса/КСО получает уведомление о успешной оплате через push-сообщение или polling.
  5. Отображение результата:

    • Приложение Магнит показывает результат оплаты.
    • Касса/КСО завершает процесс покупки.

Нефункциональные требования:

  • Для обеспечения DAU 1000 на магазин и 500 магазинов с 5 кассами каждая, система должна быть масштабируемой и распределённой.
  • Использовать кэширование и быстрые очереди сообщений для минимизации задержек.
  • Оптимизировать генерацию и обработку QR-кодов.
  • Страница оплаты должна загружаться не более 250 мс — использовать CDN, минимизировать запросы.
  • Время оплаты до 2 минут — предусмотреть асинхронные уведомления и таймауты.

Такой подход обеспечивает безопасность, масштабируемость и удобство для пользователя.