Zum Hauptinhalt springen

Shopify

Wichtige Informationen

Unsere Schnittstelle zwischen Shopify und Afterbuy tauscht bidirektional Produktdaten, Bestellungen und Versanddaten aus. Im folgenden gehen wir genauestens auf die Funktionen der Middleware ein, sodass Sie jederzeit alle Infos rund um die Lösung zur Hand haben. Zu Beginn der Integration gehen wir immer unverbindlich und persönlich mit Ihnen ins Detail, um die Integration zu besprechen und die passende Lösung für Ihren Use Case zu finden.

Onboarding Termin buchen

Grundvoraussetzungen für die Schnittstelle

  • Shopify Shop (mit dem "Shopify Grow" Plan oder höher)
  • Afterbuy Account
  • Eine bestellte Afterbuy Schnittstelle (Shop & XML)

Prozess der Integration

  1. Shopify Onlineshop aufsetzen und einrichten
  2. Onboarding Meeting buchen und Integration im Detail besprechen
  3. AV Vertrag im Sinne der DSGVO & SEPA Mandat mit uns schließen
  4. Zugangsdaten ins Dashboard eintragen
  5. Gemeinsames Testing der Schnittstelle
  6. Erfolgreich Shopify und Afterbuy verbinden!

Shopify Shop

Ein professionell eingerichteter Shopify Onlineshop ist die Basis für eine erfolgreiche Schnittstellenanbindung. Der Shop kann noch in der Entwicklung sein oder bereits aktiv verkaufen. Unsere Integration geht von Afterbuy als führendem System aus, sodass die Produktdaten von Afterbuy zu Shopify übertragen und aktualisiert werden. Bereits bestehende Produkte werden auf Basis der identischen SKU aktualisiert und die Angebote somit übernommen. Wenn Sie Unterstützung bei der Einrichtung und Entwicklung Ihres Shopify Shops benötigen, stehen wir Ihnen als zertifizierter Shopify Partner gern zur Verfügung.

Voraussetzungen

Damit die Schnittstelle sauber arbeiten kann, benötigt diese in der Shopify Private App die folgenden Admin API-Zugriffsbereiche:

  1. write_products / read_products
  2. write_orders / read_orders
  3. read_locations
  4. write_merchant_managed_fulfillment_orders / read_merchant_managed_fulfillment_orders
  5. write_third_party_fulfillment_orders / read_third_party_fulfillment_orders
  6. write_inventory / read_inventory
  7. write_publications / read_publications
info

Sollte es sich bei dem Funktionsumfang der Schnittstelle lediglich um den Bestellimport handeln, werden die Berechtigungen write_products, read_locations, write_inventory, read_inventory, write_publications und read_publications nicht benötigt.

Funktionen

Die Schnittstelle beinhaltet in der Vollversion 4 Datentransfers, die dafür sorgen, dass der Shopify Shop wie ein weiterer Marktplatz direkt aus Afterbuy gesteuert und bedient werden kann.

  • Produktdaten aus Afterbuy zu Shopify übertragen (alle 15 Minuten, 1x täglich vollständiger Abgleich)
  • Bestände & Preise aus Afterbuy zu Shopify übertragen (alle 5 Minuten, 1x täglich vollständiger Abgleich)
  • Bestellungen aus Shopify zu Afterbuy importieren (in Echtzeit per Webhook)
  • Versanddaten aus Afterbuy zu Shopify exportieren (alle 15 Minuten)

Afterbuy- Account & Schnittstelle

Auf der Afterbuy Seite wird ein Account benötigt, der bereits aktiv ist. Anschließend muss dann eine Schnittstelle bei Afterbuy bestellt werden, damit wir von außen mit dem System kommunizieren können. Wir benötigen in einer bestellten Schnittstelle die Endpunkt „Shop & XML“ zusammengefasst. Es wird eine bestellte Afterbuy Schnittstelle ausschließlich für die Shopify Anbindung benötigt. Der Name der bestellten Schnittstelle muss "Shopify" oder "Shop" sein. Selbstverständlich unterstützen wir Sie bei Bedarf bei der Einrichtung.

Ihr persönliches Dashboard

Nach erfolgreichem Onboarding und zu Beginn der Integration erhalten Sie Zugang zu Ihrem persönlichen Dashboard. Hier können Sie später einen ausführlichen Log zu Ihrer Schnittstelle einsehen, Zugangsdaten verwalten und die letzten Prozesse und erfolgten Datentransfers einsehen.

Das Dashboard ist Ihr erster Anlaufpunkt, um sämtliche Informationen zu Ihrer persönlichen Integration einzusehen und zu verwalten.

Über den Menüpunkt "Ausführen" in Ihrem persönlichen Dashboard können Sie die einmalige Übertragung bzw. Aktualisierung eines Produktes auf Basis der Afterbuy Produkt ID auslösen und den zugehörigen Request sowie die Response beider Systeme einsehen. Bestellungen können Sie ebenfalls erneut importieren, indem Sie die Shopify Order ID (diese steht in der URL, wenn Sie eine Bestellung aufrufen) eingeben, auch hier steht Ihnen der jeweilige Request sowie die Response beider Systeme zur Verfügung.

info

Sobald Sie alle Zugangsdaten in dem Dashboard hinterlegt haben, startet die Lösung und mit dem nächsten Intervall werden alle Datentransfers angestoßen und auch alle Produkte, die für uns freigegeben sind, übertragen bzw. im Shopify Shop aktualisiert.

FAQ

Wo ist mein Zugang?

Den Zugang erhalten Sie von uns nach erfolgreichem Onboarding und Anzahlung der Lösung sowie der Unterschrift des AV Vertrags & SEPA Mandats. Mit dieser Einladung können Sie dann Ihr Dashboard aufrufen, Ihr Passwort festlegen und mit den Vorbereitungen starten.

Wie kann ich das Passwort zurücksetzen?

Das Passwort könne Sie bequem zurücksetzen, wenn Sie auf der Login Seite sind. Hier einfach „Passwort vergessen?“ Klicken, die eigene Mailadresse angeben und über die gesendete Mail ein neues Passwort festlegen.

Wie kann ich die Konfiguration durchführen?

Die Konfiguration können Sie mit Klick auf den aktuellen Status nach erfolgreichem Login durchführen. Den Status Ihrer Schnittstelle finden Sie ganz oben, Sie werden hier bei Bedarf auch aufgefordert, die Konfiguration durchzuführen.

Wo sollen die Daten eingetragen werden?

Die Datenfelder sind nach Klick auf die Konfiguration vorgefertigt. Hier ist dann die Afterbuy Schnittstelle relevant, um die Integration auf Seiten von Afterbuy vorzubereiten. Um Shopify zu verbinden, muss eine Shopify Custom App direkt im Shop erstellt werden. Anschließend werden die erhaltenen Zugangsdaten dann im Dashboard hinterlegt.

Wie kann die Verbindung widerrufen werden?

Wenn Sie oben auf Ihre Konfiguration klicken, können Sie in einer Roten Box die Verbindung für bestimmte Endpunkte der Lösung widerrufen. Wenn Sie die Daten widerrufen, stoppt die Schnittstelle sofort und ist nicht mehr aktiv, bis die passende Konfiguration erneut durchgeführt wurde. Kommen Sie für den Fall der Kündigung persönlich auf uns zu. Ein widerrufen der Daten führt nicht zur Kündigung der Schnittstelle!

Produktdaten

In diesem Abschnitt gehen wir detailliert auf die Produktdaten und das standardisierte Wertemapping der Lösung ein. Wir aktualisieren alle 15 Minuten alle Produkte, sowohl Bestände als auch die allgemeinen Produktinformationen auf Basis des Aktualisierungsdatums. Einmal täglich um 02:00 aktualisieren wir alle Produkte.

tipp

Wir können die Schnittstelle für Sie individualisieren. Bitte kommen Sie bei Bedarf jederzeit auf uns zu, sodass wir Ihre individuellen Anforderungen berücksichtigen und die Integration für Sie anpassen können.

Filter & Level

Als Filter für die zu übertragenden Produkte und verbundene Aktionen nutzen wir das Afterbuy Level Feld.

Wir übertragen bei Variationssets das gesamte Set mit den Kindern, es kann eine Variante ausschließlich einem Variationsset zugewiesen werden. Außerdem übertragen wir Einzelprodukte und Produktsets sowie Produktsets in Variationssets.

warnung

Die Produktdaten müssen auch für die Childs der Variantenartikel gepflegt sein, da diese als Basis für Shopify dienen. Während ein Level 11 oder höher bei Childs das Löschen der Varianten in Shopify auslöst, muss das Level 9 samt zugehöriger Funktion auf Parent-Ebene gesetzt werden, da die Childs der Variantenartikel unabhängig vom gepflegten Level 9 pro Variante aktualisiert werden.

