Skip to content

开发者 API

集成与 自定义

通过 URL Scheme 从您自己的应用或网站启动 Payment for Stripe,并直接在 Stripe Dashboard 中控制哪些产品显示在应用中。

通过 URL Scheme 集成

工作原理

1

您的应用打开 支付:// 带参数的 URL

2

Stripe支付系统启动并处理交易

3

完成后,应用程序会将用户重定向到回调 URL 并显示结果。

终点

创建收费

payment://new?

处理一次性付款,包括金额、币种和描述。

参数

姓名类型必需的描述
amountinteger是的金额以美分为单位(例如,1000 = 10.00 美元)
currencystring三字母 ISO 货币代码(默认值:USD)
descriptionstringURL编码的费用描述
customerstring现有 Stripe 客户 ID
emailstring客户通过电子邮件索取收据
namestringURL编码的客户名称
metadatastring自定义键值对(URL编码的JSON)
callbackstring完成后返回的 URL
autoprocessboolean跳过主屏幕,立即开始充电
auto_returnboolean当结果加载完毕时触发回调函数,而不是等待商家关闭结果对话框。默认值为 false。

创建发票

payment://cart?

创建包含产品目录中各项商品的 Stripe 发票。

参数

姓名类型必需的描述
pricesstring是的以逗号分隔的价格 ID 和数量(例如,price_abc:2,price_xyz:1)
customerstring现有 Stripe 客户 ID
emailstring客户通过电子邮件索取收据
namestringURL编码的客户名称
callbackstring完成后返回的 URL
auto_returnboolean当结果加载完毕时触发回调函数,而不是等待商家关闭结果对话框。默认值为 false。

支付现有账单(仅限 iOS)

payment://invoice?

使用 Stripe 现有发票收取线下付款。金额、币种、客户和税费信息均来自发票。任何修改都将被拒绝。商户可通过读卡器/非接触式支付/手动输入方式支付银行卡;支付成功后,发票将被标记为已通过 Stripe 支付,并通过 charge_id 和 payment_intent_id 元数据进行关联。包含订阅、default_payment_method 或未开票状态的发票将被拒绝,并显示可操作的错误信息。

参数

姓名类型必需的描述
idstring是的Stripe 发票 ID(必须以 in_ 开头)
callbackstring完成后返回的 URL。成功后接收 invoice_id 和 payment_intent_id。
metadatastring自定义键值对(URL编码的JSON)合并到PaymentIntent元数据中
autoprocessboolean跳过主屏幕,立即开始充电
auto_returnboolean当结果加载完毕时触发回调函数,而不是等待商家关闭结果对话框。默认值为 false。

处理回调

交易完成后,Stripe 付款功能会将用户重定向到您的回调 URL,并附带查询参数以指示交易结果。默认情况下,重定向会在商家关闭结果对话框后触发,以便他们可以执行后续操作(例如,通过电子邮件发送收据、退款)。您可以设置 `auto_return=true` 参数,以便在交易结果确定后立即触发重定向。此功能支持 iOS 和 Android 系统。

回调参数

范围价值观描述
statussuccess | error | cancelled交易结果
charge_idstringStripe 付款 ID(成功时)
invoice_idstringStripe 发票 ID(仅限成功时,payment://invoice 流程)
payment_intent_idstringStripe PaymentIntent ID(仅在成功时,payment://invoice 流程)
errorstring错误信息(出错时)

示例

简单收费

仅需支付 10 美元即可收取 10.00 美元

payment://new?amount=1000

指控及描述

收费 25.00 欧元,并附有说明

payment://new?amount=2500&currency=eur&description=Coffee%20and%20pastry

向新客户收费

收取 50.00 美元并创建客户记录

payment://new?amount=5000&name=John%20Smith&[email protected]

向现有客户收费

向现有 Stripe 客户收取 75.00 美元

payment://new?amount=7500&customer=cus_ABC123xyz

元数据收费

添加自定义元数据,记录收费 100 美元。

payment://new?amount=10000&description=Invoice%20%231234&metadata=%7B%22order_id%22%3A%221234%22%2C%22location%22%3A%22Store%20A%22%7D

自动处理回调

完成后跳过主屏幕,直接返回应用。

payment://new?amount=3500&autoprocess=true&callback=myapp://payment-complete

结果自动返回

一旦得知结果,就立即触发回调函数,而不是等待商家关闭结果对话框。

payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-complete

包含明细项目的发票

使用 Stripe 目录中的产品创建发票

payment://cart?prices=price_coffee:2,price_muffin:1&[email protected]

支付现有账单(iOS)

收取现有 Stripe 发票的线下付款。成功后返回 invoice_id 和 payment_intent_id。

payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paid

完整示例

所有参数综合起来形成完全集成流

payment://new?amount=15000&currency=usd&description=Service%20Fee&customer=cus_ABC123xyz&metadata=%7B%22invoice%22%3A%22INV-2024-001%22%7D&autoprocess=true&callback=myapp://payment-result

URL编码

请记住对参数值中的特殊字符进行 URL 编码。空格会编码为 %20,花括号会编码为 %7B 和 %7D。

用元数据隐藏产品

在应用中隐藏产品

应用会列出您 Stripe 账户中的产品和价格。如果想让某个产品不出现在应用中(例如仅在您的在线商店销售的商品),请在 Stripe Dashboard 中为该产品或价格添加以下元数据键:

payment_hidden = true

设置在产品上:隐藏该产品及其所有价格。

设置在价格上:仅隐藏该价格。

删除该键或将其设为 false 即可重新显示。更改将在应用下次加载产品列表时生效。

购物车链接仍然有效

隐藏仅影响应用内的产品列表。引用隐藏价格的 payment://cart 链接仍然有效,现有订阅也不受影响。

准备好整合了吗?

下载应用,立即开始测试集成功能。