vietqr-core-sdk

VietQR Core SDK System Architecture (PaaS & SaaS)

1. Overview

VietQR Core SDK is an enterprise-grade payment infrastructure adhering strictly to Vietnamese National Standards (NAPAS 247) and the international EMVCo QR specification. Key architectural pillars include:


2. PaaS & SaaS Architecture Diagram

+-------------------------------------------------------------------------------+
|                                  CLIENTS                                      |
|  +--------------------+  +--------------------+  +-------------------------+  |
|  | Web Browser / Ecom |  | iOS / Android Apps |  | ERP / POS / Backend API |  |
|  +---------+----------+  +---------+----------+  +------------+------------+  |
+------------|-----------------------|--------------------------|---------------+
             |                       |                          |
             v                       v                          v
+-------------------------------------------------------------------------------+
|                    REVERSE PROXY & SSL (NGINX / CADDY / CLOUDFLARE)           |
|                https://qr.yourdomain.com (Let's Encrypt TLS)                  |
+------------------------------------+------------------------------------------+
                                     |
                                     v
+-------------------------------------------------------------------------------+
|                       VIETQR GATEWAY ENGINE (RUST SERVICE)                    |
|                                                                               |
|  +------------------------+  +----------------------+  +-------------------+  |
|  |  QuickLink Image API   |  |   Web Deeplink Hub   |  |     REST API      |  |
|  |  /image/{slug}.png     |  |   /qr/pay (Mobile)   |  |  /api/v1/generate |  |
|  +-----------+------------+  +----------+-----------+  +---------+---------+  |
|              |                          |                        |            |
|              v                          v                        v            |
|  +-------------------------------------------------------------------------+  |
|  |                           CORE MODULES                                  |  |
|  |  - EMVCo TLV Generator & Parser (CRC16-CCITT False: 0x1021)             |  |
|  |  - High Performance Canvas Renderer (compact, compact2, standee, sepay) |  |
|  |  - Bank Catalog & Local Assets Registry (62+ Vietnamese Banks)          |  |
|  |  - Deeplink Registry (35+ Banking Apps via Direct URL Schemes)         |  |
|  +-------------------------------------------------------------------------+  |
|                                     |                                         |
|                                     v                                         |
|  +-------------------------------------------------------------------------+  |
|  |                       LOCAL ASSETS & STORAGE                            |  |
|  |  assets/banks/*.png | assets/brand/*.png | assets/fonts/Roboto-Bold.ttf |  |
|  +-------------------------------------------------------------------------+  |
+-------------------------------------------------------------------------------+
                                     ^
                                     | Direct SDK embedding or Gateway REST
+------------------------------------+------------------------------------------+
|                         MULTILINGUAL SDK SUITE                                |
|  +--------+  +----------+  +------+  +------+  +---------+  +-----+  +------+ |
|  | C (C99)|  | C++(C++17|  | Rust |  |  Go  |  | Node/TS |  | PHP |  | Java | |
|  +--------+  +----------+  +------+  +------+  +---------+  +-----+  +------+ |
|  +--------+  +----------+                                                     |
|  | Python |  |  .NET C# |                                                     |
|  +--------+  +----------+                                                     |
+-------------------------------------------------------------------------------+

3. EMVCo & NAPAS 247 Specification

The generated QR code strictly adheres to the EMVCo Merchant-Presented QR standard: