简体   繁体   中英

How to test a Braintree transaction refund?

I'm trying to run tests on Braintree transaction refunding, but I'm running into a problem. Braintree's API only allows you to issue refunds for transactions that have settled. However, transactions created in the sandbox environment only "settle" once every 24 hours. So, when I try to refund them in the test suite, the refunds are always rejected because the original transaction is "submitted_for_settlement" and not "settled".

Any way around this?

I work at Braintree. If you have more questions, you can always get in touch with our support team .

The TestHelper in the Braintree PHP library has a method to settle a transaction in sandbox:

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);
        }

    . . .
}

Similar methods exist for our other supported languages.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM