【问题标题】:Braintree Sandbox Test Transaction settle() returns transaction status SETTLING instead of SETTLEDBraintree 沙盒测试 Transaction set() 返回交易状态 SETTLING 而不是 SETTLED
【发布时间】:2016-08-18 10:15:21
【问题描述】:

我正在关注测试 Braintree 结算状态的文档: https://developers.braintreepayments.com/reference/general/testing/php#settlement-status

文档说:

$result = Braintree_Test_Transaction::settle($sale_result->transaction->id);
$result->success
# true

$result->transaction->status
# Braintree_Transaction::SETTLED

我正在使用 VISA 卡进行测试。

所以预期的结果是事务状态“已解决”(Braintree_Transaction::SETTLED)。

实际结果是事务状态“结算”(Braintree_Transaction::SETTLING)

这没什么大不了的,但我仍然期待文档中所述的 SETTLED。

任何有相同经验测试\Braintree\Test\Transaction::settle($transactionId) 的人?

【问题讨论】:

    标签: testing transactions braintree braintree-sandbox


    【解决方案1】:

    全面披露:我在 Braintree 工作。如果您还有任何问题,请随时联系support

    虽然我无法亲自重现此行为,但我可以想象网关返回 SETTLING 而不是阻塞直到结算完成。一旦settle() 调用返回,您就可以调用

    Braintree\Transaction::find($sale_result->transaction->id)

    并检查该交易响应对象的status 以查看结算是否已完成。

    【讨论】:

    • 之后我确实检查了交易(在沙盒网站上以及使用 Braintree\Transaction::find 方法) - 它正在“解决”。今天,当我在状态为“submitted_for_settlement”的交易上调用 \Braintree\Test\Transaction::settle($transactionId) 时,我从 Braintree 沙箱中返回错误 - 91575 无法将交易转换为已结算、结算确认或结算拒绝。 (调试显示braintree 库确实PUT 请求/merchants/***/transactions/***/settle)也许目前沙箱有些问题 - 我会在一周左右的时间内回复它并重新测试。
    猜你喜欢
    • 2016-12-28
    • 2016-11-12
    • 2013-03-14
    • 2012-04-14
    • 2018-09-21
    • 2018-06-04
    • 1970-01-01
    • 2016-11-17
    • 2018-11-17
    相关资源
    最近更新 更多