Architecture

Switcloud is a hybrid architecture that provides an abstracted EMV L2 processing layer and centralized estate/configuration management for building modern in-store payment applications.

It enables payment application developers to write one unified L3 application and operate it across both COTS (Tap-to-Pay) devices and PCI-PTS terminals, regardless of the underlying EMV L2 stack.

High-Level Architecture

Switcloud is composed of:

  1. Cloud Services (Switcloud APIs) — managed by Switstack
  2. Client SDK and dependencies — integrated into the payment acceptance app on the terminal

These components enable the payment application to operate consistently across both COTS devices and PCI-PTS terminals with no changes to payment flow logic.

Cloud components (switcloud APIs)

  • switcloud-bom (Business Object Model / Estate API): Manages the merchant estate: Organizations, Merchants, Stores, Points of Interaction (POIs)
  • switcloud-config (EMV L2 Configuration API): Centralizes EMV kernel configuration: CAPKs, BINs, CRLs, EMVs
  • switcloud-payment (Payment API): Manages transaction lifecycle (Initiation, completion of payments)

Payment Terminal Components

  • switcloud-clt-kt (Client / SDK): Primary developer interface: configure(), startPayment(), completePayment() Manages configuration retrieval, L2 execution, and data upload
  • switcloud-api-ktConvenience wrapper for REST APIs (estate, config, payment)
  • switcloud-l2-kt GLA adapter: Interfaces with moka or any other GLA-compliant EMV L2 stack and enables kernel modularity with no L3 code changes

Note

The above mentioned packages are available for Kotlin (-kt extension) but also for Python, JavaScript/TypeScript and C++. Additionnal languages available on demand.

Device Flows

COTS Devices (Tap-to-Pay)

  • switcloud-clt-kt integrates with pre-certified moka L2 stack (installed on device)
  • MPoC Software + MPoC Service components support streamlined certification
  • Single unified payment flow via Switcloud APIs

Switcloud COTS

*Diagram: Switcloud COTS Device*

PCI-PTS Terminal

  • switcloud-clt-kt integrates with existing certified EMV L2 stack on the terminal
  • No new certification required; leverages terminal vendor's certification
  • Unified L3 application logic remains the same

Switcloud with EMV L2

*Diagram: Switcloud with EMV L2*

Customer Backend Integration

  • Payment Processing App in the customer backend initiates and tracks payments
  • Secure exchange of payment IDs and encrypted data between backend and Switcloud APIs
  • Full observability of transaction state and results

Switcloud Customer Backend

*Diagram: Switcloud Customer Backend*