问题描述
我使用 redirect_flow 方法通过 API 成功创建了客户和订阅:
我在 API 中找不到成功设置此流程所需的实际流程。 这是我发送/设置的订阅:
jData = ""
jData = jData & "{"
jData = jData & " ""subscriptions"": {"
jData = jData & " ""amount"": 25.00,"
jData = jData & " ""currency"": ""GBP"","
jData = jData & " ""name"": ""Yearly Subscription"","
jData = jData & " ""start_date"": ""2021-01-27"","
jData = jData & " ""interval"": 1,"
jData = jData & " ""interval_unit"": ""yearly"","
jData = jData & " ""month"": ""january"","
jData = jData & " ""day_of_month"": 20,"
jData = jData & " ""Metadata"": {"
jData = jData & " ""account_id"": ""acc1234"""
jData = jData & " },"
jData = jData & " ""links"": {"
jData = jData & " ""mandate"": ""theirmadateid"""
jData = jData & " }"
jData = jData & " }"
jData = jData & "}"
我希望开始日期是第一笔付款。 我需要在这个过程中设置第一笔付款,然后 DD 会在 2022 年进行下一笔付款吗?
所以过程是:
- 设置客户
- 为 DD 设置第一笔付款
- 设置 DD
或
- 设置客户
- 设置 DD
- 为该 DD 设置第一笔付款
这些是 GoCardless 控制面板中关于订阅的 JSON 详细信息:
{ "id": "AD12345","created_at": "2021-01-20T09:48:01.443Z","amount": 2500,"currency": "GBP","status": "active","name": "Subscription of 25.00 GBP - Once per Year via Direct Debit","start_date": "2021-01-27","end_date": null,"interval": 1,"interval_unit": "yearly","day_of_month": 20,"month": "january","count": null,"Metadata": { "account_id": "1234" },"payment_reference": null,"upcoming_payments": [ { "charge_date": "2022-01-20","amount": 2500 },{ "charge_date": "2023-01-20",{ "charge_date": "2024-01-22",{ "charge_date": "2025-01-20",{ "charge_date": "2026-01-20",{ "charge_date": "2027-01-20",{ "charge_date": "2028-01-20",{ "charge_date": "2029-01-22",{ "charge_date": "2030-01-21",{ "charge_date": "2031-01-20","amount": 2500 } ],"app_fee": null,"links": { "mandate": "MD00001" },"retry_if_possible": false,"earliest_charge_date_after_resume": null,"app_name": null,"amount_can_be_updated": true,"fx": { "fx_currency": null,"fx_amount": null,"exchange_rate": null,"estimated_exchange_rate": null } }
如您所见,它要到 2022 年才会开始付款。
任何帮助表示赞赏?
解决方法
您已设置 "day_of_month":20
和 "month":"january"
在此实例中已通过,因此下一个 1 月 20 日是 2022 年。
您可以从请求中删除它并只使用 start_date
字段,然后它将在未来付款的开始日期或前后。
或者,如果您想为未来的交易日期设置不同的开始日期,那么您需要进行创建->付款调用,然后创建->订阅以在 2022 年开始。
,正如 srob 所说,你不能在同一天开始 DD,所以我所做的只是说明 DD 的日期是未来 7 天开始,一切都奏效了。