PM Pro PDF Invoice

Paid Membership Pro PDF Invoice: Lösung für Steuerprobleme mit PayPal Express Gateway

Das Paid Membership Pro Plugin ist ein weit verbreitetes Tool, um bezahlte Mitgliedschaften auf WordPress-Websites zu ermöglichen. Ein spezielles Feature dieses Plugins ist die Möglichkeit, PDF-Rechnungen zu generieren. Jedoch gibt es beim Einsatz von PayPal Express als Zahlungsgateway ein Problem mit der korrekten Ausweisung der Mehrwertsteuer. Dieser Blogbeitrag bietet Ihnen eine Lösung für dieses spezielle Problem.

Das Problem mit PayPal Express

Wenn Kunden über PayPal Express bezahlen, wird der gesamte Betrag inklusive der Mehrwertsteuer in einem Gesamtbetrag abgebucht. Das bedeutet, dass auf der generierten Rechnung keine separate Zeile für die Mehrwertsteuer erscheint. Dies kann vor allem in Ländern, in denen eine klare Ausweisung der MwSt. erforderlich ist, zu erheblichen Problemen führen.

Die Lösung: Anpassung über die functions.php oder ein Snippet Addon

Um das Problem zu umgehen, können wir einen eigenen Code in die functions.php des Themes oder, wie in unserem Fall, in ein Snippet Addon integrieren. Dieser Code erstellt zwei Shortcodes, {{netto}} und {{mwst}}, die dann in der PDF-Rechnung aufgerufen werden können.

Der Code-Snipper


function my_pmpro_pdf_custom_fields($data_array, $user, $order_data) {
    
    // Den Bruttobetrag aus dem order_data Objekt extrahieren
    $bruttoAsString = $order_data->total; 
    
    $bruttoBetrag = floatval(str_replace('€', '', $bruttoAsString));
    
    // MwSt berechnen
    $mwStSatz = 0.19;
    $nettoBetrag = $bruttoBetrag / (1 + $mwStSatz);
    $mwSt = $bruttoBetrag - $nettoBetrag;

    $data_array['{{mwst}}'] = number_format($mwSt, 2) . '€';
    $data_array['{{netto}}'] = number_format($nettoBetrag, 2) . '€';
    return $data_array;
}

add_filter('pmpro_pdf_invoice_custom_variables', 'my_pmpro_pdf_custom_fields', 10, 3);

Erklärung des Codes

Der obenstehende Code macht im Wesentlichen folgendes:

  1. Er extrahiert den Bruttobetrag aus dem order_data Objekt.
  2. Dann wird dieser Bruttobetrag von einem String in eine Gleitkommazahl umgewandelt, um mathematische Operationen durchzuführen.
  3. Der Mehrwertsteuersatz (hier als 19% angenommen) wird verwendet, um den Nettobetrag und die Mehrwertsteuer zu berechnen.
  4. Schließlich werden diese beiden Werte formatiert und zum Datenarray hinzugefügt, das dann in der Rechnung verwendet wird.

Abschluss

Das Paid Membership Pro Plugin bietet viele nützliche Funktionen für Mitgliedschaftsseiten. Doch manchmal müssen kleine Anpassungen vorgenommen werden, um den gesetzlichen Anforderungen oder den speziellen Bedürfnissen einer Website gerecht zu werden. Mit dem oben beschriebenen Code können Sie das Problem der Mehrwertsteuerausweisung bei PayPal Express Zahlungen elegant lösen.

Post teilen:

Brauchen Sie technische Unterstützung?

Ich stehe Ihnen zur Verfügung, um Ihnen bei allen technischen Problemen zu helfen. Kontaktieren Sie mich jetzt!