Sobes.tech
Principal

Zahlungssystem per Telefon Es ist notwendig, eine Architektur zu implementieren, bei der der Kunde Einkäufe an der Kasse/KS (Selbstbedienungskasse) mit einer mobilen Anwendung bezahlen kann. Die Zahlung erfolgt NICHT über SBP. Der Benutzer wählt beim Kauf der Produkte die Bezahlung über die Anwendung. Die Kasse oder KS muss den Benutzer identifizieren und den Zahlungsprozess mit der Bank des Kunden starten. SCM: - Der Kassierer/der Kunde scannt die Produkte. - Geht zur Bezahlung über. - Identifiziert sich an der Kasse/KS. - Wählt die Bezahlung in der Magnit-App. - Wechselt zur Magnit-App. - Wählt die auf dem Telefon installierte Bank, von der die Zahlung erfolgt. - Tätigt die Zahlung in der Bank-App. - Kehrt zum Zahlungsresultatbildschirm in der Magnit-App zurück. - Die Kasse/KS erhält eine Nachricht über erfolgreiche Zahlung. Nicht-funktionale Anforderungen: - DAU = 1000 im Geschäft - Anzahl der Geschäfte 500 - Anzahl der Kassen - durchschnittlich 5 Kassen. - Die Zahlung muss innerhalb von maximal 2 Minuten erfolgen. - Die Zahlungsseite sollte in maximal 250 ms geöffnet werden.

sobes.tech KI

Antwort von AI

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

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

    • Пользователь сканирует товары.
    • При переходе к оплате выбирает оплату через приложение Магнит.
    • Касса/КСО предлагает пользователю авторизоваться, например, через QR-код, NFC или ввод кода, который связывает кассу и мобильное приложение.
  2. Запуск процесса оплаты

    • После идентификации касса передает в приложение Магнит информацию о сумме и деталях покупки.
    • Приложение Магнит открывается на телефоне пользователя (через deep link или push-уведомление).
    • Пользователь выбирает банк из списка установленных банковских приложений.
  3. Оплата через банк

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

    • Банк отправляет подтверждение об успешной оплате обратно в приложение Магнит.
    • Приложение Магнит уведомляет кассу/КСО о результате оплаты через серверную часть.
    • Касса/КСО отображает сообщение об успешной оплате.

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

  • DAU = 1000 в магазине, 500 магазинов, 5 касс в среднем:
    • Серверная инфраструктура должна быть масштабируемой, использовать балансировщики нагрузки и кэширование.
  • Оплата за максимум 2 минуты:
    • Минимизировать задержки на каждом этапе, использовать быстрые протоколы обмена.
  • Страница оплаты открывается максимум за 250 мс:
    • Использовать deep linking, предварительную загрузку данных в приложении Магнит.

Пример взаимодействия:

  • Пользователь на кассе сканирует товары.
  • Касса генерирует QR-код с информацией о покупке и сессии.
  • Пользователь сканирует QR-код в приложении Магнит.
  • Приложение Магнит показывает сумму и предлагает выбрать банк.
  • После выбора банка происходит переход в банковское приложение для оплаты.
  • После успешной оплаты возвращается подтверждение, касса получает сигнал и завершает транзакцию.