verifyAndCompletePayment

POST /v1/payments/verifyAndCompletePayment

此接口用于一次性密码(OTP)验证并推进支付流程。

入参

verifyMethod Object  REQUIRED

用于传递支付验证类型的参数对象。

Show child parameters

paymentId String  REQUIRED

APO 为识别一次支付分配的专属 ID。

更多信息:

  • 最大长度:64 字符

verifyRequestId String  REQUIRED

由商户分配的用于标识支付验证请求的唯一 ID。APO 使用此字段进行幂等性控制。

更多信息:

  • 最大长度:64 字符

出参

result Result  REQUIRED

接口调用的结果。

Show child parameters

paymentRequestId String  

商户为标识支付请求所分配的专属 ID。

注意:当 resultCode PAYMENT_IN_PROCESS 时,此字段将返回。

更多信息:

  • 最大长度:64 字符

verifyRequestId String  

商户为验证支付请求所分配的专属 ID。

注意:当 resultCode PAYMENT_IN_PROCESS 时,此字段将返回。

更多信息:

  • 最大长度:64 字符

paymentId String  

APO 为识别一次支付分配的专属 ID。

注意:当 resultCode PAYMENT_IN_PROCESS 时,此字段将返回。

更多信息:

  • 最大长度:64 字符

paymentAmount Amount  

商户请求以订单币种收取的支付金额。

注意:当 resultCode PAYMENT_IN_PROCESS 时,此字段将返回。

Show child parameters

paymentCreateTime Datetime  

创建支付的日期和时间。

注意:当 resultCode PAYMENT_IN_PROCESS 时,此字段将返回。

更多信息:

  • 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。

acquirerInfo AcquirerInfo  

处理该支付的收单机构信息。

Show child parameters
API Explorer
示例代码沙箱运行

请求

URL
请求体

响应

响应体


结果/错误码

结果码结果码信息行动建议
SUCCESSS成功

支付成功,无需进一步操作。

ACCESS_DENIEDF访问被拒绝。

请联络 APO 技术支持获取详细原因。

AUTHENTICATION_REQUIREDF需要进行 3D Secure 验证。

重新初始化支付并引导买家进行 3D Secure 验证。 

CURRENCY_NOT_SUPPORT F币种不受支持。

请联系 APO 技术支持以获取详细原因。

DO_NOT_HONORF支付被发卡行拒绝。

请尝试使用其他银行卡支付,或联系发卡行。

EXPIRED_CODEF验证码窗口过期。

买家需要重新发起支付。

FRAUD_REJECTF由于风险控制,交易无法进一步处理。如果买家已为交易付款,交易将被退款。

当满足以下条件之一时,请联系 APO 技术支持:

  • 您想要提出申诉。 
  • 买家在两周内未收到退款。  
IDENTITY_AGE_NOT_ENOUGHF用户年龄未达到要求。

请确认您的身份信息并重试。

IDENTITY_VERIFY_FAILEDF身份验证超时或无法获取结果。

请确认您的身份信息并重试。

INVALID_ACCESS_TOKENF访问令牌已过期、被撤销或不存在。

检查 accessToken 是否正确。如果不正确,请传入正确值。如果正确,请联系 APO 技术支持获取详细原因。

INVALID_AMOUNTF发卡行因各种原因拒绝交易,例如指定金额无效或超过最大金额限制。

请联络 APO 技术支持获取详细原因。

INVALID_CPFF无效的 CPF。

请确认您的身份信息并重试。

INVALID_CONTRACTF合同中的参数值与当前交易不符。

检查合同中的参数值是否与当前交易匹配。如果匹配,请联系 APO 技术支持协助解决问题。

INVALID_IDENTITY_STATUSF身份状态异常。

请确认您的身份信息并重试。

INVALID_MERCHANT_STATUSF由于存在限制,商户状态异常。

请联络 APO 技术支持获取详细原因。

INVALID_PAYMENT_CODEFAPO 无法接受此支付代码。

选择其他支付方式。如果支付方式支持,请联系 APO 技术支持。

INVALID_PAYMENT_METHOD_META_DATAF支付方式元数据无效。

检查支付方式的元数据是否正确。如果正确,请联系 APO 技术支持。

KEY_NOT_FOUNDF找不到 APO 或商户的私钥或公钥。

检查私钥或公钥是否存在。如果不存在,请在 APO Dashboard 上传私钥。

MERCHANT_KYB_NOT_QUALIFIEDF由于商户的 KYB 状态,支付失败。商户要么未完成 KYB,要么 KYB 状态不适用于此交易。

请联络 APO 技术支持获取详细原因。

MERCHANT_NOT_REGISTEREDF商户未注册。

请使用注册接口注册商户。如果无法调用注册接口,请联系 APO 技术支持。

NO_INTERFACE_DEFF接口未定义。

检查链接是否正确。请参考接口文档中的端点。

NO_PAY_OPTIONSF没有可用的支付选项。

请联系 APO 技术支持获取详细原因。

ORDER_IS_CANCELEDF您发起的请求具有与之前已支付但被取消的交易相同的 paymentRequestId。

