Stripe API 密钥和意图
学习 Stripe API 的基础知识。
Stripe API 基于 REST 架构设计。Stripe API 接受表单编码的请求体,并返回 JSON 格式的响应,同时附带标准的 HTTP 状态码。
Stripe 为 Ruby、Python、NodeJS、PHP、.NET 和 Go 等多种后端语言提供了优秀的客户端库。如果你喜欢传统方式,也可以直接在终端中使用 curl 来测试 API。
在本课程中,你将主要使用 NodeJS 的 stripe npm 库进行开发。
在继续之前,你需要从 Stripe 控制台获取开发者 API 密钥。
获取 API 密钥
点击侧边栏中的 Developers 选项。
然后进入 Developers 下的 API keys 部分。
从页面上获取你的 Publishable key(公开密钥)和 Secret key(密钥)。默认情况下,Secret key 是隐藏的,你可以点击 Reveal test key 按钮来查看。
支付意图(Payment Intents)
支付意图用于构建能够处理复杂场景的支付系统。支付意图 API 可以跟踪从初始化到完整结账流程的整个支付过程,并在需要时触发额外的验证步骤。
诸如自定义欺诈规则、合规要求、基于重定向的支付方式等附加流程,可能会触发额外的身份验证步骤。如果这些情况未被支付集成妥善处理,交易将无法完成,最终失败,从而导致糟糕的用户体验。
Stripe 的支付意图 API 提供以下功能:
- 自动处理身份验证
- 零重复扣款
- 支持强客户认证(SCA)
支付意图 API 可与支付方式(Payment Methods)和设置意图(Setup Intents)API 结合使用,构建完整的集成方案,以应对复杂场景及 3D Secure 等额外认证步骤。
支付意图的集成包含两个步骤:
- 创建支付意图
- 确认支付意图
设置意图(Setup Intents)
设置意图 API 用于为未来的支付预先配置支付方式。你可以保存支付凭证并优化其后续使用。这对于那些不会立即向客户收费,而是在服务提供后再发起付款的企业非常有用。例如,酒店经营者可以收集客户的卡信息用于验证,仅在客人退房时才进行扣款。