Overview
The KYC (Know Your Customer) microservice for MEXAR international remittance system. Manages identity verification and regulatory compliance workflows, communicating with the core backend via Webhook and Kafka.
During development, the KYC provider was changed multiple times due to regulatory constraints (e.g., Onfido to RegTank, and local Indonesian partners). The abstract provider interface design ensured these transitions could be completed rapidly.
Tech Stack
- Backend â Python/FastAPI
- Database â PostgreSQL
- Message Queue â Kafka, RabbitMQ
- Inter-service Communication â Webhook, Kafka
Key Capabilities
- Double Verification â Automated 3rd party provider screening followed by mandatory manual review by a KYC officer before final approval
- Multi-provider Integration â Abstract provider interface supporting Onfido, RegTank, and Glair.AI; rapid vendor switching as regulatory requirements change
Design Principles
- Extensibility â Provider-agnostic abstraction enabling rapid KYC vendor switching as regulatory requirements change
- Data Security â Secure handling of sensitive personal identity data meeting Bank Indonesia standards
- Idempotency â Consistent verification state management across asynchronous provider callbacks
