本文详细解读了如何在 PayPal 后台及通过 API 创建订阅产品和计划的具体方法,帮助开发者轻松完成订阅相关配置。
点击相应的地址后即可开始创建产品和订阅计划。值得注意的是,沙盒计划和正式计划是独立的,沙盒计划不会显示在正式环境中。按页面指示逐步完成创建,即可完成设置。建议根据需要配置产品和订阅计划的相关参数,例如名称、描述和计费周期等。
通过 API 配置产品和订阅计划为更加灵活的方式,以下是详细的操作步骤。
获取 Token 的请求地址:
沙盒环境: https://api.sandbox.paypal.com/v1/oauth2/token
正式环境: https://api.paypal.com/v1/oauth2/token
生成 Token 前需获取 PayPal 的 clientId 和 Secret,并基于这些信息发起 API 请求来获取 access_token。
以下代码片段展示了如何通过 API 创建产品:
bash
curl -v -X POST https://api-m.sandbox.paypal.com/v1/catalogs/products
-H "Content-Type: application/json"
-H "Authorization: Bearer Access-Token"
-H "PayPal-Request-Id: PRODUCT-18062020-001"
-d '{
"name": "Video Streaming Service",
"description": "Video streaming service",
"type": "SERVICE",
"category": "SOFTWARE",
"image_url": "",
"home_url": "https://example.com/home"
}'
参数名称
描述
name
产品名称
description
产品描述
type
产品类型(SERVICE 表示服务)
category
产品类别
image_url
产品图片链接
home_url
产品主页链接
以下为通过 API 创建订阅计划的示例代码:
bash
curl -v -X POST https://api-m.sandbox.paypal.com/v1/billing/plans
-H "Content-Type: application/json"
-H "Authorization: Bearer Access-Token"
-H "PayPal-Request-Id: PLAN-18062019-001"
-d '{
"product_id": "PROD-XXCD1234QWER65782",
"name": "Video Streaming Service Plan",
"description": "Video Streaming Service basic plan",
"status": "ACTIVE",
"billing_cycles": [
{
"frequency": {
"interval_unit": "MONTH",
"interval_count": 1
},
"tenure_type": "REGULAR",
"sequence": 1,
"total_cycles": 12,
"pricing_scheme": {
"fixed_price": {
"value": "6",
"currency_code": "USD"
}
}
}
],
"payment_preferences": {
"auto_bill_outstanding": true,
"setup_fee": {
"value": "6",
"currency_code": "USD"
},
"setup_fee_failure_action": "CONTINUE",
"payment_failure_threshold": 3
},
"taxes": {
"percentage": "0",
"inclusive": false
}
}'
主要参数配置如下:
参数名称
描述
product_id
产品 ID
name
计划名称
description
计划描述
status
计划状态
billing_cycles
计费周期详情(包括频率和价格设定等)
payment_preferences
支付偏好,包括首次付款设置及支付失败处理方式
taxes
税费设定
通过以下 API 配置并发起订阅:
bash
curl -v -X POST https://api-m.sandbox.paypal.com/v1/billing/subscriptions
-H "Content-Type: application/json"
-H "Authorization: Bearer Access-Token"
-H "PayPal-Request-Id: SUBSCRIPTION-21092019-001"
-d '{
"plan_id": "P-5ML4271244454362WXNWU5NQ",
"start_time": "2025-07-21T00:00:00Z",
"quantity": "20",
"shipping_amount": {
"currency_code": "USD",
"value": "10.00"
},
"application_context": {
"brand_name": "walmart",
"locale": "en-US",
"shipping_preference": "SET_PROVIDED_ADDRESS",
"user_action": "SUBSCRIBE_NOW",
"payment_method": {
"payer_selected": "PAYPAL",
"payee_preferred": "IMMEDIATE_PAYMENT_REQUIRED"
},
"return_url": "https://example.com/returnUrl",
"cancel_url": "https://example.com/cancelUrl"
}
}'
配置完成后,API 将返回支付链接,根据返回的结果选择 links 下第一个 href,完成订阅支付。
可通过以下请求获取订阅的详细信息:
bash
curl -v -X GET https://api-m.sandbox.paypal.com/v1/billing/subscriptions/I-BW452GLLEP1G
-H "Content-Type: application/json"
-H "Authorization: Bearer Access-Token"
在 PayPal 后台,可手动配置 Webhook 地址用于接收付款和状态相关的通知。
为了轻松完成国际服务订阅,可以借助 野卡 提供的解决方案: