Draw a sequence diagram to demonstrate how Mobile Money with USSD STK Push works
A C2B transaction between A Buyer to a Business
- Buyer (A User using Online Payments)
- eCommerce Platform
- PSP (Payment Service Provider)
- MNO (Mobile Network Operator)
-
A Buyer initiates the payment process (eg clicking Pay on Checkout page)
-
eCommercePlatform calls API to PSP
-
PSP call API to MNO
-
MNO requests User in enter pin using USSD STK Push,
4.1 User can enter valid PIN 4.2 User can enter wrong PIN 4.3 USSD Prompt can timeout as user delay/fail to enter
-
MNO sends webhook to PSP with latest status of transaction
-
PSP sends webhook to eCommerce Platform
-
eCommerce Platform shows Transaction status message
sequenceDiagram
actor Buyer as Buyer (A User using Online Payments)
participant eCommercePlatform as eCommerce Platform
participant PSP as Payment Service Provider
participant MNO as Mobile Network Operator
Buyer->>eCommercePlatform: Clicks Pay on Checkout page
eCommercePlatform->>PSP: Calls API for payment
PSP->>MNO: Calls API for payment
MNO->>MNO: Requests user to enter PIN using USSD STK Push
MNO-->>Buyer: USSD prompt to enter PIN
alt Valid PIN entered
Buyer->>MNO: Enters valid PIN
MNO->>MNO: Processes PIN
MNO->>PSP: Sends webhook with transaction status
else Wrong PIN entered
Buyer->>MNO: Enters wrong PIN
MNO->>MNO: Processes wrong PIN
MNO->>PSP: Sends webhook with transaction status (failed)
else USSD Timeout
MNO->>MNO: USSD prompt timeout
MNO->>PSP: Sends webhook with transaction status (timeout)
end
PSP->>eCommercePlatform: Sends webhook with transaction status
eCommercePlatform-->>Buyer: Shows Transaction status message