terminal_flow.plantuml (1334B)
1 @startuml 2 3 start 4 5 if (Select exchange and load configuration) then (successful) 6 :Switch to amount screen; 7 if (Enter amount and click "withdraw") then (successful) 8 :Setup withdrawal at exchange's terminals API and retrieve wopid; 9 if (Setup successful) then (yes) 10 :Navigate to register parameters screen; 11 if (Scan QR code with wallet app) then (successful) 12 :Start long polling for 'selected' state; 13 if ('selected' state reached) then (yes) 14 :Authorize payment using credit card; 15 if (Authorization response received) then (successful) 16 :Send check notification to terminals API; 17 if (Notification successful) then (successful) 18 :Show transaction summary and leave withdrawal activity; 19 else (unsuccessful) 20 :Abort and terminate withdrawal; 21 endif 22 else (unsuccessful) 23 :Abort and terminate withdrawal; 24 endif 25 else (unsuccessful) 26 :Abort and terminate withdrawal; 27 endif 28 else (unsuccessful) 29 :Abort and terminate withdrawal; 30 endif 31 else (unsuccessful) 32 :Abort and terminate withdrawal; 33 endif 34 else (unsuccessful) 35 :Abort and terminate withdrawal; 36 endif 37 else (unsuccessful) 38 :Terminate withdrawal; 39 endif 40 41 stop 42 43 @enduml