Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 通过API和重定向流程实现GoCardless订阅流程_Json_Api_Asp Classic_Integration_Gocardless - Fatal编程技术网

Json 通过API和重定向流程实现GoCardless订阅流程

Json 通过API和重定向流程实现GoCardless订阅流程,json,api,asp-classic,integration,gocardless,Json,Api,Asp Classic,Integration,Gocardless,我正在使用重定向流方法通过API成功创建客户和订阅,但: 据我所知,使用此流程不会支付/设置任何款项 如果我没有添加开始日期,则表示DD在下一个可用日期开始,而不是在DD已设置时开始(这是作为年度DD的下一年) 我在API中找不到成功设置此流程所需的实际流程。 这是我发送/设置的订阅: jData = "" jData = jData & "{" jData = jData &

我正在使用重定向流方法通过API成功创建客户和订阅,但:

  • 据我所知,使用此流程不会支付/设置任何款项
  • 如果我没有添加开始日期,则表示DD在下一个可用日期开始,而不是在DD已设置时开始(这是作为年度DD的下一年)
  • 我在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的第一笔付款
  • 以下是GoCardles控制面板中关于订阅的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", "amount": 2500 }, { "charge_date": "2024-01-22", "amount": 2500 }, { "charge_date": "2025-01-20", "amount": 2500 }, { "charge_date": "2026-01-20", "amount": 2500 }, { "charge_date": "2027-01-20", "amount": 2500 }, { "charge_date": "2028-01-20", "amount": 2500 }, { "charge_date": "2029-01-22", "amount": 2500 }, { "charge_date": "2030-01-21", "amount": 2500 }, { "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 } } { “id”:“AD12345”, “创建时间”:“2021-01-20T09:48:01.443Z”, “金额”:2500, “货币”:“英镑”, “状态”:“活动”, “名称”:“25.00英镑的认购-通过直接借记每年一次”, “开始日期”:“2021-01-27”, “结束日期”:空, “间隔”:1, “间隔单位”:“每年”, “月中日”:20, “月”:“一月”, “计数”:空, “元数据”:{ “帐户id”:“1234” }, “付款参考”:空, “即将付款”:[ { “押记日期”:“2022-01-20”, “数额”:2500 }, { “押记日期”:“2023-01-20”, “数额”:2500 }, { “押记日期”:“2024-01-22”, “数额”:2500 }, { “收费日期”:“2025-01-20”, “数额”:2500 }, { “押记日期”:“2026-01-20”, “数额”:2500 }, { “押记日期”:“2027-01-20”, “数额”:2500 }, { “押记日期”:“2028-01-20”, “数额”:2500 }, { “押记日期”:“2029-01-22”, “数额”:2500 }, { “充电日期”:“2030-01-21”, “数额”:2500 }, { “押记日期”:“2031-01-20”, “数额”:2500 } ], “应用程序费用”:空, “链接”:{ “授权”:“MD00001” }, “如果可能,请重试”:false, “恢复后的最早收费日期”:空, “应用程序名称”:空, “可更新金额”:true, “外汇”:{ “外汇货币”:空, “外汇金额”:空, “汇率”:空, “估计汇率”:空 } } 正如你所看到的,它直到2022年才开始接受付款

    感谢您的帮助吗?

    您已经设置了
    “月中日”:20
    “月”:“一月”
    ,在本例中已经过去,因此下一个1月20日是2022年

    您可以将其从请求中删除,只需使用
    start\u date
    字段,它将在未来付款的开始日期或前后


    或者,如果您想为未来的交易日期设置不同的开始日期,则需要进行创建->付款呼叫,然后创建->订阅,以便在2022年开始。

    正如srob所说,您不能在同一天开始DD,所以,我所做的就是声明DD的日期,从未来的7天开始,这一切都起作用了