2011-01-12 35 views
15

Tôi phải xuất khẩu lệnh vào một tập tin, đây là mã của tôi để đi qua các đơn đặt hàng:cách nhận thông tin thanh toán trên Magento?

$orders = Mage::getModel('sales/order')->getCollection() 
    ->addAttributeToSelect(array('status', 'ncm')) 
    ->addFieldToFilter(
     array(
      array('attribute' => 'status', 'eq' => 'complete') 
     ) 
    ); 

    $order = $orders->getFirstItem(); 

    //print_r($order); 
    //exit; 
    //foreach($orders as $order){ 
    $id = $order->getIncrementId(); 

    $payment = $order->getPayment(); 
    $method = $payment->getMethodInstance(); 

    print_r($payment); 
    //} 

tôi cần in một số thông tin về việc thanh toán như phương pháp, số tiền, bao nhiêu tháng nó đã bị tách, nếu là thẻ tín dụng, tôi cần id chuyển đổi của giao dịch và do đó, danh sách sẽ xuất hiện trên

làm cách nào tôi có thể làm điều đó?

Trả lời

19

Tôi nghĩ rằng nó sẽ được

$payment = $order->getPayment(); 

Nó sẽ lấy ví dụ thanh toán trật tự hiện hành.

+2

Tôi đã sử dụng mã đó nhưng tôi không thể tìm cách truy xuất thông tin cụ thể đó. Tôi sẽ giúp tôi tìm ra nó? – Jonathan

+1

Rất tiếc, không thấy mã đó. Hãy thử $ order-> getPayment() -> getAdditionalInformation(); - đây là thanh toán + thông tin giao dịch –

+5

$ order-> getPayment() -> getMethodInstance() -> getPaymentInfo(); –

19
//Get Payment 
$payment = $order->getPayment() 

//Get card type 
$payment->getData('cc_type') 

//Get Payment Info 
$payment->getMethodInstance()->getCode(); 
$payment->getMethodInstance()->getTitle(); 

//Get Credit Card info 
$payment->getMethodInstance()->getCardsStorage() 
$payment->getMethodInstance()->getCardsStorage()->getCards() //array() 
+0

' $ cards = ...-> getCards(); $ card = $ cards ['transaction_id']; echo $ card-> getCcType(); echo $ card-> getCcLast4(); ' – user3338098

+0

thông tin thẻ khớp với thông tin có sẵn trong cột' additional_information' của bảng 'sales_flat_order_payment' – user3338098

+0

Có cách nào để lấy ID (số) của phương thức không? –

4

Để lấy mã phương pháp duy nhất đó là xa an toàn hơn để sử dụng

$order->getPayment()->getMethod(); 

Bỏ qua đối tượng dụ mà có thể tạo ra ngoại lệ nếu các phương thức thanh toán đã được gỡ bỏ.

Các vấn đề liên quan