QRIS
QRIS 是印尼国家网关,支持用户使用印尼主流银行 App 扫码完成支付。
产品特性
QRIS 的产品特性如下表所示:
支付特性 | 产品特性 | ||
支付方式类别 | 银行转账 | ||
收单机构 | AlipaySG, AlipayUS | 退款 | ❌ |
商户实体位置 | SG, AU, HK, US | 部分退款 | ❌ |
买家所在国家/地区 | 印度尼西亚 | 退款周期 | ❌ |
支付币种 | IDR | 退款结果返回时效 | ❌ |
支付流程 | 扫码 | 支付结果返回时效 | 实时 |
最小支付金额 | 300 IDR | 拒付/争议 | ❌ |
最大支付金额 | 20,000,000 IDR | 默认关单时间 | 5 分钟 |
用户体验
注意:以下不同终端的支付流程代表该支付方式在不同终端类型上的流程,仅供参考。关于支持的商户终端类型,请咨询 Antom 技术支持。
下图展示了 App 终端的用户体验。
- 用户选择 QRIS 进行支付。
- 展示支付加载页面。
- Antom 提供支付信息页面,用户可以截屏保存二维码。
- 用户使用支持 QRIS 的银行应用程序或数字钱包应用程序扫描二维码。
- 用户查看支付信息并确认支付。
- 用户跳转至商家结果页。
集成注意事项
以下部分概述了不同支付方式的集成考虑,详细介绍了定制化的集成解决方案和支付方式的特点。
关于 normalUrl
- 在使用 QRIS 支付时,您可以可以选择是否使用 normalUrl:
- 如果您不使用 normalUrl,则可以直接在商户页面上渲染接口响应中的 codeValue 来显示二维码或付款码,这样可以减少页面跳转,提升支付体验。
- 如果您选择使用 normalUrl,买家则会跳转到由 normalUrl 指定的地址,并按照用户体验部分指引的流程进行支付。
- 对于 Web、WAP 和 App 终端,normalUrl 会在 支付 接口的响应中返回。买家会跳转到由 normalUrl 指定的地址,并使用页面上显示的付款码在离线 ATM 设备上进行支付。支付完成后,页面会自动跳转到商户结果页面。
- 不同的终端类型在返回 normalUrl 时有特定的集成特性。
- WAP:返回的 normalUrl 会包含付款码和付款操作展示的页面。买家复制付款码,并根据页面上的付款操作指引或截图,在离线 ATM 上完成支付。
- App:返回的 normalUrl 不会触发支付方式 App。建议您在商户 App 内部直接渲染链接页面,并提供付款操作指引来指导买家完成支付。
支付后
- 此支付方式仅支持离线 ATM 转账,您需要为买家提供离线支付的指导。
- 此支付方式不支持退款,建议直接与买方线下交流。
- 您可以通过 支付通知 或 支付结果查询 获取支付结果,并及时处理支付结果页面的跳转和显示,避免重复支付。
默认关单时间
Antom 返回的二维码不会自动刷新。 当二维码展示时,您可以在接口响应中添加 expireTime 参数以显示超时时间。当付款码展示时,您可以启用付款码的复制功能,方便买家将付款码粘贴到支付方式 App 中。
响应示例
以下是支付响应中的示例代码:
copy
{
"normalUrl": "https://iexpfront-sea-global.alipay.com/payments/method/checkout/code.html?merchantId=188iwOYLsWM%2B3OM5i43oAN6sL7yTti1YlTOEpSbxNsmiew%3D&paymentRequestId=PqpmsKam%2BLbQyGH1KWYtA82v2t15tYwnk2OE0q4D8OE%3D&clientId=5Y607N2YJU8006726",
"orderCodeForm": {
"codeDetails": [
{
"codeValue": "https://iexpfront-sea.alipay.com/showQrImage.htm?code=lcjR2aefqftIKgIm30du1Ld7GM3W2xEb%252BW8RDmp7cNeNnRE2vIaa5pshMn2Pq4DBP3C8gm8VLPWRVLRQWjGuxUQput0bZdx%252ByXkEZoNCWBZaTG73kgHuPRzt%252FPY9iqMb9YmL6mYLUGvElNj4zblXizT77%252BvjP%252FZ8EMRBRQGTINfOUKwJp%252FtDeNFGhzRMavMrBnUSbqp25DHtaiMppf79zSYT2NtpyjykgiRhuTYy4ul%252BRKoeyWYHI27eey%252FvYlV%252BEeSjV97NW%252BR84tcnIETHYRRXBd4TsRZZSLvX52AGN4hxO5KdqrSBtwSPTFvcjEG5%252BVE4gft67ml2uT5Yi0HhAA%253D%253D&size=M&sid=188",
"displayType": "MIDDLEIMAGE"
}
],
"expireTime": "2024-03-14T19:53:24-07:00"
},
"paymentActionForm": "{\"paymentActionFormType\":\"PaymentCodeForm\",\"paymentCodeExpireTime\":1710471204000,\"paymentCodeInfos\":[{\"paymentCodeDetails\":[{\"codeValue\":\"00020101021226670016COM.NOBUBANK.WWW01189360050300000862130214020900006839930303UBE51440014ID.CO.QRIS.WWW0215ID20221517570460303UBE52045499530336054035005802ID59042C2P6013Jakarta Barat610511410624601140315041299373206091113322490703A010804POSP6304A241\",\"codeValueType\":\"QRCODE\",\"displayType\":\"IMAGE\"}],\"paymentCodeInfoType\":\"PAYMENT_CODE\"}]}",
"paymentAmount": {
"currency": "IDR",
"value": "50000"
},
"paymentCreateTime": "2024-03-14T19:48:21-07:00",
"paymentId": "20240315194010800100188420210868487",
"paymentRequestId": "PAY_20240315104811165",
"redirectActionForm": {
"method": "GET",
"redirectUrl": "https://iexpfront-sea-global.alipay.com/payments/method/checkout/code.html?merchantId=188iwOYLsWM%2B3OM5i43oAN6sL7yTti1YlTOEpSbxNsmiew%3D&paymentRequestId=PqpmsKam%2BLbQyGH1KWYtA82v2t15tYwnk2OE0q4D8OE%3D&clientId=5Y607N2YJU8006726"
},
"result": {
"resultCode": "PAYMENT_IN_PROCESS",
"resultMessage": "payment in process",
"resultStatus": "U"
}
}
常见问题
- 是否可以使用中文字符在值的请求参数?
为了确保与 QRIS 支付方式的兼容性,建议在 orderDescription 参数中避免使用中文字符。