LevelFunktion
0 - 8Das Produkt wird übertragen und vollständig aktualisiert
9Das Produkt wird übertragen und anschließend werden ausschließlich Preise & Bestände aktualisiert
10Das Produkt wird als Entwurf übertragen und vollständig aktualisiert
11Das Produkt wird aus Shopify gelöscht
>= 12Das Produkt wird ignoriert

Wertemapping

Das Wertemapping beschreibt das Matching der Datenfelder von System zu System im Standard. Selbstverständlich können wir jederzeit Anpassungen im Mapping durchführen und Ihre Werte aus anderen Datenfeldern bei Afterbuy Matchen, die Felder bei Shopify sind im Standard fest vorgegeben und können um Metafelder erweitert werden. Die hier beschriebenen Shopify Datenfelder sind die Standard Felder, die von unserer Schnittstelle befüllt und aktualisiert werden.

info

Um erfolgreich in Ihrem Shop zu verkaufen, prüfen Sie bitte die jeweiligen Anforderungen an Produktdaten und ergänzen Sie alle relevanten Informationen in Ihren Stammdaten.

AfterbuyAfterbuy BenutzeroberflächeShopify
NameProduktbeschreibung → NameTitel
DescriptionProduktbeschreibung → Beschreibung in HTMLBeschreibung
ProductBrandProduktdaten → Marke/HerstellerMarke
KeywordsSEO / SEM Daten → Produkt Keywords (kommagetrennt)Tags
LevelAfterbuy Onlineshop Daten → Level (steuert das Handling mit dem Produkt)Status
ProductPictures.ProductPictureBilder → Bildergalerie → Bildlink OriginalMedien (bei Varianten das erste zugewiesene Bild als zugewiesenes Variantenbild)
Features.FeatureProduktmerkmale → Angelegtes Merkmal mit Namen shopify_seo_titleSeitentitel
Features.FeatureProduktmerkmale → Angelegtes Merkmal mit Namen shopify_seo_descriptionMeta-Beschreibung
ProductIDProduktdaten → Produkt ID → Your IDSKU (Artikelnummer)
ManufacturerStandardProductIDValueProduktdaten → Hersteller Standard Produkt ID WertBarcode (ISBN, UPC, GTIN usw.)
SellingPricePreise und Bestände → Verkaufspreis (Brutto)Preis
AdditionalPrices.AdditionalPricePreise und Bestände → angelegtes Preisfeld shopifyPrice oder shopify_pricePreis
AdditionalPrices.AdditionalPricePreise und Bestände → angelegtes Preisfeld shopifySalePrice oder shopify_sale_priceVergleichspreis (shopifyPrice oder Verkaufspreis werden zum Streichpreis, der shopifySalePrice wird der neue Preis)
BuyingPricePreise und Bestände → EinkaufspreisKosten pro Artikel
QuantityPreise und Bestände → Afterbuy-Shop-BestandBestand (an einem Standard Lagerort)
WeightProduktdaten → Gewicht (in kg)Produktgewicht
CountryOfOriginProduktdaten → UrsprungslandLändercode des Ursprungs
CustomsTariffNumberProduktdaten → ZolltarifnummerCode des Harmonisierten Systems (HS-Code)
UnitOfQuantity & BasepriceFactorAfterbuy Onlineshop Daten → Inhalt / EinheitStückpreis → Gesamtmaß und Basismaß
BaseProducts...EBayVariationNameEinstellungen für Sets → Spezifikation der Varianten → Optionsnamen (z.B. "Farbe", "Größe")Varianten Name der Optionen
BaseProducts...EBayVariationValueEinstellungen für Sets → Produkte zu jeder Variante → OptionswerteVarianten Optionswerte
FreeValue1 - FreeValue10Allgemeine Daten → Freifelder 1-10Metafelder (namespace: free_value_1 - free_value_10, key: afterbuy)
CustomLabel0 - CustomLabel4SEO / SEM Daten → Benutzerdefinierte Label 1-5Metafelder (namespace: custom_label_0 - custom_label_4, key: afterbuy)
Features.Feature (außer SEO)Produktmerkmale → Angelegte MerkmaleMetafelder (namespace: feature name (lowercase), key: afterbuy)
Catalogs.Catalog.CatalogIDAfterbuy Onlineshop Daten → Zugewiesene KatalogeHinzugefügt als Tags mit Format CAT{CatalogID}
TaxRatePreise und Bestände → UmsatzsteuerHinzugefügt als Tag mit Format MWST{TaxRate}

