4

ブレインツリーの決済ステータスをテストするためのドキュメントに従っています: https://developers.braintreepayments.com/reference/general/testing/php#settlement-status

Doc 言います:

$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)か?

4

1 に答える 1

3

完全な開示: 私はブレインツリーで働いています。ご不明な点がございましたら、サポートまでお気軽にお問い合わせください。

この動作を個人的に再現することはできませんが、決済が完了するまでゲートウェイがブロックするのではなく、SETTLIN を返すことは想像できます。コールが返ってきたら、settle()コールできます

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

そのトランザクション応答オブジェクトのを検査してstatus、決済が完了したかどうかを確認します。

于 2016-08-18T19:33:50.977 に答える