Magento paypal ödeme yöntemi ile programlı sipariş oluşturmak


11

Şu anda iki bağımsız magento web sitemiz var. Biri vitrin, diğeri arka uç gibi davranıyor. Kullanıcı ön uçta sipariş verebilir.

Aynı sırada programlı olarak arka uçta oluşturmaya çalışıyorum. Kullanıcı checkmoödeme yöntemi ile ödeme yaparken çalışır. Ancak kullanıcı PayPal üzerinden ödeme yaptığında çalışmaz. PayPal ödeme yöntemlerini kullanarak programlı olarak sipariş nasıl oluşturabileceğimizi bilen var mı? Bu mümkün mü değil mi?

$quote->getPayment()->importData(array(3) {
    [method] => paypal_express
    [last_trans_id] => 65Y31421KL2753028
    [additional_information] => Array
    (
        [paypal_express_checkout_shipping_method] => 
        [paypal_payer_id] => 5LX84SUFY39L4
        [paypal_payer_email] => abbas-buyer-2@bluewisesoft.com
        [paypal_payer_status] => verified
        [paypal_address_status] => Confirmed
        [paypal_correlation_id] => b78b4e5e6e527
        [paypal_express_checkout_payer_id] => 5LX84SUFY39L4
        [paypal_express_checkout_token] => EC-7P402752023166448
        [paypal_express_checkout_redirect_required] => 
        [paypal_protection_eligibility] => Eligible
        [paypal_payment_status] => pending
        [paypal_pending_reason] => authorization
    )
});

Hata: PayPal ağ geçidi isteği reddetti. Bu belirteç için başarılı bir işlem zaten tamamlandı (# 10415: Geçersiz bir bağımsız değişken nedeniyle işlem reddedildi. Ayrıntılar için ek hata iletilerine bakın).


Yanıtlar:


4

Gerçek bir ödeme yapmanız gerekeceğinden, gerçek PayPal ödeme yöntemiyle sipariş oluşturmak mümkün değildir. Bu nedenle PayPal isteği reddediyor; ayrıca, doğrulayabilmeleri için PayPal'a (isteği başlatmak için) bir jeton göndermeniz gerekir.

Aslında ikinci bir ödemeye ihtiyacınız olmadığından, ancak kayıt tutma için (okuduğum kadarıyla) ihtiyaç duyduğunuzdan, diğer Magento örneği için sahte bir PayPal ödeme yöntemi oluşturmak ve bunu aktarırken bir ödeme yöntemi olarak ayarlamak akıllıca olabilir Emir.

Inchoo zaten bunu ayrıntılı olarak açıkladığı gibi (sadece Magento bölümünü uygulamanız gerekeceği için kulağa geldiği kadar zor değil) Burada kopyalamaya / yapıştırmayacağım ama sadece bağlantıyı vereceğim; http://inchoo.net/magento/how-to-create-magento-payment-module/

Sadece 'paypal_proxy_payment' ya da bir şey olarak adlandırın ve bu yöntemi kullanın ve hazırsınız!


2

Cevabımda bir bağlantı paylaşıyorum ve lütfen bunu gözden geçirin ve kodu özel denetleyicinize yapıştırın, sonra ödeme yöntemini değiştirmeniz gerekir

içeride

$this->orderData = array(
    'session'       => array(
        'customer_id'   => $this->_sourceCustomer->getId(),
        'store_id'      => $this->_storeId,
        ),
    'payment'       => array(
        'method'    => 'checkmo',
         ),
    );

Bunun yerine checkmoödeme yönteminizi yazabilirsiniz.

Lütfen şuna bir göz at.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.