2017-03-20 16 views
0

Braintreeでトランザクションを作成しようとすると、次のエラーが発生します。 Sandboxではうまくいきました。私のサーバはSSL(TLS 1.2)を備えたロードバランサを備えたAWS Beanstalkの設定です。ここでBraintree販売エラー(PHP)

はerror_logにからのエラーです:ここでは

[Mon Mar 20 11:32:31.816499 2017] [:error] [pid 11335] [client XX] PHP Fatal error: Uncaught Braintree\\Exception\\Authorization in /var/app/current/scripts/lib/Braintree/Util.php:61\nStack trace:\n#0 /var/app/current/scripts/lib/Braintree/Http.php(47): Braintree\\Util::throwStatusCodeException(403)\n#1 /var/app/current/scripts/lib/Braintree/TransactionGateway.php(477): Braintree\\Http->post('/merchants/jtd9...', Array)\n#2 /var/app/current/scripts/lib/Braintree/TransactionGateway.php(49): Braintree\\TransactionGateway->_doCreate('/transactions', Array)\n#3 /var/app/current/scripts/lib/Braintree/TransactionGateway.php(289): Braintree\\TransactionGateway->create(Array)\n#4 /var/app/current/scripts/lib/Braintree/Transaction.php(502): Braintree\\TransactionGateway->sale(Array)\n#5 /var/app/current/ajax/add_points.php(23): Braintree\\Transaction::sale(Array)\n#6 {main}\n thrown in /var/app/current/scripts/lib/Braintree/Util.php on line 61, referer: https://XX.com/dashboard 

は、実際のサーバー側のPHPコードは次のとおりです。上記のコードの

require_once('../scripts/lib/Braintree.php'); 
Braintree_Configuration::environment('production'); 
Braintree_Configuration::merchantId('xx'); 
Braintree_Configuration::publicKey('xx'); 
Braintree_Configuration::privateKey('xx'); 
$pym = $_POST["payment_method_nonce"]; 
$points = 10*1.5; 

     $result = Braintree_Transaction::sale([ 
      'amount' => $points, 
      'currency' => 'EUR', 
      'paymentMethodNonce' => $pym, 
      'options' => [ 
       'submitForSettlement' => true 
      ] 
     ]); 

::販売の一部は、私与えるものです上記のエラー。私はexit()をやってみました。 Braintree.phpファイルとすべての設定オプションを含めた後、期待どおりに終了するので、エラーは間違いなくコードの:: sale部分によって引き起こされます。

サンドボックスではすべて正常に動作し、ノンセはクライアント側で正しく生成されて送信されたようです。

デバッグを開始する場所がわからない。アドバイスが助けになるでしょう!

+0

braintreeのものは、プロダクションモードにしたときに、サンドボックスで行ったこと(つまり、商店主をプログラム的に作成するなど)を最初からやり直す必要があります。 –

+0

Yup - 認証が行われているようです(APIキーは問題なく機能しています)。私がこれらのキーを正しく設定していなかったとき、エラーは私にそれを教えてくれることが明らかでした。今、私は別の問題に直面しているようです:/ –

+0

そうです..商人のIDを確認してください。あなたの生産モードで生成され、トランザクションを実行している間にそれを使用しなければならず、すべてのものは生産モードで生成されるべきです。問題がある場合は教えてください。 –

答えて

0

私のクライアントアプリケーションが拒否されたことが判明しました。

ここで重要な用語は、承認だった - (正しかったAPIキーに関する)認証とは異なります。