如何测试 Braintree 交易退款?

How to test a Braintree transaction refund?

我正在尝试 运行 测试 Braintree 交易退款,但我 运行 遇到了问题。 Braintree 的 API 只允许您对已结算的交易进行退款。但是,在沙盒环境中创建的交易每 24 小时仅 "settle" 一次。因此,当我尝试在测试套件中退款时,退款总是被拒绝,因为原始交易是 "submitted_for_settlement" 而不是 "settled".

有什么解决办法吗?

我在布伦特里工作。如果有更多问题,可以随时get in touch with our support team.

TestHelper in the Braintree PHP library有一个在沙盒中结算交易的方法:

class Braintree_TestHelper
{
    . . .

    public static function settle($transactionId)
        {
            $http = new Braintree_Http(Braintree_Configuration::$global);
            $path = Braintree_Configuration::$global->merchantPath() . '/transactions/' . $transactionId . '/settle';
            $http->put($path);
        }

    . . .
}

我们支持的其他语言也有类似的方法。