USEEPAY V1.0
中文
  • 中文
  • English
UseePay官网
产品文档
  • V2.0版本
  • V1.0版本
收单商户平台
UseePay官网
产品文档
  • V2.0版本
  • V1.0版本
收单商户平台
中文
  • 中文
  • English
  1. applepay
  • 全球收单
    • 产品说明
    • 集成模式
      • 跳转式收银台模式
      • 内嵌式收银台模式
      • Direct API模式
      • 插件模式
    • 集成之前
      • 开始之前(必读)📘
      • 在SandBox中集成接口
      • 在Prod中上线服务
      • 请求签名指南
        • 加签/验签Demo
        • 加签/验签机制
    • 开始集成
      • UseePay规范
        • 业务结果码(ResultCode)
        • 错误码(ErrorCode)
        • 货币单位和金额规范
        • 国家信息规范
      • 接口集成📗
        • 对象模型
        • 跳转式收银台接口
          • cashier 接口说明
          • paymentMethod参数说明
          • googlepay
            • GoogePay须知
            • googlepay
          • applepay
            • 判断当前设备是否支持applepay
            • applepay
          • wechat_native
            • 关于微信退款
            • wechat_native - 微信扫码支付
          • wechat_h5
            • 关于微信退款
            • wechat_h5 - H5支付
          • cashier 📌
          • credit_card
          • bancontact
          • boleto
          • giropay
          • Ideal
          • klarna
          • konbini
          • oxxo
          • payeasy
          • pix
          • sofort
        • 内嵌式收银台接口
          • 信用卡
            • 2.x 版本内嵌收银台
            • 内嵌订阅收银台
            • 版本更新说明
            • 1.x版本内嵌收银台
          • applepay & googlepay
            • 内嵌方式对接2.0.0
          • create token
        • Direct API接口
          • googlepay
            • GoogePay须知
            • googlepay
          • applepay
            • 判断当前设备是否支持applepay
            • ApplePay API接入流程
            • ApplePay API接入流程备份
            • ApplePay Merchant Identifier
            • applepay
              POST
            • ApplePay商户Session
              POST
          • wechat_native
            • 关于微信退款
            • wechat_native - 扫码支付
          • wechat_jsapi
            • 关于微信退款
            • 小程序支付
            • 微信公众号支付
            • wechat_jsapi - 微信原生支付
          • konbini
            POST
          • payeasy
            POST
          • klarna
            POST
          • alipay
            POST
          • alipay_cn/alipay_hk
            POST
          • giropay
            POST
          • sofort
            POST
          • Ideal
            POST
          • boleto
            POST
        • 订单相关接口
          • 订单通用接口
            • 订单查询Query
            • 订单退款Refund
            • 订单预授权完成(Capture)
            • 订单预授权撤销(Void)
          • 拒付接口
            • 拒付流程说明
            • 拒付查询
          • 通知接口
            • 交易通知
              • 同步/异步通知
              • webhook版本升级一览
              • webhook
            • 拒付通知
              • 拒付webhook
          • 物流接口
            • 物流信息上传 2.1版
            • 物流信息查询 2.1版
          • 订单数据拉取 - SFTP
            • SFTP
      • 测试资源-SandBox
        • UseePay测试卡💳
        • 信用卡测试案例
        • 本地化测试案例
        • ApplePay&& Google Pay测试用例
        • 退款测试案例
      • 插件集成
        • Shopify(直连内嵌收银台)
        • Shopify(跳转收银台 & Google pay & Apple pay)
        • Shopify(本地化 & Google pay & Apple pay)
        • Shoplazza店匠
        • Shopline
        • Shopline(Google pay & Apple pay)
        • AllValue有赞
        • Shopexpress微盟
        • Shopyy
        • Xshoppy
        • 2cshop
        • Meshop
        • UEESHOP
        • FPP
        • Shopbase(暂停使用)
        • Shoptop
        • Shopastro
        • Magento
        • Woocommerce/WordPress
        • OpenCart
        • PapPal支付绑定
        • Alipay支付绑定
        • 万全云
        • Fecify
        • magento - Wechat/Alipay/UseePay Payments
        • shopify其他
          • Afterpay分期付款组件展示
          • Googlepay&Applepay名称修改
          • 如何增加卡组织logo
          • UseePay商户订单号匹配Shopify店铺订单
    • MC收单平台操作手册
      • 商户号查找
      • Appld查找
      • 域名添加
      • 域名证明下载
      • Shopify-SecurityKey查找
      • 密钥查找
      • 交易订单查找
      • 订单失败原因查看
      • 退款查询
      • 退款处理
      • ARN查询方式
      • 银行账号添加
      • 提现操作
      • 黑名单添加
      • 白名单添加
      • 新增操作员设置
      • 添加邮箱提醒
      • 物流上传
      • 对账单下载&查询
      • 争议订单处理
      • 拒付处理
      • 拒付预警处理
      • 重置密码
    • 附录
      • 本地化汇总
      • FAQ
        • 常见问题解答
        • 集成和认证
        • ueeshop配置常见错误
        • ApplePay常见问题
        • 支付和预授权的区别
      • 过期文档
        • applepay&googlepay 内嵌1.0.0
        • 参数对象说明(过期)
  • 数据模型
    • 示例数据模型
      • Pet
      • OrderInfo
      • Category
      • Tag
  1. applepay