使用新的 paymentRequestId 重新发起支付。

ORDER_IS_CLOSEDF因支付失败或支付超时导致您请求中的 paymentRequestId 关联订单关闭。

使用新的 paymentRequestId 发起支付。

PARAM_ILLEGALF缺少必需的参数,或者存在非法参数。例如,非数字输入、无效的日期,或者参数的长度和类型错误。

检查并验证当前接口所需的请求字段(包括头部字段和正文字段)是否正确传递并有效。

PAYMENT_AMOUNT_EXCEED_LIMITF支付金额超过了合同或支付方式允许的最大金额。

检查支付金额是否超过限制,或使用较低金额再试一次。请联系 APO 技术支持了解具体限制。

PAYMENT_COUNT_EXCEED_LIMITF支付次数超过了支付方式规定的限制。

请联系 APO 技术支持了解具体限制。

CARD_NOT_SUPPORTEDF用于交易的银行卡不被支持。

使用另一张卡进行交易支付。

PAYMENT_NOT_QUALIFIEDF商户不具备支付资格,可能是因为未注册、未签订代扣协议或被禁止支付。

请联系 APO 技术支持以获取详细原因。

PROCESS_FAILF发生了常见的业务失败。

获取 APO 技术支持前请勿重试。

REPEAT_REQ_INCONSISTENTF金额或币种与先前请求不同。

确保请求中的所有字段相同,或使用新的 paymentRequestId 重新发起支付。

RISK_REJECTF由于风险控制,交易无法进一步处理。如果用户已为交易付款,交易将被退款。

如果买家在两周内未收到退款,请联系 APO 技术支持。 

SETTLE_CONTRACT_NOT_MATCHF找不到匹配的结算合同。

检查以下解决方案:

  1. 从商户签约的多种币种中指定一种结算币种。
  2. 检查结算币种是否在结算合同中指定。
  3. 商户未签署结算合同,请联系 APO 技术支持。
SYSTEM_ERRORF发生系统错误。

获取 APO 技术支持前请勿重试。

USER_AMOUNT_EXCEED_LIMITF支付金额超过了买家的支付限额。

使用不超过账户可用余额的金额创建新支付,或联系 APO 技术支持。

USER_BALANCE_NOT_ENOUGHF由于对应支付方式的用户余额不足,支付无法完成。

请充值账户或选择其他支付方式。

USER_KYC_NOT_QUALIFIEDF由于买家的 KYC 状态,支付失败。买家要么未完成 KYC,要么 KYC 状态不满足此交易要求(例如,支付金额或产品信息的限制)。

首先完成 KYC 验证。

USER_NOT_EXISTF买家在支付方式端不存在。

请联系 APO 技术支持获取详细原因。

UNKNOWN_EXCEPTIONU由于未知原因,接口调用失败。

再次调用接口以解决问题。如果问题未解决,请联系 APO 技术支持。

INVALID_CARD_NUMBERF用于交易的银行卡号无效。

检查 paymentMethod.paymentMethodMetaData.cardno 的值是否正确:

  • 如果不正确,请传入正确值并重试。
  • 如果正确,该卡不支持此交易,请使用其他银行卡支付交易。
PAYMENT_IN_PROCESSU支付正在处理中。

获取任意一个链接(appLinkUrl, normalUrl, schemeUrl)并打开收银页面。如果没有返回链接,使用新的 paymentRequestId 值再次调用 pay 接口。如果问题仍然存在,请联系 APO 技术支持。

REQUEST_TRAFFIC_EXCEED_LIMITU请求流量超过限制。

再次调用接口以解决问题。如果问题未解决,请联系 APO 技术支持。

ORDER_NOT_EXISTF订单不存在。

检查 paymentId 是否正确。

ORDER_STATUS_INVALIDF交易无法进一步处理,因为订单状态无效。

检查交易的订单状态,或联系 APO 技术支持获取详细原因。   

USER_PAYMENT_VERIFICATION_FAILEDF买家在 OTP 验证方式中未能通过支付验证。

请联系 APO 技术支持了解具体原因。

USER_STATUS_ABNORMALF买家在支付方式端的状态异常。

请联系 APO 技术支持了解具体原因。

VERIFY_TIMES_EXCEED_LIMITF当前验证码在支付验证中失败次数过多。

买家必须获取新的验证码。

VERIFY_UNMATCHEDF验证码无效。

买家必须获取新的验证码。

SELECTED_CARD_BRAND_NOT_AVAILABLEF买家选择的支付银行卡品牌不可用。

买家选择的支付银行卡品牌不可用。 

PAYMENT_PROHIBITEDF因商品在该国禁止销售,无法处理支付。

您不允许对这笔交易提出异议。 

INVALID_EXPIRATION_DATEFpaymentMethod.paymentMethodMetaData.expiryYear 或paymentMethod.paymentMethodMetaData.expiryDate的值无效。

检查 paymentMethod.paymentMethodMetaData.expiryYearpaymentMethod.paymentMethodMetaData.expiryDate 的值是否正确:

  • 如果不正确,请传入正确的值。
  • 如果正确,请联系 APO 技术支持以获取详细原因。