Modul für Kundenrabatte gesucht

Thema wurde von Darkstar-Fireworks, 20. September 2023 erstellt.

  1. Darkstar-Fireworks
    Darkstar-Fireworks Neues Mitglied
    Registriert seit:
    20. September 2023
    Beiträge:
    4
    Danke erhalten:
    0
    Danke vergeben:
    1
    Guten Tag,

    ich betreibe zur Zeit einen Gambio Cloud Shop. Mir ist bewusst, dass ich wahrscheinlich auf Gambio Stand alone wechseln muss.
    Zu meiner Frage. Ich möchte gerne individuelle Rabatte für einzelne Kunden vergeben, ohne einzelne Kunden in separate Kundengruppen zu schieben. Im besten Fall auch unabhängig vom maximal eingestellten Rabatt. Weitere Anforderungen wäre noch eine am Umsatz orientierte Rabattstaffel pro Kunde.
    Gibt es so ein Modul oder ist das sogar mit Bordmitteln möglich?

    Vielen Dank und viele Grüße
    Torsten
     
  2. Kai Schoelzke
    Kai Schoelzke Beta-Held
    Registriert seit:
    30. März 2016
    Beiträge:
    4.076
    Danke erhalten:
    646
    Danke vergeben:
    307
  3. Anonymous
    Anonymous Erfahrener Benutzer
    Registriert seit:
    30. Juni 2017
    Beiträge:
    459
    Danke erhalten:
    52
    Danke vergeben:
    75
    Du kannst doch ganz normal über Gambio einen persönlichen Rabatt Code für jeden Kunden erstellen den der Kunde begrenzt oder unbegrenzt nutzen kann! Wo ist das Problem? Du solltest dein Vorhaben mal etwas genauer erklären. Ist zu schwammig. Umsatzabhängig kannst du einen Mindestbestellwert angeben.
     
  4. Kai Schoelzke
    Kai Schoelzke Beta-Held
    Registriert seit:
    30. März 2016
    Beiträge:
    4.076
    Danke erhalten:
    646
    Danke vergeben:
    307
    Gute Idee, dann müssten aber die Kunden jedes mal den Code eingeben:confused:
     
  5. Anonymous
    Anonymous Erfahrener Benutzer
    Registriert seit:
    30. Juni 2017
    Beiträge:
    459
    Danke erhalten:
    52
    Danke vergeben:
    75
    Schon, aber so wäre es machbar. ;)
     
  6. Darkstar-Fireworks
    Darkstar-Fireworks Neues Mitglied
    Registriert seit:
    20. September 2023
    Beiträge:
    4
    Danke erhalten:
    0
    Danke vergeben:
    1
    Danke für die Antworten.
    Ich habe nochmal darüber nachgedacht, was ich genau benötige. Eigentlich nur eine Rabattstaffelung gemessen am Jahresumsatz. D.h. bei der Rabattierung müsste immer der Jahresumsatz abgefragt werden und nach einer vorgegebenen Staffelung zum Basisrabatt addiert werden. Dabei wäre es erstmal egal, ob auf Kunden-oder Produktebene, sofern man im Produkt Kunden oder Kundengruppen an-und abwählen kann, für die eine Rabattstaffelung in Frage kommt. Ansonsten muss ich nach jeder Bestellung en Umsatz prüfen und dementsprechend Gutscheincodes verteilen.

    VG Torsten
     
  7. Anonymous
    Anonymous Erfahrener Benutzer
    Registriert seit:
    5. Mai 2022
    Beiträge:
    2.335
    Danke erhalten:
    1.019
    Danke vergeben:
    389
    In der Cloud ist das nicht machbar.
    Im selfhosting kannst du dir da mit Sicherheit etwas programmieren lassen.
     
  8. WinHelp GmbH
    WinHelp GmbH Erfahrener Benutzer
    Registriert seit:
    2. April 2019
    Beiträge:
    82
    Danke erhalten:
    27
    Danke vergeben:
    22
    #8 WinHelp GmbH, 22. September 2023
    Zuletzt bearbeitet: 25. September 2023
    Hallo Torsten,

    es sieht so aus, als würde der Cloudshop für dieses Problem nicht geeignet sein.

    Wir hatten bereits einen ähnlichen Fall und eine Lösung gefunden. Wir haben eine kleine PHP-Datei erstellt, die täglich per Cronjob ausgeführt wurde. Diese Datei hat automatisch Kunden in die entsprechenden Kundengruppen verschoben, basierend auf einer Datenbankabfrage.

    Gerne teile ich den Code dafür, aber du müsstest die Schwellenwerte und die IDs der Kundengruppen entsprechend anpassen. Wir haben keine eigene Benutzeroberfläche dafür entwickelt, sondern die Logik direkt in die Datei integriert. Das bedeutet, dass die Programmierung je nach den spezifischen Anforderungen angepasst werden muss.

    Dies hat einen entscheidenden Vorteil: Durch das Simulieren des Verschiebens der Kunden in die Kundengruppen greift man minimal in den Shop ein, was die Anfälligkeit für Updates oder ähnliche Änderungen minimiert.
     
  9. FRAGO
    FRAGO Erfahrener Benutzer
    Registriert seit:
    5. Dezember 2019
    Beiträge:
    1.063
    Danke erhalten:
    340
    Danke vergeben:
    195
    coole Idee! gute Umsetzung..
     
  10. Anonymous
    Anonymous Erfahrener Benutzer
    Registriert seit:
    31. März 2020
    Beiträge:
    204
    Danke erhalten:
    89
    Danke vergeben:
    241
    Ansonsten bietet @Dominik Späte für selfhosted shops einen Treuebonus an. Den kann man sich auch selbst konfigurieren. Damit sichert man sich nachweislich auch immer wieder Folgekund:innen. Ich gebe zum Beispiel 5% Treuerabatt auf die Bestellungen (bei registrierten Kund:innen). 2 Wochen nach der erfolgreich versendeten Bestellung bekommen die Kund:innen eine Mail, dass der Betrag auf dem Kundenkonto gutgeschrieben ist und im bei der Bestellung wird immer angezeigt, dass man den Betrag dann nutzen kann. Richtig nice.
     
  11. tannenhof_imshausen
    tannenhof_imshausen Erfahrener Benutzer
    Registriert seit:
    26. Oktober 2022
    Beiträge:
    119
    Danke erhalten:
    36
    Danke vergeben:
    49
    Damit funktioniert es doch wunderbar auch im Cloud-Shop!
    Unterhalb von /media/content/ z.B. kannst Du eine PHP speichern, die per Cronjob ausgeführt werden kann.
     
  12. WinHelp GmbH
    WinHelp GmbH Erfahrener Benutzer
    Registriert seit:
    2. April 2019
    Beiträge:
    82
    Danke erhalten:
    27
    Danke vergeben:
    22
    Mit Cloudshops haben wir bislang nur wenig Berührungen gehabt, da wir unsere Module ohnehin nicht im Cloudshop einsetzen können.

    Ich habe dennoch mal den Code herausgesucht, wer möchte kann sich gerne probieren.

    PHP:
    require_once('includes/application_top.php');

    $sql "
        SELECT
            o.customers_id,
            SUM(ot.value) AS total_amount
        FROM orders o
        JOIN orders_total ot ON (ot.orders_id = o.orders_id)
        WHERE ot.class = 'ot_total'
        AND o.orders_status NOT IN ('99') -- Ausgeschlossene Bestellstatus mit Komma getrennt ergänzen (99 = Storniert)
        AND o.date_purchased >= (NOW() - INTERVAL 12 MONTH) -- Werte alle Bestellungen der letzten 12 Monate aus.
        AND o.customers_status NOT IN ('0', '1') -- Ausgeschlossene Kundenstatus mit Komma getrennt ergänzen (0 = Gäste, 1 = Admin)
        AND o.customers_id NOT IN ('0') -- Ausgeschlossene Kunden mit Komma getrennt ergänzen (0 = Gelöschte Kunden)
        GROUP BY o.customers_id
    "
    ;

    $result xtc_db_query($sql);

    while (
    $row xtc_db_fetch_array($result)) {
        
    $customer_id $row['customers_id'];
        
    $total_amount $row['total_amount'];

        
    // Kunden ohne Rabatt ggf. anpassen
        
    if ($total_amount 1000) {
            
    xtc_db_perform(
                
    'customers',
                [
                    
    'customers_group_id' => // ID der Kundengruppe ohne Rabatt
                
    ], 'update',
                
    "customers_id = {$customer_id}"
            
    );
            continue;
        }

        
    // Den if Block so oft wiederholen bis alle gewünschten Rabattstaffeln abgedeckt sind
        // Kunden mit Rabattstaffel ggf. anpassen
        
    if ($total_amount 2000) {
            
    xtc_db_perform(
                
    'customers',
                [
                    
    'customers_group_id' => // ID der Kundengruppe ohne Rabatt
                
    ], 'update',
                
    "customers_id = {$customer_id}"
            
    );
            continue;
        }
    }
     
  13. Darkstar-Fireworks
    Darkstar-Fireworks Neues Mitglied
    Registriert seit:
    20. September 2023
    Beiträge:
    4
    Danke erhalten:
    0
    Danke vergeben:
    1
    Danke für die Antworten, habe keine Benachrichtigung für neue Beiträge bekommen. Ich werde mich mal daran probieren.
    Viele Grüße
     
  14. WinHelp GmbH
    WinHelp GmbH Erfahrener Benutzer
    Registriert seit:
    2. April 2019
    Beiträge:
    82
    Danke erhalten:
    27
    Danke vergeben:
    22
    Kleiner Nachtrag wenn die Datei unter "/media/content/" platziert wird, muss der Pfad für die application_top angepasst werden.

    --> require_once('../../includes/application_top.php');