Preis- und Bestandsexport

Die Preise und Bestände werden parallel zum Produktexport alle 5 Minuten durchgeführt. Einmal täglich um 04:00 aktualisieren wir alle Preise und Bestände.

info

Die Updates erfolgen auf Basis des letzten Aktualisierungsdatums des Produkts oder des Datums des letzten Verkaufs, bei dem der Artikel erfolgreich identifiziert wurde.

AfterbuyBeschreibungShopify
QuantityAfterbuy Shop-Bestand überschreibt die verfügbare BestandsmengeBestand
SellingPriceRegulärer VerkaufspreisPreis
AdditionalPrices.AdditionalPriceÜberschreibt den Standard Verkaufspreis wenn verfügbar mit dem angelegten Preisfeld shopifyPrice oder shopify_pricePreis
AdditionalPrices.AdditionalPriceVergleichspreis (shopifyPrice oder Verkaufspreis werden zum Streichpreis, der shopifySalePrice oder shopify_sale_price wird der neue Preis)Vergleichspreis
BuyingPriceProdukteinkaufspreisKosten pro Artikel

Bestellungen

Wir lesen in Echtzeit die Bestellungen per Webhook aus Shopify aus. Die Bestellungen werden anschließend mit allen relevanten Informationen übertragen.

Wertemapping des Bestellimports

Hier finden Sie eine Übersicht, wie die Felder von Shopify zu Afterbuy gemappt werden. Diese Informationen sind wichtig, um zu verstehen, wie die Bestelldaten zwischen den beiden Systemen synchronisiert werden.

ShopifyBeschreibungAfterbuy
Name + PaymentGatewayNamesBenutzername im Format "Shopify-#Order-Payment"Kbenutzername
BillingAddress.CompanyFirma des KundenKFirma
BillingAddress.FirstNameVorname des KundenKVorname
BillingAddress.LastNameNachname des KundenKNachname
BillingAddress.Address1Straße des KundenKStrasse
BillingAddress.Address2Adresszusatz des KundenKStrasse2
BillingAddress.ZipPostleitzahl des KundenKPLZ
BillingAddress.CityOrt des KundenKOrt
BillingAddress.ProvinceBundesland des KundenKBundesland
EmailE-Mail-Adresse des KundenKemail
BillingAddress.PhoneTelefonnummer des KundenKtelefon
BillingAddress.CountryCode (konvertiert)Land des KundenKLand
NoteBestellnotizKommentar
IDShopify BestellnummerVID
CurrencyWährung der BestellungSoldCurrency
ProcessedAtKaufdatum (wenn bezahlt)BuyDate
FinancialStatusZahlungsstatus (1 wenn "paid")SetPay
ProcessedAtZahlungsdatum (wenn bezahlt)SetPayDate
PaymentGatewayNamesZahlungsmethodeZahlart
LineItems[X].SKUArtikelnummerArtikelnr_X
LineItems[X].SKUAlternative Artikelnummer 1AlternArtikelNr1_X
LineItems[X].NameAlternative Artikelnummer 2AlternArtikelNr2_X
LineItems[X].NameArtikelnameArtikelname_X
LineItems[X].Price - LineItems[X].DiscountAllocationsArtikelpreis abzüglich RabatteArtikelEpreis_X
LineItems[X].TaxLines[0].RateMehrwertsteuersatz des ArtikelsArtikelMwSt_X
LineItems[X].QuantityArtikelmengeArtikelMenge_X
LineItems[X].Grams (konvertiert zu kg)Artikelgewicht in KilogrammArtikelGewicht_X
OrderStatusUrlLink zur BestellungArtikelLink_X
LineItems[X].SKUStamm-ID des ArtikelsArtikelStammID_X
ShippingLines[].Price - ShippingLines[].DiscountAllocationsVersandkosten abzüglich RabatteVersandkosten
Transactions[].GatewayZahlungsstatus (wenn PayPal)PaymentStatus
Transactions[].AuthorizationCodeTransaktions-ID (wenn PayPal)PaymentTransactionId

Bei unterschiedlichen Liefer- und Rechnungsadressen werden zusätzlich folgende Felder gesetzt:

