【问题标题】:Create first transaction immediately for Paymill subscription立即为 Paymill 订阅创建第一笔交易
【发布时间】:2015-04-04 09:28:19
【问题描述】:

所以我们已经在我们的应用中实现了 Paymill 订阅。问题是在用户提交他的信用卡信息并且我们在后端创建订阅后,第一笔交易不会立即进行。几分钟后,我们收到了第一个 subscription.succeeded web-hook,表示第一个交易。它完成了工作,但是我们如何在创建订阅的同时获得第一笔交易呢?通过预授权?

问题是,Paymill 网站上没有太多信息,API 文档中也没有关于此类用例的信息。

【问题讨论】:

    标签: paymill


    【解决方案1】:

    您说得对,Webhook 不允许您获得 API 调用的即时响应。

    但是,您可以通过创建事务获得即时响应:

    curl https://api.paymill.com/v2.1/transactions \
    -u <YOUR_PRIVATE_KEY>: \
    -d "amount=4200" \
    -d "currency=EUR" \
    -d "payment=<CLIENT_PAYMENT>" \
    -d "client=<YOUR_CLIENT>" \
    -d "description=Transaction"
    

    交易响应会立即返回您的服务器,这样您就可以立即通知您的客户。

    如果交易成功,您还想在未来通过创建订阅向您的客户扣款:

    curl https://api.paymill.com/v2.1/subscriptions \
    -u <YOUR_PRIVATE_KEY>: \
    -d "client=<YOUR_CLIENT>" \
    -d "payment=<CLIENT_PAYMENT>" \
    -d "amount=4200" \
    -d "currency=EUR" \
    -d "interval=1 week,monday" \
    -d "name=Example Subscription" \
    -d "period_of_validity=2 YEAR" \
    -d "start_at=<SUBSCRIPTION_STARTING_DATE"
    

    start_at参数需要包含订阅开始的日期(未来):

    current_date + subscription_interval(例如 1 周)

    如果未设置此参数,您将在同一天向您的客户的信用卡收取两次费用!

    【讨论】:

    • 明白。没有这么想过。非常感谢你的想法。如果有什么不好的,我会回复你的。但我很确定它会的。美好的一天!
    • 之所以需要这样做,是因为订阅创建 API 调用已经返回了创建订阅对象(而不是事务)的响应。 PAYMILL 对即将到来的事务调用的第二个响应只能由 Webhook 返回,因为它不是由您的服务器触发的。我希望这有帮助。美好的一天!
    猜你喜欢
    • 1970-01-01
    • 2012-12-28
    • 1970-01-01
    • 2014-11-16
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    • 2019-07-16
    • 2014-03-05
    相关资源
    最近更新 更多