0

Paypal Payments Pro を使用して Magento 1.6.1 で支払いゲートウェイをデバッグする際に問題が発生しています。「ご注文の処理中にエラーが発生しました。お問い合わせいただくか、後でやり直してください。」

エラーログを調べてみましたが、結果を以下に掲載しました。このシステムを初めて使用し、フロントエンドの開発者ですが、私はなんとかphpに沿ってフォローしています。

失敗したように見える重要な行は

    $this->_importFromResponse($this->_doDirectPaymentResponse, $response);

誰かがこの行が何をするのか正確に説明できますか? このプロセスを調査するための賢明な次のステップは何ですか? 追加のペイパル/マジェント固有の知識は大歓迎です!

アレイが作成されたので、ペイパルへの転送に問題がある可能性があると推測しています(私のAPI署名は問題ないはずです-エクスプレスゲートウェイは機能します)-この仮説を確認または非難するにはどうすればよいですか?

ありがとう

(var/exception.log の最初の 8 行と、参照されているコード スニペット、および Mage::log() 関数によって生成された var/system.log からのいくつかの追加コンテンツ。)

exception 'Mage_Core_Exception' with message 'There was an error processing your order.
Please contact us or try again later.' in /var/www/magento/app/Mage.php:563

スタックトレース:

#0 /var/www/magento/app/code/core/Mage/Paypal/Model/Api/Nvp.php(974):
  Mage::throwException('There was an er...')

if (!$this->_validateResponse($methodName, $response)) {
        Mage::logException(new Exception(
            Mage::helper('paypal')->__("PayPal response hasn't required fields.")
        ));
        Mage::throwException(Mage::helper('paypal')->__('There was an error processing
your order. 
Please contact us or try again later.'));
    }

#1 /var/www/magento/app/code/core/Mage/Paypal/Model/Api/Nvp.php(648):

 Mage_Paypal_Model_Api_Nvp->call('DoDirectPayment', Array)
 public function callDoDirectPayment()
 {
        Mage::log("hello world");

// 2013-03-20T00:04:50+00:00 DEBUG (7): ハローワールド

  $request = $this->_exportToRequest($this->_doDirectPaymentRequest);

        Mage::log($request);

// 2013-03-20T00:04:50+00:00 DEBUG (7): 配列

    $this->_exportLineItems($request);
    if ($this->getAddress()) {
        $request = $this->_importAddresses($request);
    }
    $response = $this->call(self::DO_DIRECT_PAYMENT, $request);

        Mage::log($response);

(

[PAYMENTACTION] => 承認

[IPアドレス] => 81.98.95.116

[RETURNFMFDETAILS] => 1

[AMT] => 0.50

[通貨コード] => GBP

[INVNUM] => 100000063

[NOTIFYURL] => http://www.store.com/paypal/ipn/

[メール] => hello@email

[クレジットカー] => xxxxxxxxxxxxxx

[EXPDATE] => xxxxxx

[CVV2] => XXX

[問題番号] =>

)

$this->_importFromResponse($this->_doDirectPaymentResponse, $response);

Mage::log("nothing to see here")

// これは system.log に何も返さないので、ここが失敗のポイントだと思います

}




#2 /var/www/magento/app/code/core/Mage/Paypal/Model/Direct.php(343):  
Mage_Paypal_Model_Api_Nvp->callDoDirectPayment()


 // call api and import transaction and other payment information
 /**
 * Place an order with authorization or capture action
 *
 * @param Mage_Sales_Model_Order_Payment $payment
 * @param float $amount
 * @return Mage_Paypal_Model_Direct
 */
 protected function _placeOrder(Mage_Sales_Model_Order_Payment $payment, $amount)
 { //...........(343)

    $api->callDoDirectPayment();
    $this->_importResultToPayment($api, $payment);

    try {
        $api->callGetTransactionDetails();
    } catch (Mage_Core_Exception $e) {
        // if we recieve errors, but DoDirectPayment response is Success, then set    
              Pending status for transaction
        $payment->setIsTransactionPending(true);
    }

(343)

    $this->_importResultToPayment($api, $payment);
    return $this;
}


#3 /var/www/magento/app/code/core/Mage/Paypal/Model/Direct.php(178):     
 Mage_Paypal_Model_Direct->_placeOrder(Object(Mage_Sales_Model_Order_Payment), 45)  
#4 /var/www/magento/app/code/core/Mage/Sales/Model/Order/Payment.php(1026): 
 Mage_Paypal_Model_Direct->authorize(Object(Mage_Sales_Model_Order_Payment), 45)
#5 /var/www/magento/app/code/core/Mage/Sales/Model/Order/Payment.php(311): 
 Mage_Sales_Model_Order_Payment->_authorize(true, 45)
#6 /var/www/magento/app/code/core/Mage/Sales/Model/Order.php(855):   
 Mage_Sales_Model_Order_Payment->place()
#7 /var/www/magento/app/code/core/Mage/Sales/Model/Order.php(1073):  
 Mage_Sales_Model_Order->_placePayment()
#8 [internal function]: Mage_Sales_Model_Order->place()
4

1 に答える 1