开发自己的 Tap to Pay 应用有多难?(我们试了试)
我们在自己的 POS 应用中推出了 tap to pay 功能。以下是实际所需的条件:与处理商的合作关系、Apple 的授权、Android 上的 PCI 认证,以及围绕刷卡收单运行的 POS 系统。

这比 SDK 宣传册上说的要难得多,而且难点大多不在于代码。我们在 Final POS 应用中推出了 Tap to Pay 功能,所以这个答案来自我们的亲身实践,而不是阅读文档。如果您想开发自己的 tap to pay 应用,请做好准备:这会是一个包裹在漫长审批流程中的短期软件项目——在进行第一次实际刷卡测试之前,您需要建立支付处理商合作关系、获得 Apple 的手动授权或通过 Android 的实验室评估,并进行应用审核。
需要说明的是:平台和卡片行业的规则经常变化。以下所有内容在发布时均准确无误,因此请将具体细节视为当时的快照。
What does a tap to pay app actually do?
Tap to pay 将手机本身变成了读卡器。无需终端,无需外接设备:顾客直接在商户的设备上刷非接触式卡或使用 Apple Pay、Google Pay 等手机钱包,付款就会通过手机的 NFC 芯片(用于非接触式连接的近场通信无线电)进行处理。如果这些术语让您感到困惑,我们已经详细分析了移动刷卡支付与手机端 Tap to Pay 的区别。
这就是陷阱所在。读取 NFC 标签确实是一个周末就能搞定的项目,业余爱好者经常这么做。但读取银行卡则是另一回事。银行卡使用的是 EMV(卡片行业的芯片协议),卡片数据必须保持端到端加密,并且只有经过认证的软件才允许接触这些数据。
Why can't you just read the card yourself?
因为在您的代码允许公开发布运行之前,技术栈的每一层都需要获得许可。
Apple 不允许应用直接访问用于支付的 NFC。您必须使用其 ProximityReader 框架,该框架需要 iPhone 上的 Tap to Pay 授权(Apple 逐案授予的特殊权限)。Apple 还要求您与受支持的支付服务提供商(PSP,即实际转账的公司)进行集成。PSP 提供加载到商户设备上的经认证的读卡器配置,并承担认证责任。
Android 为开发者提供了更开放的 NFC 访问权限,但收款应用仍必须由独立的 PCI 认可实验室根据 PCI MPoC 标准(手机作为支付终端的卡片行业安全规则)进行评估。
在这两个平台之下,您需要建立收单关系:愿意为您的商户结算资金的处理商,并遵守卡组织的规则。
这些都不是通过编写更好的代码就能强行解决的。它涉及文书工作、合同和审核排队。

What does the approval path look like on iPhone?
根据 Apple 公布的要求,流程如下:持有组织级别的 Apple Developer 账号(由账号持有人亲自提交申请)、与您所在地区受支持的 PSP 合作、申请授权、集成 ProximityReader API 或您的 PSP 的 SDK、遵循 Apple 的支付页面设计指南,然后提交应用进行审核。Apple 的文档还指出,该功能仅在受支持的国家和地区可用,因此可用性本身是由市场决定的。
作为创始人或商户(而不是开发者)重新审视这个清单。其中没有一个步骤是“编写该功能”。功能是最简单的部分;授权才是护城河。
Where does the work go after the tap works?
获得批准的刷卡功能只为您提供了支付手段,而不是一个完整的销售点系统。在资金流动的瞬间,围绕刷卡的所有环节都必须准确无误:结算对应的购物车、收据上的税费、退款路径以及对账报表(每天每块钱都要与销售额匹配)。我们在研究是否可以使用 Lovable 或 Replit 构建 POS 时也发现了同样的差距:生成界面很快,但底层的商业逻辑层才是最耗费时间的地方。
Tap to pay 也会带来其特有的运营奇特之处。在我们的实现中,销售必须在接收刷卡付款的同一台设备上进行登记,并且它只能在原生应用中运行,绝不能在浏览器中运行。像这样的限制不会出现在任何宣传册中。您需要发现它们、通过工程手段绕过它们,然后撰写帮助文章。而当柜台上的手机不再够用时,您无论如何都要面临真正的硬件决策。

So, how hard is it to build your own tap to pay app?
难在特定的方面:编码只是最小的一部分,而处理商合作关系、Apple 授权、Android 上的实验室认证以及应用审核占据了绝大部分,并且这些都不是靠工程努力就能加速的。对我们来说这是值得的,因为 POS 平台可以将这些成本分摊到使用它的每一位商户身上。Tap to Pay 只是我们的商户开启的一个结账按钮,而接受 Tap to Pay 付款只是一个包含五个步骤的柜台常规操作。如果支付是您的产品,那么这些重重考验就是准入门槛。如果支付只是您收款的方式,那么开发自己的 tap to pay 应用在财务上毫无意义;现成的版本已经存在于 POS 应用中,而费率才是真正需要对比的地方。
经验法则:如果一个功能的生存需要别人的许可,那么再聪明的代码也无法走捷径。
常见问题
使用 Tap to Pay 需要单独的刷卡机吗?
不需要。手机就是读卡器:顾客在商户的设备上刷非接触式卡或手机钱包,支付就会通过手机的 NFC 芯片进行。
任何开发者都可以在 iPhone 上构建 Tap to Pay 应用吗?
并非如此,这需要获得批准。Apple 要求与支持的支付服务商进行集成,并获得其逐案授予的 Tap to Pay on iPhone 权限,随后还要通过应用审核。
Tap to Pay 在 Android 上是如何获得认证的?
收款应用由独立且获得 PCI 认可的实验室根据 PCI MPoC 标准进行评估,该标准是卡片行业针对将手机用作支付终端的安全标准。
Tap to Pay 安全吗?
经过认证的实现方案是安全的。在 iPhone 上,交易会使用设备的安全元件(Secure Element)进行加密和处理;在 Android 上,获得 MPoC 认证的解决方案必须满足该标准的安全要求。
AI 能帮我写一个 Tap to Pay 应用吗?
它可以编写集成代码。但它无法授予 Apple 的权限、无法通过 PCI 实验室评估,也无法签署收单机构协议,而这些关卡才是项目的大部分工作。
