# 1. QR Code Create

# HTTP request info

# URL

{domain}/open-api/qr/generate

# Method

POST

# Content-Type

application/json

# Request parameters

parameter name required type description
timestamp Yes long current timestamp
channelCode Yes string channel code, refer to QR Channel List
mchOrderId Yes string merchant order ID, alphanumeric, max length 32
amount No integer amount, the unit is cent, required for dynamic QR
notifyUrl Yes string merchant payment notification URL
customerName No string customer name, max length 100
email No string customer email address
mobile No string customer mobile phone number
remark No string remark
expireSeconds No integer expiration time,unit is second,from 30 to 3600,default is 3600

# Response parameters

paramter name type description
mchOrderId string merchant order ID, alphanumeric, max length 32
transactionId string dynamic QR Code transaction ID
qrCodeContent string QR Code content
channelCode string channel code, refer to QR Channel List
notifyUrl string merchant payment notification URL
remark string remark
qrStatus string QR Code status (ACTIVE, INACTIVE, CANCELLED)
transactionStatus string transaction status (PENDING, COMPLETED, FAILED)
qrLink string customer payment guide URL
createTime string transaction create time
updateTime string transaction update time
expiresTime string expiration time

# Request example

# Param content

{
  "timestamp": 1676017834369,
  "channelCode": "THAI_DYNAMIC_QR",
  "mchOrderId": "PC880001",
  "amount": 1000,
  "notifyUrl": "https://example.com/",
  "customerName": "Raja",
  "email": "raja@example.com",
  "mobile": "60128888888",
  "remark": "example",
  "expireSeconds": 300
}

How to construct request body

# Request body

{
  "appId": "c9b002aef1d7496c9df078d937896605",
  "sign": "tVa+aoAXH0ls1IoPznzkFyF+4v+iTZaCSttPWmYl1kCHeh8mwao8cqAD7Y7wdymcr9yavKh4bKT18KeLu27g7Q5GqhEQ0cm1dkARe+i2xoH32la4HAzBfPj9liULDawGoPbo739+FLgZnV79CLaiukvqtnkgI/Km6J/KccRPl2CtS4PUjxCyRicOAcv91KZiVOxyhoP9bKhvwtCkCIlkpBHKWskBPCxxfctoORjgXWj7FhRPLYBuRDaczfmr2um9aNXhVoH1XFZf7Gu67n6RmeB0kc2dHFPI89JEI0PwGq+bvbCAEUtHK4SlLexCtbMoCgGWKTJbSMDTvVF126jz8g==",
  "param": "{\"timestamp\":1676017834369,\"channelCode\":\"THAI_DYNAMIC_QR\",\"mchOrderId\":\"PC880001\",\"amount\":1000,\"notifyUrl\":\"https://example.com/\",\"customerName\":\"Raja\",\"email\":\"raja@example.com\",\"mobile\":\"60128888888\",\"remark\":\"example\",\"expireSeconds\":300}"
}

# Response example

code collection

{
    "code": 10000,
    "message": "Success",
    "data": {
        "mchOrderId": "PC880001",
        "transactionId": "C1051669624201385891",
        "qrCodeContent": "iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAIAAAD/gAIDAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACV0lEQVR4nO2cwY7CMAwF6Wr//5fZW1WJbOKx3QDSzBHatHpyzIsTfDyfz4fE+Hn3C3wTigVQLIBiARQL8Pv60XEcXaOfP7XnmPEf3+FrzG+/482vGFkAxQIoFmCQs64k/P0811y/HX7Y9Rpdb37FyAIoFmAxDU+6ZsrysuEF86cX/UR8whpZAMUCKBYgmrOKDJc78TXQh1QojSyAYgE2TcO4WU8UG7ZhZAEUC6BYgGjO6soaQ+sQZ1i0iD+xiJEFUCzAYhp2bQEkNiyWXn8+ZuPmxYmRBVAsgGIBjs0riXjdMuES7sbIAigWIDoNi/t9xVrC3DrEB4y7Dc86VFEsQGkhHQ/7+GWVOZ77AY17fSMLoFgAxQJEj0nGawBzirWEBMuEGM+SRhZAsQCZfcPKWjc3KeaGe/7openROtyCYgEUC5Ap/sWtQ+UA4x3rlWKWNLIAigXIFP+GVKzD8kHBmdLlNv7DyAIoFkCxAIuqw3ytMMwvxUMGibXLnMaDmUYWQLEAC+sQN9mViuBy8OGAc+swHyeHkQVQLIBiAQY5q7HC/0ouzXUdhIwnaK1DFcUCbDr5124sriQmV+5UhJEFUCzApi5HxeVxcBbnin8upG9BsQCKBdjU5WiYLNpdS7HlwfJ2IwugWIDdXY5yD7q16h/HyAIoFkCxAB/XXuX1ltyV/kf6zSgWYHezsSE52zFv3Bx3G578uwXFAigWYFOXo1v7uHf9w8KqQyeKBdjU5Wg4YHA747HaaOhqla516ESxAIoF2N3l6KsxsgCKBVAsgGIBFAugWIA/BQySrn6cOmYAAAAASUVORK5CYII=",
        "channelCode": "THAI_DYNAMIC_QR",
        "notifyUrl": "https://example.com/",
        "remark": "example",
        "qrStatus": "ACTIVE",
        "transactionStatus": "PENDING",
        "qrLink": null,
        "createTime": "2022-11-28 16:30:01",
        "updateTime": null,
        "expiresTime": "2023-12-31 23:00:00"
    }
}