Author Topic: Abhilfe: Paypal - Meldung: Rechnung ist bereits bezahlt  (Read 3318 times)

jacobi22

  • Guest
Abhilfe: Paypal - Meldung: Rechnung ist bereits bezahlt
« on: February 06, 2013, 04:43:59 PM »
eine Kundin von mir hat aktuell 4 einzelne Bakery-Shops auf unterschiedlichen Domains, allerdings läuft die gesamte Abrechnung über ein gemeinsames Paypalkonto.
Im Verlauf der Kaufabwicklung wird u.a. die aktuelle Order-ID als Rechnungsnummer an Paypal übermittelt. Paypal kontrolliert, ob solch eine Rechnungsnummer in der Kontoführung existiert und wie der Status ist.
Durch die gemeinsame Nutzung eines Kontos in 4 Shops ist es möglich, das von Shop A eine Rechnungsnummer gesendet wird, die Shop B schon verarbeitet hat, weil dort z.b. mehr Produkte gekauft wurden. In diesem Fall gibt Paypal eine Meldung zurück, das diese Rechnung bereits bezahlt ist und bricht den Zahlungsvorgang ab.

Abhilfe schafft eine kleine Änderung in der Datei modules / bakery / payment_methods / paypal / processor.php.
Ab Zeile 83 der 1.60er Bakery-Version wird dort der Array mit den Sendedaten zusammengestellt. Notwendig ist eine Änderung bei 'invoice", z.b. durch Vorsetzen eines shop-spezifischen Kürzels. Nachfolgend ein Beispiel

Originalcode
ab Zeile 83
Code: [Select]
// Make array with data sent to payment gateway
$post_data = array(
        'cmd'           => '_ext-enter',
        'redirect_cmd'  => '_xclick',
        'business'      => $value_1,
        'item_name'     => $MOD_BAKERY[$payment_method]['TXT_AGGREGATED_ITEMS'],
        'invoice'       => $_SESSION['bakery']['order_id'],

hier mit Voranstellung eines Kürzel namens KK (letzte Zeile im Codebeispiel)

Code: [Select]
// Make array with data sent to payment gateway
$post_data = array(
        'cmd'           => '_ext-enter',
        'redirect_cmd'  => '_xclick',
        'business'      => $value_1,
        'item_name'     => $MOD_BAKERY[$payment_method]['TXT_AGGREGATED_ITEMS'],
        'invoice'       => 'KK_'.$_SESSION['bakery']['order_id'],

Natürlich benötigt der nächste Shop dann ein anderes Kürzel
Diese Änderung ist nicht nötig, wenn in einer Bakery-Installation diverse "Untershops" z.b. für verschiedene Rubriken genutzt werden,
wäre aber sinnvoll, wenn man z.b. durch Umbenennen des Moduls eine zweite, neue! Installation von Bakery auf dem Server hat (z.b. bei mehrsprachigen Seiten

 

postern-length