@startuml Clearing-via-Marqeta
autonumber "<b> [00]"
Title Clearing via Marqeta
box "External Network"
participant "Scheme" as sch
participant "Marqeta" as mar
end box
box "Bankable - DMZ VLAN"
participant "Firewall\nWAN/DMZ"
participant "Loadbalancer/WAF" as lb
participant "Firewall\nDMZ/Private"
end box
box "Bankable - Private VLAN"
participant "Firewall\nPrivate/DMZ"
participant "HAProxy" as ws
participant "card-event-listener-service" as cels
participant "Database" as db
participant "clearing-service" as c
participant "Processor" as p
participant "HSM\n172.18.0.26" as hsm
participant "Storage" as s
participant "Firewall\nPrivate/VPN"
end box
group Scheme\Processor
sch->mar: Send clearing instructions
end group
group TLS
mar->ws: Send clearing instruction
end group
ws->cels: Send clearing instruction
cels->db: insert clearing instruction to the database
c<->db: retrive clearing instructions from database (polling)
c<->hsm: get token for PAN
c->db: insert clearing instructions to database
c<->db: process clearing instructions
c->p: initiate settlement
@enduml