ApplePay API接入流程备份

对接流程#

1. Apple Pay 证书#

s2s方式截图applepay需要在网站的指定路径下放入证书(请联系UseePay运营提供)
https://网站域名/.well-known/apple-developer-merchantid-domain-association.txt
请注意放入证书后需要再次联系UseePay激活证书

2. 前端#

2.1 前端引入Apple Pay#

请参考Apple Pay官网文档
大致流程如下,仅供参考(因为Apple Pay文档可能会升级,请您参考上述Apple Pay官网文档)

2.1.1 在网站引入apple pay#

<script src="https://applepay.cdn-apple.com/jsapi/v1.1.0/apple-pay-sdk.js"></script>

2.1.2 渲染Apple Pay button#

初始化对象文档
if (window.ApplePaySession) {
   var merchantIdentifier = 'YOUR MERCHANT IDENTIFIER';
   var promise = ApplePaySession.canMakePaymentsWithActiveCard(merchantIdentifier);
   promise.then(function (canMakePayments) {
      if (canMakePayments)
         // Display Apple Pay button here.
}); }
merchantIdentifier 取值说明
环境值
sandboxmerchant.com.sandbox.useepay
prodmerchant.com.gateway.useepay

#

ApplePay接入流程.png

一.获取ApplePay验证文件#

请根据你想要添加ApplePay支付按钮的域名*发送给UseePay工作人员,将获得的证书放置在相应页面的指定路径下,如
https://checkou.useepay.com/.well-known/apple-developer-merchantid-domain-association.txt
完成后联系UseePay的工作人员,进行网站的绑定。

二.挂载Apple Pay SDK#

https://developer.apple.com/documentation/apple_pay_on_the_web/displaying_apple_pay_buttons_using_javascript

三.检查Apple Pay是否可用#

if (window.ApplePaySession) {
   var merchantIdentifier = 'YOUR MERCHANT IDENTIFIER';
   var promise = ApplePaySession.canMakePaymentsWithActiveCard(merchantIdentifier);
   promise.then(function (canMakePayments) {
      if (canMakePayments)
         // Display Apple Pay button here.
}); }
merchantIdentifier 沙盒环境使用merchant.com.sandbox.useepay
生产环境使用merchant.com.gateway.useepay
https://developer.apple.com/documentation/apple_pay_on_the_web/apple_pay_js_api/checking_for_apple_pay_availability

四.构建ApplePay Request#

    const request = {
          "countryCode": "US",
          "currencyCode": "",
          "merchantCapabilities": [
            "supports3DS",
            "supportsDebit",
            "supportsCredit"
          ],
          "supportedNetworks": [
            "visa",
            "masterCard",
            "amex",
            "discover",
          ],
          "total": {
            "label": "",
            "amount": "",
            "type": "final"
          }
        }
其中currencyCode,label,amount是当前交易币种,交易主体,交易金额,请如实填写

五.构建ApplePaySession#

参照:https://developer.apple.com/documentation/apple_pay_on_the_web/apple_pay_js_api/creating_an_apple_pay_session
后续使用此session

三.获取MerchantSession#

session.onvalidatemerchant = async event => {
// Call your own server to request a new merchant session.
const merchantSession = await Api.merchantSession(sessionRequest);
session.completeMerchantValidation(merchantSession);
};
获取merchantSession 请参照https://www.apifox.cn/web/project/2038036/apis/api-67411929

六. 后续session动作#


session.onpaymentmethodselected = event => {
         event.eventName = "onpaymentmethodselected"
         Api.applepayLogEvent(event);
         // Define ApplePayPaymentMethodUpdate based on the selected payment method.
         // No updates or errors are needed, pass an empty object.
         var newTotal = {
           "label": //交易网址//,
           "amount": //交易金额//,
           "type": "final"
         };
         var newLineItems = [
           // {
           //   "type": "final",
           //   "label": "Sales Tax",
           //   "amount": "1.00"
           // },
           // {
           //   "type": "final",
           //   "label": "Shipping",
           //   "amount": "0.00"
           // }
         ];
         var update = {
           newTotal: newTotal,
           newLineItems: newLineItems
         };
         session.completePaymentMethodSelection( update );
};

session.onshippingmethodselected = event => {
         event.eventName = "onshippingmethodselected"
         // Define ApplePayShippingMethodUpdate based on the selected shipping method.
         // No updates or errors are needed, pass an empty object.
         const update = {};
         session.completeShippingMethodSelection(update);
};

session.onshippingcontactselected = event => {
         event.eventName = "onshippingcontactselected"
         Api.applepayLogEvent(event);
         // Define ApplePayShippingContactUpdate based on the selected shipping contact.
         const update = {};
         session.completeShippingContactSelection(update);
};

七.进行支付#

session.onpaymentauthorized = async event => {
        const applepayPaymentRequest = buildApplepayPaymentRequest();
        const applepayPaymentResponse = await Api.applepayPayment(applepayPaymentRequest);
      session.completePayment(applepayPaymentResponse.applePayPaymentAuthorizationResult);
        // 处理apple pay支付结果
        processApplepayPaymentResponse(applepayPaymentResponse);
};
参照https://www.apifox.cn/link/project/2038036/apis/api-67385706
修改于 2025-08-22 03:28:24
上一页
ApplePay API接入流程
下一页
ApplePay Merchant Identifier
Built with