跳转到主要内容
本指南将带你使用 Direct API 集成方式,完成一次 card-not-present(线上)支付的完整流程。你将创建 Payment Intent、按需处理身份验证,并接收支付结果。

步骤1:创建 Payment Intent

根据拿到支付方式的时机不同,有两种做法:
在创建请求中携带 payment_method,支付会立即执行。
API 参考: Create Payment Intent

步骤2:处理响应

根据响应中的 intent_status 字段决定下一步动作:

成功响应示例

步骤3:处理客户动作

intent_statusREQUIRES_CUSTOMER_ACTION 时,next_action 字段会告诉你客户需要做什么。

3DS 重定向

如果卡需要 3D Secure 身份验证,next_action 会携带一个重定向 URL:
将客户重定向到该 URL。客户完成 3DS 后,会被重定向到你配置的 return_url。详细的 3DS 集成说明见:

展示二维码

对于电子钱包支付(AlipayCN、WeChatPay 等),next_action 可能会携带一个二维码:
将二维码展示给客户,等待客户在钱包 App 中扫码并确认付款。

步骤4:获取支付结果

使用下列一种或两种方式来确认最终支付状态: 配置你的服务端接收来自 UQPAY 的异步通知。这是最可靠的方式。 关键 webhook 事件:

Retrieve 接口(轮询)

直接查询支付状态:
API 参考: Retrieve Payment Intent

电子钱包支付

同一套 API 也支持电子钱包支付方式。把 payment_method 对象替换成对应的钱包类型即可:
响应中会包含 next_action.display_qr_code 供客户扫码。
付款码交易在付款码有效时即刻完成。
支持的支付方式全量清单及参数说明,见支付方式