Skip to main content

Create a payment QR code

POST 

/payment-qr-code

Request

Body

    oneOf

    type stringrequired

    Possible values: [PAYNOW]

    Type of the payment QR code

    proxyType string

    Possible values: [MOBILE, UEN, VPA]

    Type of the payment recipient's proxy (e.g. mobile phone number). This determines the value in proxyValue. E.g. if you specify UEN here, proxyValue should be a valid UEN.

    proxyValue string

    Payment recipient's proxy (e.g. mobile phone number). The value here is determined by proxyType. E.g. if you specify UEN in proxyType, this should be a valid UEN.

    For PayNow payment method, proxyValue should follow these formats:

    • MOBILE proxy type: A valid Singapore mobile number including the country code (+65): +65XXXXXXXX. E.g: +6592345678.
    • UEN proxy type: A valid Unique Entity Number (UEN) issued by ACRA. E.g: 202303536E.
    • VPA proxy type: A valid Virtual Payment Address (VPA) issued by a non-bank Financial Institution (e.g. digital wallets). The exact format is determined by the issuer. E.g: +6592345678#ACME.
    amount integerrequired

    Amount to collect, specified in the currency's minor units (e.g. in SGD, specify 1250 for $12.50).

    currency stringrequired

    Possible values: [SGD]

    Three-letter ISO 4217 currency code in full uppercase. Must be a supported currency.

    expirySeconds integer

    Default value: 900

    The QR code will be valid for this duration, after which payment QR code scanning applications will reject it.

    transactionReference stringrequired

    Possible values: <= 25 characters

    An identifier for this payment, typically unique. The same value will appear in the corresponding transaction notification and bank statement entry, allowing you to reconcile with this payment.

    amountEditable boolean

    If set to true, the amount can be edited by the payer when scanning the QR code.

Responses

OK

Response Headers

  • Acme-Mode

    string

    Has the value LIVE if the data exists in live production mode or the value TEST if the data exists in test sandbox mode.

Schema

    type stringrequired

    Possible values: [PAYNOW, DUITNOW]

    Type of the payment QR code

    proxyType string

    Possible values: [MOBILE, UEN, VPA]

    Type of the payment recipient's proxy (e.g. mobile phone number). This determines the value in proxyValue. E.g. if you specify UEN here, proxyValue should be a valid UEN.

    For DUITNOW type, this value will always be null.

    proxyValue string

    Payment recipient's proxy (e.g. mobile phone number). The value here is determined by proxyType. E.g. if you specify UEN in proxyType, this should be a valid UEN.

    For PayNow payment method, proxyValue should follow these formats:

    • MOBILE proxy type: A valid Singapore mobile number including the country code (+65): +65XXXXXXXX. E.g: +6592345678.
    • UEN proxy type: A valid Unique Entity Number (UEN) issued by ACRA. E.g: 202303536E.
    • VPA proxy type: A valid Virtual Payment Address (VPA) issued by a non-bank Financial Institution (e.g. digital wallets). The exact format is determined by the issuer. E.g: +6592345678#ACME.

    For DUITNOW type, this value will always be null.

    amount integerrequired

    Amount to collect, specified in the currency's minor units (e.g. in SGD, specify 1250 for $12.50).

    currency stringrequired

    Possible values: [SGD, MYR]

    Three-letter ISO 4217 currency code in full uppercase. Must be a supported currency.

    expirySeconds integerrequired

    Default value: 900

    The QR code will be valid for this duration, after which payment QR code scanning applications will reject it.

    transactionReference stringrequired

    Possible values: <= 25 characters

    An identifier for this payment, typically unique. The same value will appear in the corresponding transaction notification and bank statement entry, allowing you to reconcile with this payment.

    amountEditable booleanrequired

    If set to true, the amount can be edited by the payer when scanning the QR code.

    For DUITNOW type, this value will always be false.

    qrCodeImageUrl stringrequired

    The URL of the generated QR code image.

Loading...