Technical Design Architecture - Application
Transact utilizes a gateway-fronted Azure microservices architecture for taking payments during a customer journey.
Integrating telephony, customer web UI, and an agent web UI, using a Service Bus for event-driven workflows, persisting state using a cache, and routing submitted transactions via a PSP adapter to multiple payment providers. \
Phone Paymentβ
Channels / actors
- A Customer on a phone call connected through Aiphoria Tel.
- An Agent using an Agent UI (web app).
Edge / entry point
- Azure Application Gateway / Firewall is the front door for the web/UI and API traffic into the platform.
Core services (microservices)
- AI Services (Realtime transcription and voice processing).
- Auth for authentication/authorization.
- Correlation service for realtime call tracking.
- Card Capture service to handle secure capture of payment details during the call.
- PSP Adapter that abstracts PSP-specific differences and routes transactions.
Asynchronous / messaging
- Azure Service Bus used to decouple components (events/commands flowing between services).
- Push Notification Service to notify agent about status changes.
Data layer
- A Database for persistent state.
- A Cache for session and card details.
External integrations
- Multiple PSPs are connected through the PSP adapter layer, enabling multi-acquirer/processor support and failover/choice.

Phone Paymentβ
Channels / actors
- A Customer on a digital communication channel.
- An Agent using an Agent UI (web app).
Edge / entry point
- Azure Application Gateway / Firewall is the front door for the web/UI and API traffic into the platform.
Core services (microservices)
- Auth for authentication/authorization.
- communication Services for sending the customer their unique payment link
- Card Capture service to handle secure capture of payment details during the call.
- Remote Card Capture service to manage the the customers web session
- PSP Adapter that abstracts PSP-specific differences and routes transactions.
Asynchronous / messaging
- Azure Service Bus used to decouple components (events/commands flowing between services).
- Push Notification Service to notify agent about status changes.
Data layer
- A Database for persistent state.
- A Cache for session and card details.
External integrations
- Multiple PSPs are connected through the PSP adapter layer, enabling multi-acquirer/processor support and failover/choice.
