Skip to content

Apple Pay 直连能力 ​

能力概览 ​

  • 本服务基于接入方有收银台,接入方直接调用 ApplePay 的直接支付
  • 流程:接入方需要提交收银台域名,我公司配置接入方域名。
接入方创建交易->核验支付信息->ApplePay 获取 Token->提交 ApplePay 支付信息->结果通知(结果核验)

注意

核验支付信息、获取 Apple Pay Token、提交 Apple Pay 支付信息三个环节必须使用同一个 deviceId。

核验支付信息 ​

调用地址 ​

  • /pay/merchant/inquiryPaymentInfo

请求参数 ​

字段提交要求数据类型最大长度业务含义
merchantId是String32平台分配给接入方的唯一商户标识
orderId是String64平台生成的收款交易订单号
subMerId否String32二级商户标识;存在二级接入方场景时传入
paymentType是String64本次核验的支付方式,取值见支付方式清单
deviceId是String100支付用户当前设备的唯一标识
deviceIp是String64支付用户设备发起请求时的 IP 地址
deviceBrowser否String255支付用户浏览器 User-Agent 等环境信息
deviceGPS否String64支付用户设备定位信息

请求示例 ​

json
{
  "merchantId": "MER20460873",
  "orderId": "TRD20260509104532001876",
  "subMerId": "SME70451236",
  "deviceId": "9f1d7c8a-3b62-4d5f-a2c8-65f3b7e9d104",
  "deviceIp": "94.97.45.118",
  "deviceBrowser": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 Version/17.4 Mobile/15E148 Safari/604.1",
  "deviceGPS": "24.713552/46.675296",
  "paymentType": "applepay"
}

响应参数 ​

  • data
字段数据类型业务含义
merchantIdString当前订单所属的接入方标识
orderIdString平台生成的收款交易订单号
tranTypeString订单对应的收款交易类型
paymentTypeString本次核验通过的支付方式
currencyString收款订单币种
amountString收款订单金额

响应示例 ​

json
{
  "code": 10000,
  "message": "success",
  "data": {
    "amount": "186.400000",
    "merchantId": "MER20460873",
    "orderId": "TRD20260509104532001876",
    "currency": "SAR",
    "tranType": "online_payin",
    "paymentType": "applepay"
  }
}

ApplePay 获取 Token ​

调用地址 ​

  • /pay/merchant/applePayGetToken

请求参数 ​

字段提交要求数据类型业务含义
merchantId是String平台分配给接入方的唯一商户标识
orderId是String平台生成的收款交易订单号
subMerId否String二级商户标识;存在二级接入方场景时传入
applepayURL是StringApple Pay 会话校验所需的 Apple URL
payerEmail是String支付用户邮箱地址

请求示例 ​

json
{
  "merchantId": "MER20460873",
  "orderId": "TRD20260509104532001876",
  "subMerId": "SME70451236",
  "applepayURL": "https://apple-pay-gateway.apple.com/paymentservices/startSession",
  "payerEmail": "noura.ahmed@example.com"
}

响应参数 ​

  • data
字段数据类型最大长度业务含义
merchantIdString32当前订单所属的接入方标识
orderIdString32平台生成的收款交易订单号
paymentOrderIdString32平台生成的支付处理订单号
applepayTokenString-Apple Pay 支付会话 Token

响应示例 ​

json
{
  "code": 10000,
  "message": "success",
  "data": {
    "merchantId": "MER20460873",
    "orderId": "TRD20260509104532001876",
    "paymentOrderId": "PAY20260509104933004562",
    "applepayToken": "APPLEPAY_SESSION_TOKEN_20260509"
  }
}

提交支付调用 ​

调用地址 ​

  • /pay/merchant/applePayAuthEntication

请求参数 ​

字段提交要求数据类型最大长度业务含义
merchantId是String32平台分配给接入方的唯一商户标识
orderId是String64平台生成的收款交易订单号
paymentOrderId是String64平台生成的支付处理订单号
subMerId否String32二级商户标识;存在二级接入方场景时传入
deviceId是String100支付用户设备标识,需与获取 Token 阶段保持一致
applepayEncData是String100Apple Pay 返回的加密支付数据

请求示例 ​

json
{
  "merchantId": "MER20460873",
  "orderId": "TRD20260509104532001876",
  "paymentOrderId": "PAY20260509104933004562",
  "subMerId": "SME70451236",
  "deviceId": "9f1d7c8a-3b62-4d5f-a2c8-65f3b7e9d104",
  "applepayEncData": "eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoi..."
}

响应参数 ​

  • data
字段数据类型业务含义
merchantIdString当前订单所属的接入方标识
orderIdString平台生成的收款交易订单号
paymentOrderIdString平台生成的支付处理订单号
subMerIdString二级接入方标识
orderStatusString收款订单当前处理状态
pending:交易中
success:交易成功待结算
paid:支付成功可结算
fail:失败
expired:过期

响应示例 ​

json
{
  "code": 10000,
  "message": "success",
  "data": {
    "merchantId": "MER20460873",
    "orderId": "TRD20260509104532001876",
    "paymentOrderId": "PAY20260509104933004562",
    "subMerId": "SME70451236",
    "orderStatus": "paid"
  }
}