ShopifyBeschreibungAfterbuy
1 (wenn Adressen unterschiedlich)Aktiviert separate LieferadresseLieferanschrift
ShippingAddress.CompanyFirma für LieferadresseKLFirma
ShippingAddress.FirstNameVorname für LieferadresseKLVorname
ShippingAddress.LastNameNachname für LieferadresseKLNachname
ShippingAddress.Address1Straße für LieferadresseKLStrasse
ShippingAddress.Address2Adresszusatz für LieferadresseKLStrasse2
ShippingAddress.ZipPostleitzahl für LieferadresseKLPLZ
ShippingAddress.CityOrt für LieferadresseKLOrt
ShippingAddress.ProvinceBundesland für LieferadresseKLBundesland
ShippingAddress.CountryCode (konvertiert)Land für LieferadresseKLLand
ShippingAddress.PhoneTelefonnummer für LieferadresseKLTelefon

Wertemapping des Bestellimports per API

Hier sind nur die Felder aufgeführt, die sich vom Webhook unterscheiden. Alle anderen Felder werden auf die gleiche Weise gemappt wie beim Webhook.

ShopifyBeschreibungAfterbuy
Name + PaymentGatewayNamesBenutzername im Format "Shopify-Order-Payment" (ohne "#")Kbenutzername
BillingAddress.CountryCodeV2 (konvertiert)Land des Kunden (verwendet CountryCodeV2)KLand
LegacyResourceIDShopify Bestellnummer (verwendet LegacyResourceID)VID
CurrencyCodeWährung der Bestellung (verwendet CurrencyCode)SoldCurrency
FullyPaidZahlungsstatus (1 wenn "true" statt "paid")SetPay
LineItems.Edges[X].Node.SKUArtikelnummer (verwendet GraphQL-Struktur)Artikelnr_X
LineItems.Edges[X].Node.SKUAlternative Artikelnummer 1 (verwendet GraphQL-Struktur)AlternArtikelNr1_X
NameAlternative Artikelnummer 2 (verwendet Order.Name)AlternArtikelNr2_X
LineItems.Edges[X].Node.NameArtikelname (verwendet GraphQL-Struktur)Artikelname_X
LineItems.Edges[X].Node.DiscountedTotalSet.PresentmentMoney.AmountArtikelpreis inkl. Rabatte (verwendet vorberechneten Wert)ArtikelEpreis_X
LineItems.Edges[X].Node.TaxLines[0].RateMehrwertsteuersatz des Artikels (verwendet GraphQL-Struktur)ArtikelMwSt_X
LineItems.Edges[X].Node.QuantityArtikelmenge (verwendet GraphQL-Struktur)ArtikelMenge_X
LineItems.Edges[X].Node.Variant.InventoryItem.Measurement.Weight.Value (konvertiert zu kg)Artikelgewicht in Kilogramm (verwendet GraphQL-Struktur)ArtikelGewicht_X
StatusPageURLLink zur BestellungArtikelLink_X
LineItems.Edges[X].Node.SKUStamm-ID des Artikels (verwendet GraphQL-Struktur)ArtikelStammID_X
ShippingLine.DiscountedPriceSet.PresentmentMoney.AmountVersandkosten inkl. Rabatte (verwendet vorberechneten Wert)Versandkosten

Bei unterschiedlichen Liefer- und Rechnungsadressen wird zusätzlich folgendes Feld anders gemappt:

ShopifyBeschreibungAfterbuy
ShippingAddress.CountryCodeV2 (konvertiert)Land für Lieferadresse (verwendet CountryCodeV2)KLLand

Versandexport

Wir importieren alle 15 Minuten die Bestellungen aus Afterbuy, die innerhalb der letzten 20 Minuten versendet wurden, also ein Versanddatum erhalten haben. Für diese Bestellungen lesen wir die Versandart und Trackingnummer aus Afterbuy aus und übertragen diese zu Shopify. Der Status der Bestellung wird dann zu „Shipped“ aktualisiert.

AfterbuyBeschreibungShopify
ShippingInfo.ShippingMethodVersanddienstleister/MethodeTrackingInfo.Company
ShippingInfo.ParcelLabels.ParcelLabel.ParcelLabelNumberSendungsverfolgungsnummer(n)TrackingInfo.Numbers
warnung

Die Namen der Versandarten in Afterbuy und die Anforderungen an den Namen der Versandart bei Shopify können sich unterscheiden. Bei Versandupdate ist darauf zu achten, dass die passende Versandart gesetzt wird, damit Shopify die passenden Versandlinks generieren kann. Die Versandlinks übergeben wir nicht.