Support » Plugin: PayPal Plus for WooCommerce » Probleme mit Rückerstattung – Button fehlt

  • Resolved torbent

    (@torbentschechnegmailcom)



    Hallo,
    ich habe ein komisches Verhalten aktuell. Ich habe 2 WooCommerce Shops – auf beiden läuft Woocommerce PayPal Plus 1.0.8 und bei einem Shop sehe ich den Rückerstattungsbutton via PayPal Plus: https://d.pr/i/XzDeOg

    Bei dem anderen Shop fehlt dieser Button: https://d.pr/i/sMoqwS

    Beide Bestellungen sind mit PayPal Plus getätigt worden. Ich habe daraufhin mal in den Code geschaut, wann dieser Button gesetzt wird.

    Ich sehe dies in woocommerce/includes/admin/meta-boxes/views/html-order-items:298

    if ( false !== $payment_gateway && $payment_gateway->can_refund_order( $order ) ) {
    /* translators: refund amount, gateway name */
    echo '<button type="button" class="button button-primary do-api-refund">' . sprintf( esc_html__( 'Refund %1$s via %2$s', 'woocommerce' ), wp_kses_post( $refund_amount ), esc_html( $gateway_name ) ) . '</button>';
    }

    Daraufhin habe ich mir $payment_gateway ausgegeben, was false ist. $payment_gateway wird am Anfang der Datei definiert:

    
    // Get the payment gateway
    $payment_gateway = wc_get_payment_gateway_by_order( $order );
    

    Daraufhin habe ich mir diese Funktion angesehen: wc_get_payment_gateway_by_order() in includes/wc-order-functions.php und ein var_dump von $order->get_payment_method() gemacht, weil am Ende der Funktion dies aufgerufen wird: $payment_gateways[ $order->get_payment_method() ] zudem habe ich mir $payment_gateways vor dem return Statement ausgegeben.

    Nun habe ich folgendes Ergebnis:

    $order->get_payment_method() ist paypal_plus

    Die Array Struktur von $payment_gateways zeigt mir:

    [""]=>
      object(WCPayPalPlus\WC\PayPalPlusGateway)#28591 (25) {
        ["id"]=>
        NULL
        ["method_title"]=>
        NULL
        ["ipn":"WCPayPalPlus\WC\PayPalPlusGateway":private]=>

    Hier fehlt also der key paypal_plus, deswegen führt das return Statement in wc_get_payment_gateway_by_order letztlich dazu, dass die Variable $payment_gateways false ist und der Button fehlt.

    Weiß jemand, wie ich das lösen kann und woran das liegt?

Viewing 5 replies - 1 through 5 (of 5 total)
  • Plugin Author Andreas W.

    (@aweissinpsyde)

    Hallo @torbentschechnegmailcom,

    benutzt du bei beiden die gleiche PayPal Email und API Keys. Du solltest für den 2. Shop einen andere PayPal Empfänger-Email und API Keys verwenden.

    Gerne kannst du uns auch via einmal die Log Dateien mit dem Formular unter https://inpsyde.com/paypal-plus-fuer-woocommerce-pdf-handbuch-und-support/ senden

    torbent

    (@torbentschechnegmailcom)

    Hallo Andreas,
    eine Empfänger-Email Adresse gebe ich bei PayPal Plus in den Plugin Einstellungen nicht an – nur einen API Key (Client und Secret). Hier habe ich mit einem PayPal Account unter developer.paypal.com zwei API Keys erstellt – für jede Seite eine. Das sollte i.O sein?

    Plugin Author Andreas W.

    (@aweissinpsyde)

    Hallo @torbentschechnegmailcom,

    das ist so richtig. Der Button wird aber von WooCommerce generiert und unser Plugin. Um welche Produkte handelt es sich denn. Hast du das Formular bereits ausgefüllt? Kannst du mri evtl. dann auch die Log Files etc. zuschicken?

    Vielen Dank

    torbent

    (@torbentschechnegmailcom)

    Hallo Andreas,
    ich bin dabei 2 Log-Dateien zu schicken, auch wenn ich dort nichts ungewöhnliches sehen kann. Wie kann ich die Dateien anhängen? Ich habe es mit .log und .txt versucht:

    
    paypal_plus-2018-08-28-ccbea648ac98d61216d15e63adc3d14e.txt - Sorry, this file extension is not permitted for security reasons.
    paypal_plus-2018-08-28-878e081a720a92d5b97930f46cc19296.txt - Sorry, this file extension is not permitted for security reasons.
    paypal_plus-2018-08-28-ccbea648ac98d61216d15e63adc3d14e.log - Sorry, this file extension is not permitted for security reasons.
    paypal_plus-2018-08-28-878e081a720a92d5b97930f46cc19296.log - Sorry, this file extension is not permitted for security reasons.
    Plugin Author Andreas W.

    (@aweissinpsyde)

    Hallo @torbentschechnegmailcom,

    send einfach eine Email an paypalplus@inpsyde.com und hänge die Dateien mit an.

    Vielen Dank
    Andreas

Viewing 5 replies - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.