Hey @Jenny2308
Danke für die Frage und die automatische Generierung von Kundennummern basierend auf Ländercodes und fortlaufenden Nummern in Shopify ist nicht direkt in der Plattform derzeit möglich leider.
Aber
wir hier trotzdem ob es vielleicht anderen Lösungen gibt. Mit einigen Anpassungen und eventuell einer App oder einer maßgeschneiderten Entwicklungslösung kann es ggf. erreicht werden. Es gibt z.B. Apps im Shopify App Store, die sich mit Kundenverwaltung und Metadaten befassen. Du könntest nach Apps suchen, die Kundendaten automatisch generieren oder bearbeiten können.
Du könntest auch die Shopify API nutzen, um automatisch Kundennummern basierend auf den Kundendaten zu generieren.
- Bei der Registrierung eines neuen Kunden könntest du den Ländercode aus der Lieferadresse abrufen.
- Dann eine fortlaufende Nummerierung implementieren, indem du die Anzahl der bereits vorhandenen Kunden mit einem bestimmten Ländercode zählst und dann +1 hinzufügst.
- Kombiniere dann den Ländercode mit der fortlaufenden Nummer und speichere sie im zuvor erstellten Metadatenfeld “Kundennummer”.
Sobald du die Kundennummer in den Metadaten jedes Kunden gespeichert hast, kannst du Shopify Liquid verwenden, um diese Nummer in E-Mail-Benachrichtigungen und Rechnungen anzuzeigen.
Um die Shopify API zu nutzen und die Kundennummer über Liquid in E-Mails und Rechnungen anzuzeigen, musst du einige Schritte ausführen:
Zuerst den API-Zugriff erstellen: Du musst in deinem Shopify Admin-Bereich einen neuen privaten App-Zugriff erstellen, um API-Calls durchzuführen.
- Gehe zu “Apps” > “Private Apps verwalten” > “Neue private App erstellen”.
- Gib den notwendigen Details und Berechtigungen.
- Dann Kundennummer generieren: Wenn ein Kunde sich registriert oder einen Kauf tätigt, kannst du einen POST- oder PUT-Request an die Shopify API senden, um den Kunden zu aktualisieren und das Metadatenfeld “Kundennummer” mit dem entsprechenden Wert zu befüllen.
Die grundlegende Struktur des API-Calls sieht ungefähr wie folgendes aus:
import requests
# API-Zugriffsdetails
API_KEY = 'dein_api_key'
PASSWORD = 'dein_passwort'
STORE_NAME = 'dein_shop_name'
BASE_URL = f'https://{API_KEY}:{PASSWORD}@{STORE_NAME}.myshopify.com/admin/api/2022-04/'
# Kundennummer generieren
land_code = "DE" # Zum Beispiel
next_number = 12345 # Dies sollte dynamisch generiert werden, z.B. durch Zählen der vorhandenen Kunden
kundennummer = f"{land_code}{next_number:07d}"
# API-Call zum Aktualisieren des Kunden
endpoint = f'customers/{kunden_id}.json' # kunden_id ist die ID des Kunden, den du aktualisieren möchtest
data = {
"customer": {
"id": kunden_id,
"metafields": [
{
"key": "kundennummer",
"value": kundennummer,
"value_type": "string",
"namespace": "my_fields"
}
]
}
}
response = requests.put(BASE_URL + endpoint, json=data)
Liquid verwenden, um die Kundennummer in der E-Mail-Benachrichtigungen anzuzeigen:
Wenn du eine E-Mail-Benachrichtigung in Shopify bearbeitest (z.B. die Bestellbestätigungs-E-Mail), kannst du den Wert des Metadatenfelds so anzeigen:
{{ customer.metafields.my_fields.kundennummer }}
Wenn du eine Rechnungsvorlage in Shopify bearbeitest, kannst du denselben Liquid-Code wie oben verwenden, um die Kundennummer anzuzeigen.
Hinweis: Die Implementierung kann komplex sein, und somit könnte es hilfreich sein, einen Shopify-Entwickler zu Rate zu ziehen. Gerne kann ich bei Bedarf welche empfehlen! 