1.6. Server-to-Server Account Verification by SBP

Introduction

Account verification is a non-financial transaction, which allows to validate and register Payer’s account information. This verification procedure helps to prevent potential fraudulent activity and meet industry-specific compliance obligations, as well as to simplify future payments with this account. Server-to-Server integration allows Connecting Party to offer a Payer the option to validate the account information and register via SBP QR Code, directly received and displayed to Payer by Connecting Party.

SBP Account Verification Flow

skinparam roundcorner 20
skinparam sequenceArrowThickness 1
skinparam maxmessagesize 1200
skinparam sequenceParticipant underline
actor Payer
participant "Connecting Party" as A
participant SBC as B
autonumber
Payer -> A: Checkout
activate A
A -> B: /api/v2/account-verification/
activate B
B --> A: Order ID
A -> B: Get Status by Order ID
B --> A: Return qr-code
A --> Payer: Send qr-code to Payer
Payer -> A: Scan qr-code
B -> B: Process\nAccount Verification
group Get Final Status
== Receive Connecting Party Callback ==
A <- B: Callback with Final Status
A --> B: HTTP 200
deactivate B
== Order Status Request ==
A -> B: Get Status by Order ID
activate B
B --> A: Final Status
deactivate B
end
A --> Payer: Show result
deactivate Payer
deactivate A

(2) To implement sale request see /api/v2/account-verification/.
(4,11) To implement order status request see /api/v2/status/. Status should be requested multiple times with 3-5 seconds interval until QR code or final status is received.
(6) Connecting party sends received QR code to Payer.
(7) Payer scans the QR code to pay.
(9) To implement callback with final status handling see Connecting Party Callback.