如何设置多种货币的 Paypal 订阅?

问题描述 投票:0回答:2

对于每种产品,我们执行以下操作:

  1. 添加新产品时,使用
    POST /v1/catalogs/products
  2. 创建新产品
  3. 使用步骤 1 中的
    product_id
    ,创建一个新计划
    POST /v1/billing/plans
  4. 每当客户单击“订阅”按钮时,我们都会使用步骤 2 中的
    plan_id
    POST /v1/billing/subscriptions
  5. 创建新订阅

问题:创建订阅时,我们可以通过将

plan
对象传递到
POST /v1/billing/subscriptions
端点来覆盖计划金额,从而更改向客户计费的价格。然而,传递不同的货币会引发错误:

"The currency code is different from the plan's currency code."

话虽如此,有没有一种方法可以设置贝宝订阅,让我们可以传递不同的货币?是否需要为每种货币创建一个新计划,因为这似乎不是一个好的解决方案

我们创建一个包含以下正文的计费计划:

{
                            product_id: productId,
                            name: planName,
                            status: 'ACTIVE',
                            billing_cycles: [
                                {
                                    frequency: {
                                        interval_unit: 'MONTH',
                                        interval_count: 1
                                    },
                                    tenure_type: 'REGULAR',
                                    sequence: 1,
                                    // Create a temporary pricing_scheme. This will be replaced
                                    // with a variable amount when a subscription is created.
                                    pricing_scheme: {
                                        fixed_price: {
                                            value: '1',
                                            currency_code: 'CAD'
                                        }
                                    },
                                    total_cycles: 0
                                }
                            ],
                            payment_preferences: {
                                auto_bill_outstanding: true,
                                payment_failure_threshold: 2
                            }
                        }

我们使用以下正文创建订阅(但是传递与计划 (CAD) 不同的货币会引发错误):

{
        plan_id: planId,
        subscriber: {
            email_address: email
        },
        plan: {
            billing_cycles: [
                {
                    sequence: 1,
                    pricing_scheme: {
                        fixed_price: {
                            value: amount,
                            currency_code: currency
                        }
                    }
                }
            ]
        },
        custom_id: productId
    };
paypal paypal-sandbox paypal-rest-sdk paypal-subscriptions
2个回答
1
投票

是否需要为每种货币创建一个新计划

是的


0
投票

如果你不能覆盖货币,那么文档在这方面就很糟糕。 https://developer.paypal.com/docs/api/subscriptions/v1/#definition-plan_override

这在很大程度上意味着您可以覆盖列出的包含货币的值。你实际上可以覆盖什么?

© www.soinside.com 2019 - 2024. All rights reserved.