Skip to main content

AI-Native Features

The ItPay PaaS Layer embeds three AI-native innovations that differentiate it from traditional payment gateways. These features leverage LLM capabilities — vision, natural language understanding, and intelligent routing — to reduce friction and enable new payment workflows.


1. QR Scanner AI

The QR Scanner AI enables users to pay by simply sending an image of a QR code to an AI agent. The system identifies the payment channel, extracts the amount and merchant details, and auto-routes the payment.

Flow Diagram

┌─────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ User sends │ │ LLM Vision │ │ Channel │
│ QR image │────▶│ identifies: │────▶│ Detection │
│ │ │ • QR standard │ │ Engine │
│ │ │ • Channel │ │ │
│ │ │ • Amount (opt) │ │ Match QR format │
│ │ │ • Merchant ID │ │ to 13 channels │
└─────────────┘ └──────────────────┘ └────────┬─────────┘


┌─────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ User │ │ PaymentIntent │ │ QR Parsing & │
│ Confirms │◀────│ created with │◀────│ Verification │
│ & Pays │ │ channel set │ │ (CRC / sig) │
└──────┬──────┘ └──────────────────┘ └──────────────────┘


┌─────────────┐
│ QR Charge │
│ Generated │
│ & Presented│
└─────────────┘

Scan Result Example

{
"scan_id": "scan_9q3xr2m7kv1",
"status": "recognized",
"source": "image_upload",
"raw_format": "raw_base64_encoded_jpeg",
"detected_items": [
{
"channel": "alipay",
"confidence": 0.987,
"qr_type": "alipay_merchant_qr",
"qr_version": "v2",
"amount": 58.00,
"currency": "CNY",
"merchant": {
"id": "2088421234567890",
"name": "Coffee Express #12",
"category": "food_and_beverage"
},
"payment_url": "https://qr.alipay.com/zkd9xm3k0e"
}
],
"alternative_channels_possible": [],
"parsed_payload": {
"vendor": "Alipay",
"payload_format_indicator": "01",
"point_of_initiation_method": "12",
"merchant_account_info": "2088421234567890",
"merchant_category_code": "5812",
"transaction_currency": "156",
"transaction_amount": "58.00",
"country_code": "CN",
"crc": "A32B"
},
"recommended_action": {
"type": "create_payment_intent",
"channel": "alipay",
"amount": 58.00,
"currency": "CNY",
"merchant_id": "2088421234567890"
}
}

Supported QR Formats

QR FormatDetection AccuracyProcessing Time
WeChat Pay QR99.2%< 800ms
Alipay QR (Merchant)99.1%< 800ms
Alipay QR (Personal)98.7%< 900ms
FPS HKQR99.4%< 700ms
PromptPay QR99.0%< 800ms
SGQR98.5%< 900ms
DuitNow QR98.8%< 850ms
QRIS98.6%< 900ms
VietQR98.3%< 950ms
GCash QR97.9%< 1s
InstaPay QR97.8%< 1s
Crypto Wallet QR99.5%< 500ms

2. NLP Payment

Natural Language Processing (NLP) payment enables users to instruct payments in plain language. The system parses the intent, extracts structured payment parameters, and executes the appropriate API call.

Supported Intent Types

IntentDescriptionExample User Input
payOne-time payment to a service"Pay John's API service $5 for last month"
subscribeRecurring subscription setup"Subscribe to the premium tier for $15/month"
query_invoiceCheck invoice or payment status"What's my current balance on the translation service?"
refundIssue a refund"Refund the $30 overcharge from the image generation service"
voidCancel an unpaid or pending payment"Void the pending subscription for the email service"
scan_qrScan and pay via QR code image"Scan this QR code and pay the 200 baht"

Intent-to-API Mapping

IntentAPI EndpointRequired ParametersResponse
payPOST /v1/payment-intentsservice_id, amount, currencyPaymentIntent with status=requires_payment
subscribePOST /v1/service-manifests/{id}/subscribeservice_id, plan_id, intervalSubscription with status=active
query_invoiceGET /v1/invoices?service_id={id}service_id, optionally statusPaginated Invoice[] list
refundPOST /v1/payment-intents/{id}/refundpayment_intent_id, amountRefund with status=completed
voidPOST /v1/payment-intents/{id}/voidpayment_intent_idPaymentIntent with status=voided
scan_qrPOST /v1/ai/scan-qrbase64-encoded imageScanResult (see above)

NLP Processing Pipeline

User Input ──▶ Intent Classifier ──▶ Entity Extractor ──▶ Parameter Builder
"Pay Alice │ │ │
$10 for │ intent: "pay" │ amount: 10.00 │ {
the PDF │ confidence: 0.96 │ currency: USD │ service_id: "svc_..."
tool" │ │ recipient: "Alice" │ amount: 10.00,
└─────────────────────┘ item: "PDF tool" │ currency: "USD"
└─▶ POST /v1/payment-intents

Example Scenarios

Scenario 1: One-time payment

User: "Send $5 to the weather API for this month's usage"
→ Intent: pay
→ Entities: amount=$5, currency=USD, service="weather API", period="this month"
→ Action: Creates PaymentIntent for $5 USD routed to the weather API service

Scenario 2: Subscription

User: "Set up a weekly $2 subscription to the stock ticker service"
→ Intent: subscribe
→ Entities: amount=$2, currency=USD, interval=weekly, service="stock ticker service"
→ Action: Creates Subscription with weekly $2 billing cycle

Scenario 3: Multi-step

User: "Check my invoice and refund the last overcharge"
→ Step 1: query_invoice → finds last invoice with overcharge flag
→ Step 2: refund → issues refund for the flagged amount

3. Multi-Currency FX Routing

The FX Routing Engine intelligently selects the optimal payment channel and currency path when multiple channels are available for a given transaction.

Routing Decision Logic

┌──────────────────────────┐
│ Payment Request │
│ amount: 100 SGD │
│ payee: Alice (HK) │
│ payer: Bob (SG) │
└────────────┬─────────────┘


┌──────────────────────────┐
│ Channel Overlap Check │
│ │
│ Available Channels: │
│ • PayNow (SGD→SGD) │
│ • FPS (SGD→HKD via FX) │
│ • USDC (SGD→USDC→HKD) │
└────────────┬─────────────┘


┌──────────────────────────┐
│ Fee Comparison │
│ │
│ PayNow: 0.0% + FX 0% │
│ FPS: 0.25% + FX 0.8% │
│ USDC: 0.3% + spread 0.1% │
└────────────┬─────────────┘


┌──────────────────────────┐
│ Best Path: │
│ PayNow (SGD→SGD) │
│ Fee: 0% │
│ Route: payer → PayNow │
└────────────┬─────────────┘


┌──────────────────────────┐
│ QR Generated │
│ SGQR with PayNow proxy │
│ amount: 100 SGD │
└──────────────────────────┘

Route Selection Criteria

CriteriaWeightDescription
Channel OverlapRequiredBoth payer and payee must support at least one common channel
FeePrimary (0.5)Lowest total fee (channel fee + FX spread) wins
FX RateSecondary (0.3)Best mid-market rate when FX is required
Settlement SpeedTertiary (0.2)Real-time settlement preferred over T+1
User PreferenceOverrideExplicit channel preference set by payer or payee

Settlement Mode Table

ModePayer CurrencyPayee CurrencyTypical RouteFX RequiredSettlement Time
Local → LocalHKDHKDFPS (direct)NoReal-time
Local → LocalSGDSGDPayNow (direct)NoReal-time
Local → LocalTHBTHBPromptPay (direct)NoReal-time
Local → LocalMYRMYRDuitNow QRNoT+1
Local → LocalIDRIDRQRISNoT+1
Cross-BorderSGDHKDPayNow→ItPay FX→FPSYes (SGD→HKD)Real-time
Cross-BorderTHBHKDPromptPay→ItPay FX→FPSYes (THB→HKD)Real-time
Cross-BorderCNYHKDAlipay→服务商 FX→FPSYes (CNY→HKD)T+1
Cross-BorderCNYSGDAlipay→服务商 FX→PayNowYes (CNY→SGD)T+1
CryptoUSDCHKDUSDC→ItPay→FPSNo (stablecoin)Real-time
CryptoUSDTSGDUSDT→ItPay→PayNowNo (stablecoin)Real-time
CryptoUSDCUSDCOn-chain transferNoReal-time (on-chain)
CryptoUSDTHKDUSDT→ItPay FX→FPSYes (USDT→HKD)Real-time

FX Rate Sources

Currency PairPrimary SourceSecondary SourceSpread Target
HKD ↔ SGDHKAB daily fixingOANDA mid-rate0.3% – 0.8%
HKD ↔ THBBOT reference rateBloomberg0.5% – 1.0%
HKD ↔ CNYSAFE daily fixingChina Forex0.2% – 0.6%
HKD ↔ MYRBNM daily rateBloomberg0.5% – 1.2%
HKD ↔ IDRBI Jakarta FixBloomberg0.5% – 1.5%
HKD ↔ VNDSBV reference rateBloomberg0.5% – 1.5%
HKD ↔ PHPBSP reference rateBloomberg0.5% – 1.5%
USDC ↔ FiatCoinbase / Binance spotKaiko0.1% – 0.3%
USDT ↔ FiatBinance / OKX spotKaiko0.1% – 0.3%
USDC ↔ USDTDEX pool rateChainlink oracle0.05% – 0.1%

Summary

These three AI-native features — QR Scanner AI, NLP Payment, and Multi-Currency FX Routing — form the core innovation layer of the ItPay PaaS. Together they enable:

  • Zero-UI payment initiation: send a QR image or type natural language
  • Intelligent channel selection: best price automatically chosen
  • Cross-border friction reduction: seamless multi-currency settlement