【问题标题】:Error with Square Checkout API - "The order has expired"Square Checkout API 出错 - “订单已过期”
【发布时间】:2018-01-17 03:06:50
【问题描述】:

当用户点击时从 checkout 端点收到此错误 (category: INVALID_REQUEST_ERROR code: ORDER_EXPIRED),然后在几天后返回付款。这是获取订单信息并为用户提供唯一结帐 URL 的端点。

订单在到期前还有多长时间?我什至不清楚到底是什么到期?

在帖子中发送的内容不多。试图确定我是否只需要“如果订单已过期”更改幂等性密钥,这似乎适得其反。

$this->_order = ['redirect_url'              => $redirectUrl,
                 'idempotency_key'           => $this->_idempotencyKey,
                 'ask_for_shipping_address'  => false
        ];

$this->_order['order']['reference_id'] = (string) "{$this->getInvoice()->getId()}";

【问题讨论】:

    标签: square square-connect square-checkout


    【解决方案1】:

    结帐网址会在 24 小时后过期。 Square 正在努力更新文档以反映此信息。

    【讨论】:

    • 我们的解决方案是使幂等键成为唯一发票编号和日期的哈希值(格式化字符串...yyyymmdd)。当这些事情在我们身上到期时避免死胡同,并在某种程度上完成了幂等性的预期目标。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-22
    • 1970-01-01
    • 1970-01-01
    • 2020-08-18
    相关资源
    最近更新 更多