The path from the store terminal to the approval or decline response. The card network routes the ISO 8583 message; the authorizer validates, queries fraud prevention and, depending on the score, reserves funds in the ledger or declines for suspicion of fraud. Only approved purchases trigger a notification.
actor
Terminal
POS or e-commerce
external
Card network
Payment network
service
Authorizer
ECS Fargate
service
Fraud prevention
SageMaker
database
Ledger
Aurora PostgreSQL
queue
Notifications
SQS queue
alt · sufficient funds
insufficient funds
alt · score < 0.85
score ≥ 0.85
opt · purchase approved
1
purchase
0100
2
validates card
3
requests score
score (0 to 1)
4
reserve funds
hold confirmed
5
0110 code 00
insufficient funds
6
0110 code 51
7
0110 code 59
8
response
9
compra.aprovada
Steps
1
The terminal sends the purchase; the card network routes ISO 8583 message 0100 to the authorizer
2
The authorizer validates card status, expiry and cryptogram without calling another service
3
The authorizer calls fraud prevention and waits for the score; timeout is 120 ms, with a fallback score of 0.5 if there is no response
4
The authorizer requests a funds hold; the ledger checks the balance and writes the hold and outbox row in the same transaction
5
With sufficient funds, response 0110 with code 00 (approved)
6
With insufficient funds, response 0110 with code 51 (insufficient funds); nothing is held
7
Score of 0.85 or higher: response 0110 with code 59 (suspected fraud), without querying the ledger
8
The card network responds to the terminal in every case
9
Only for approved purchases, the authorizer publishes an event to the notification queue without waiting for a response; the customer receives a push notification
Notation
synchronous call
asynchronous message
response
activation bar: the participant is processing
Capture and settlement (the acquirer's file the next day), reversals and installment purchases are out of scope