WooCommerce B2B Market: Steuerberechnung für Kundengruppen deaktivieren

Jan 13, 2022 Code

Nachfolgend findet Ihr ein weiteres praktisches Snippet im Zusammenhang mit B2B Market. Nutzt man das WooCommerce Plugin B2B Market ohne German Market ist es nicht möglich die UID automatisch validieren zu lassen und anschließend die Steuerberechnung im Checkout- Prozess zu deaktivieren. Die Preise im Shop selbst werden auf Wunsch mit Boardmitteln von B2B Market in Netto angezeigt, sobald man den Checkout startet werden die Steuern aber wie gewohnt mitberechnet. Wer kein Problem damit hat UID Nummern händisch zu validieren, kann die folgende Funktion nutzen um ausgewählte Kundengruppen von der Berechnung der Steuer zu befreien.

Der Code kann wie gewohnt in eure functions.php, oder z.B. über das "Snippets" Plugin aktiviert werden. Das Array $b2bRoles füllt Ihr einfach mit den Slugs eurer B2B Market Gruppen, mehr bedarf es nicht. 

function osulzer_excempt_group_from_vat($post_data) {


    # hier die slugs der b2b gruppen eintragen deren Kunden keine steuern zahlen
    $b2bRoles = [
        'role_1',
        'role_2',
    ];

    $userdata = is_user_logged_in() ? get_userdata(get_current_user_id()) : false;

    if($userdata) {

        $isB2B = count(array_intersect($userdata->roles, $b2bRoles)) != 0;

        if($isB2B) {

            # wir setzen den user auf steuerbefreit
            WC()->customer->set_is_vat_exempt( true );

        }

    }


}

add_action( 'woocommerce_checkout_update_order_review', 'osulzer_excempt_group_from_vat' );

Gerne unterstütze ich dich bei der Umsetzung deines B2B Shops. Melde dich einfach mit deinem Anliegen im Zuge eines unverbindlichen Erstgesprächs bei mir. 

Kommentare

Noch keine Kommentare

Deine Antwort

Ihre Antwort wird mit dem von Ihnen gewählten Namen veröffentlicht. Mehr Informationen finden Sie in unserer Datenschutzerklärung

Deine Meinung

Ihr Kommentar wird mit dem von Ihnen gewählten Namen veröffentlicht. Mehr Informationen finden Sie in unserer Datenschutzerklärung
Nachricht wird gesendet...

Kontaktformular

Ihre Daten werden ausschließlich zur Bearbeitung Ihrer Anfrage verarbeitet. Mehr Informationen erhalten Sie in unserer Datenschutzerklärung

Direkt

office@osulzer.at
+43 660 370 3392
Bürozeiten:
Montag - Freitag: 9 - 19 Uhr
Samstag: 9 - 16 Uhr

Im Notfall auch am Wochenende erreichbar

Melde an...

Login

Passwort vergessen?

Cookie Einstellungen

Sie haben die Möglichkeit Cookies zu deaktivieren die nicht unbedingt von dieser Website benötigt werden.

Benötigte Cookies

Diese Seite nutzt Cookies um die Nutzererfahrung zu verbessern, Funktionen bereitzustellen und um die allgemeine Sicherheit für Besucher und Kunden zu verbessern. Diese Option ist für die Funktionstüchtigkeit unserer Website erforderlich und kann deshalb nicht deaktiviert werden.
Details
"osulzer_session" Das Session Cookie speichert wichtige Einstellungen die Sie während des Besuchs auf dieser Seite treffen. Dieses Cookie speichert keine persönlichen Daten und wird nicht für statistische Zwecke eingesetzt.
"XSRF-TOKEN" Für Ihren Besuch wird Ihnen ein einzigartiger temporärer Sicherheitsschlüssel zugewiesen der bei Eingabefeldern (Kontaktformular, Kommentarformular) abgefragt wird. Dies erhöht die Sicherheit aller Anfragen.
"osulzer_cookie_consent" Speichert Ihre Privatspähre-Einstellung zu optionalen Cookies auf dieser Website

Analyse und Benutzerfreundlichkeit

Um Besucherzahlen auf unserer Website analysieren zu können nutzen wir das Analyse-Tool Matomo. Dieses Tool erzeugt Cookies die dabei helfen das Besucherverhalten zu analyiseren. Dadurch ist es uns möglich den Aufbau unserer Seite zu optimieren und wichtige Informationen schneller und besser zur Verfügung zu stellen. Alle erhobenen Statistiken werden anonymisiert abgespeichert.
Details
"_pk_id.***", "_pk_ses***", "PIWIK_SESSID" Die folgenden Cookies werden gesetzt um Ihren Besuch auf dieser Website statistisch auswerten zu können. Ihre IP-Adresse wird dabei anonymisiert und ist dadurch nicht mit Ihnen in Verbindung zu bringen. Als Beispiel, die IP-Adresse 192.168.10.155 wird anonymsiert indem die letzten 2 bytes maskiert werden. Die IP-Adresse wird in unserem System also als 192.168.xxx.xxx gespeichert.