Magento 1.9.0.1 पेपैल त्रुटि कार्ट आइटम राशि के योग आदेश मात्रा से मेल नहीं खाते (# 10413:


9

क्या यह मैगनेटो 1.9.0.1 का उपयोग कर रहा है, ने बॉक्स एक्सप्रेस पेपाल को एकीकृत कर दिया है, इसके अलावा आपके पास प्लगइन है रिवार्ड पॉइंट्स रिवार्ड पॉइंट्स के रूप में कुछ प्रोडक्टसेन खरीदने के लिए जो कि जब यह एकीकरण हो गया और रेक्वेसा के पॉइंट्स का उपयोग किए बिना प्रोडक्ट्स खरीदे, तो पेपाल द्वारा भुगतान निगुन को समस्या के बिना किया जा सकता है, लेकिन जब ग्राहक ऑर्डर की पुष्टि करते समय इनाम अंक, एक त्रुटि का उपयोग करते हैं, जो कि है

पेपाल के गेटवे ने अनुरोध को अस्वीकार कर दिया। गाड़ी के आइटम के योग आम्र्स एमाउंट्स ऑर्डर से मेल नहीं खाते (# 10413: लेन-देन से इनकार कर दिया क्योंकि अमान्य तर्क के कारण विवरण के लिए अतिरिक्त त्रुटि संदेश देखें।)

इस त्रुटि का प्रयास करने और उसे ठीक करने के लिए नेट खोज रहा हूं, मेरा सुझाव है कि आप फ़ाइल को संशोधित कर सकते हैं। कोई भी दो कोड जो मैं नीचे डाल रहा हूं, उन्हें जोड़ने के लिए:

पहला कोड

// हैक प्रारंभ

$totalValue = $request['TAXAMT'] + $request['ITEMAMT'];
$finalValue = $totalValue - $request['AMT'];

if($request['SHIPPINGAMT'] > 0) {

$request['SHIPPINGAMT'] = ($request['AMT'] - ($request['TAXAMT'] + $request['ITEMAMT']));
$totalValue = $request['TAXAMT'] + $request['ITEMAMT'] + $request['SHIPPINGAMT'];
$finalValue = $totalValue - $request['AMT'];

}

if($request['AMT'] != $totalValue) {

if($totalValue > $request['AMT']) {
$request['TAXAMT'] = $request['TAXAMT'] - $finalValue;
}elseif($totalValue < $request['AMT']) {
$request['TAXAMT'] = $request['TAXAMT'] + $finalValue;
}else{
$request['AMT'] = $request['TAXAMT'] + $request['ITEMAMT'];
}
}

// हैक एंड

दूसरा कोड

    // Check discount
$lineAmt = 0;
$discount = 0;
$line = 0;
$discountIndex = 0;
while(isset($request["L_AMT{$line}"])) {
if($request["L_NAME{$line}"] == 'Discount') {
$discount += $request["L_AMT{$line}"];
$discountIndex = $line;
}
else {
$lineAmt += $request["L_AMT{$line}"];
}
$line++;
}

if($discount) {
if($discount + $lineAmt != $request['ITEMAMT']) {
// Do correction
$request["L_AMT{$discountIndex}"] = ($request['ITEMAMT'] - $lineAmt);
} 
} else {
// Check item amount adds up
$correctItemAmt = $request['AMT'] - $request['SHIPPINGAMT'] - $request['TAXAMT'];
if($correctItemAmt != $request['ITEMAMT']) {
$request['ITEMAMT'] = $correctItemAmt;
}

//समाप्त

किसी भी कोड को जोड़ना, यदि अनुमति दी गई है और उस छूट बिंदु के लिए भुगतान करना है, लेकिन समस्या यह है कि जब आप पेपल भुगतान देखते हैं, तो कुल राशि के बजाय छूट की राशि चार्ज कर रहा है, उस समय जब पेपैल ग्राहक लॉग इन करते हैं और गुजरते हैं expres box, सभी राशियाँ सही हैं और अंत में desglozadas हैं, कुल भुगतान राशि ठीक है, दुकान पर वापस लौटें और ऑर्डर की पुष्टि करें, जो कि सफलतापूर्वक किया गया है, लेकिन जब हम प्राप्त होने वाली राशि में paypal का भुगतान करते हैं, तो यह छूट देता है यह स्पष्ट करें

उत्पाद की लागत> 340 प्रति ग्राहक usuados> 125.5 से 20.54 के बराबर स्टोर में खरीदारी और पेपाल बॉक्सिंग की कुल खरीद> 319.46 पेपैल पर खाता देखने के लिए मात्रा recibda> 20.54

इसके अलावा, जब भुगतान अप्रयुक्त इनाम अंक खरीदते हैं, तो यह दर्शाता है कि लेनदेन की राशि वैध है, क्योंकि यह शून्य है।

मैं यह देखने के लिए व्याकुल हो गया हूं कि त्रुटि कोड या तो इसे संशोधित करने के लिए है, लेकिन मैं ऐसा नहीं कर सकता, न कि अगर किसी को पता है कि मुझे करना है या मैं मदद कर सकता हूं


Nav.php कहाँ स्थित है?
ग्यूसेप

आपका मसला हल हुआ या नहीं?
रत्न

जवाबों:


7

मुसीबत

समस्या संदेश से बहुत स्पष्ट है: आइटम की कुल राशि और कार्ट की कुल राशि जो कि पेपैल को भेजी जाती है, मेल नहीं खाती।
जैसा कि आपने इसे समझ लिया है, यह उस बिंदु विस्तार (या पेपैल एक्सप्रेस के लिए समर्थन की पूर्ण कमी) के साथ एक मुद्दा लगता है।

पसंदीदा समाधान

पहली बात जो मैं सुझा रहा हूं वह यह है कि आप रिवार्ड पॉइंट्स प्रो एक्सटेंशन के नवीनतम संस्करण का उपयोग करते हैं, क्योंकि वे पहले से ही पेपैल एक्सप्रेस के लिए समर्थन जोड़ सकते हैं या आपके द्वारा चलाए जा रहे मुद्दे को ठीक कर सकते हैं। यदि नहीं, तो उनके समर्थन से संपर्क करें और उनसे सहायता प्राप्त करने का प्रयास करें।

कस्टम समाधान

नोट: कृपया कभी भी एक मुख्य Magento फ़ाइल को संशोधित न करें। यदि कोई विकल्प नहीं है (एक पर्यवेक्षक, आदि का उपयोग करके) फ़ाइल को स्थानीय कोड पूल में कॉपी करें और वहां ओवरराइट करें।

आपको फ़ाइल ऐप / कोड / कोर / माज / पेपाल / मॉडल / कार्ट.फैप लाइन # 318 पर एक नज़र डालनी चाहिए । जैसा कि आप देख सकते हैं कि मैगेंटो वहां एक घटना भेज रहा है जिसका उपयोग आप इस समस्या को ठीक करने के लिए कर सकते हैं।
उस ईवेंट को देखने से आप वास्तविक Mage_Paypal_Model_Cart ऑब्जेक्ट को एक्सेस कर पाएंगे , जिसमें कार्ट के आइटम और योग शामिल हैं जो पेपैल को भेजे जाएंगे।

मुझे क्षमा करें, लेकिन यह नहीं पता कि रिवार्ड पॉइंट्स प्रो एक्सटेंशन आंतरिक रूप से कैसे काम करता है, मैं आपको कोड और सब कुछ के साथ सटीक मार्गदर्शन नहीं दे सकता। मूल रूप से, आपको यह समझने की कोशिश करनी चाहिए कि ऐप / कोड / कोर / मैज / पेपल / मॉडल / कार्ट.प में _render () और _validate () विधियों में क्या होता है और सुनिश्चित करें कि बिंदुओं का उपयोग करने से छूट सही तरीके से लागू है।

इसके अलावा, मैं कोड के बाद के अंतिम भाग को ठीक से समझ नहीं पाया, लेकिन कृपया मुझे बताएं कि क्या आपके कोई प्रश्न हैं।


उत्कृष्ट समाधान, यह पूरी तरह से काम करता है, लेकिन एक और संशोधन की आवश्यकता होती है। उसी php फ़ाइल पर एक और विधि _addRegularItem () है। AMount भी वहाँ उल्लेख किया। उसको संशोधित करना है।
बटरफ्लाई

0

समस्या कोड में नहीं है, लेकिन यह कॉन्फ़िगरेशन समस्या है। बस यह सुनिश्चित करें कि आपका टैक्स उप-योग के बजाय सबटोटल पर लागू है। संलग्न स्क्रीनशॉट को चेक करें। सुनिश्चित करें कि आपकी "ट्रांसफर कार्ट लाइन आइटम" हां में भी "ट्रांसफर शिपिंग विकल्प" के लिए हां में सेट हैं।यहां छवि विवरण दर्ज करें


0

हमारे पास समान पेपाल-त्रुटियां थीं और पता चला, कि जब कोई लेख "कर-मुक्त" होता है तो समस्या दूर हो जाती है। इसलिए हमने आंशिक भुगतान प्लगइन को निष्क्रिय कर दिया, जिसने कुछ योगों को पुनर्गठित किया। तो इससे हमारे मामले में मदद मिली।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.