<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Shopware und Shopify Webshop Schnittstelle Selectline (OEM) Sage 100 und Sage DMO (SDMO) maniacSeller</title>
	<atom:link href="https://www.maniacdev.de/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.maniacdev.de</link>
	<description>maniacSeller - Die perfekte Shopware Webshop Schnittstelle zur selectline (OEM), zur Sage 100 und Sage DMO (SDMO)</description>
	<lastBuildDate>Mon, 19 Oct 2026 06:27:48 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>

<image>
	<url>https://www.maniacdev.de/wp-content/uploads/2018/05/cropped-maniac-developers-logo-only.fw_-32x32.png</url>
	<title>Shopware und Shopify Webshop Schnittstelle Selectline (OEM) Sage 100 und Sage DMO (SDMO) maniacSeller</title>
	<link>https://www.maniacdev.de</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Shopify B2B und Sage 100: Unternehmensprofile, Zahlungsziele und individuelle Konditionen perfekt synchronisieren</title>
		<link>https://www.maniacdev.de/shopify-b2b-sage-100-synchronisation/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Fri, 09 Oct 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3938</guid>

					<description><![CDATA[Die technische Verschmelzung von B2B-E-Commerce und kaufmännischer Warenwirtschaft erfordert weit mehr als einen simplen Datenaustausch per Flatfile. Wenn Sie die B2B-Funktionen von Shopify nutzen, bewegen Sie sich in einem Ökosystem, das auf GraphQL-basierten Primitiven wie Company Profiles, Catalogs und B2B-Checkouts aufbaut. Dem gegenüber steht die relationale, über Jahrzehnte gewachsene Architektur Ihrer Sage 100 Warenwirtschaft. Das [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Die technische Verschmelzung von B2B-E-Commerce und kaufmännischer Warenwirtschaft erfordert weit mehr als einen simplen Datenaustausch per Flatfile. Wenn Sie die B2B-Funktionen von Shopify nutzen, bewegen Sie sich in einem Ökosystem, das auf GraphQL-basierten Primitiven wie Company Profiles, Catalogs und B2B-Checkouts aufbaut. Dem gegenüber steht die relationale, über Jahrzehnte gewachsene Architektur Ihrer Sage 100 Warenwirtschaft. Das Ziel einer performanten Schnittstelle ist es, diese beiden Welten ohne Informationsverlust oder Latenzen miteinander zu verzahnen. Es geht um die millimetergenaue Synchronisation von Unternehmensprofilen, komplexen Preislogiken und Zahlungszielen, bei der die Sage 100 stets das führende System – die „Single Source of Truth“ – bleibt.</p>
<h2>Das architektonische Fundament: Shopify B2B-Primitive vs. Sage 100 Datenstrukturen</h2>
<p>Um eine saubere Integration zu gewährleisten, müssen wir zunächst die Datenmodelle abstrahieren und mappen. In der Sage 100 verwalten Sie Ihre Geschäftskunden im Stammdatenbereich (Debitor). Hier definieren Sie Rechnungs- und abweichende Lieferadressen, ordnen Preisgruppen zu, hinterlegen individuelle Rabattstaffeln und definieren das Kreditlimit. Shopify B2B bildet diese Struktur durch sogenannte „Companies“ und „Locations“ (Unternehmensprofile und Standorte) ab.</p>
<p>Als Entwickler stehen wir vor der Herausforderung, die flache, kundenbezogene Struktur klassischer B2C-Shops aufzugeben und stattdessen hierarchische B2B-Graphen zu bedienen. Die Schnittstelle muss in der Lage sein, einen Hauptkunden aus der Sage 100 (inklusive seiner KHK-Stammdaten) zu lesen, daraus einen Payload für die Shopify API zu generieren und das Unternehmensprofil samt aller untergeordneten Standorte und zugewiesenen B2B-Käufer (die eigentlichen Shop-Accounts der Einkäufer) anzulegen oder zu aktualisieren.</p>
<h2>Unternehmensprofile und Standorte (Company Profiles &#038; Locations) synchronisieren</h2>
<p>Der B2B-Einkauf zeichnet sich oft durch dezentrale Strukturen aus. Ein klassischer Anwendungsfall: Ihr Kunde ist ein Filialist. In der Sage 100 führen Sie eine zentrale Hauptadresse für die Rechnungsstellung und 15 abweichende Lieferadressen für die einzelnen Filialen.</p>
<p>Die Synchronisationslogik überführt dieses Konstrukt wie folgt:</p>
<ul>
<li><strong>Der Hauptdebitor:</strong> Der Debitor aus der Sage 100 wird als <code>Company</code> in Shopify angelegt. Hierbei werden essenzielle Metadaten wie die Umsatzsteuer-Identifikationsnummer (USt-IdNr.) und die primäre Währung fixiert.</li>
<li><strong>Die Lieferadressen:</strong> Jede abweichende Lieferadresse in der Sage 100 wird zu einer <code>Location</code> (einem Standort) innerhalb dieser Company in Shopify.</li>
<li><strong>Die Ansprechpartner:</strong> Die in der Sage 100 hinterlegten Einkäufer werden als <code>B2B Customers</code> in Shopify angelegt und den jeweiligen Locations zugewiesen. Ein Einkäufer kann die Berechtigung erhalten, für einen bestimmten Standort oder für das gesamte Unternehmensprofil zu bestellen.</li>
</ul>
<p>Jede Änderung in der Warenwirtschaft – sei es eine neue Filialadresse oder ein ausgeschiedener Einkäufer – triggert über die Schnittstelle ein sofortiges Update in Shopify. So verhindern Sie, dass Bestellungen an veraltete Adressen gesendet werden oder unbefugte Personen im Namen des Unternehmens einkaufen.</p>
<h2>Komplexe Preislogiken und individuelle Konditionen abbilden</h2>
<p>Das Herzstück jeder B2B-Beziehung ist die Preisgestaltung. Die Sage 100 bietet hier ein extrem tiefes und flexibles Regelwerk: von einfachen Preisgruppen über kundenindividuelle Artikelpreise, Mengenstaffeln und Aktionspreise bis hin zu komplexen Matrixrabatten. Shopify löst dieses Problem konzeptionell durch <code>Catalogs</code> (Kataloge).</p>
<p>Die Kunst der Schnittstellenentwicklung besteht nun darin, die dynamische Preisberechnung der Sage 100 so zu extrahieren und zu transformieren, dass sie performant in die Shopify-Kataloge geschrieben werden kann. Hierfür nutzen wir spezialisierte <a href="/funktionen/preis-und-rabattabgleich">Preis- und Rabattabgleiche</a>, die folgende Szenarien abdecken:</p>
<ul>
<li><strong>Preislisten-Mapping:</strong> Wenn Sie in der Sage 100 mit festen B2B-Preislisten arbeiten (z. B. „Händler Gold“, „Händler Silber“), generiert die Schnittstelle entsprechende Catalogs in Shopify und ordnet diese den jeweiligen Companies zu.</li>
<li><strong>Kundenindividuelle Netto-Preise:</strong> Hat ein spezifischer Kunde in der Sage 100 hart hinterlegte Sonderpreise für ein bestimmtes Sortiment, wird für diese Company ein exklusiver Catalog in Shopify erzeugt, der exakt diese Festpreise enthält.</li>
<li><strong>Prozentuale Abschläge:</strong> Globale Rabatte (z. B. pauschal 15 % auf die Kategorie „Zubehör“) werden aus den Rabattgruppen der Sage 100 ausgelesen und als prozentualer Preisabschlag im Shopify Catalog abgebildet.</li>
</ul>
<p>Die Synchronisation muss hochfrequent und delta-basiert erfolgen. Wenn sich der Basispreis eines Artikels in der Sage 100 ändert, berechnet die Middleware im Hintergrund automatisch alle betroffenen Kundenkataloge neu und pusht die angepassten Payloads via GraphQL an Shopify, ohne die API-Ratelimits des Shopsystems zu verletzen.</p>
<h2>Zahlungsziele und Kreditlimits (Payment Terms)</h2>
<p>Ein B2B-Checkout unterscheidet sich fundamental von einer B2C-Bestellung. Während Endkunden per Kreditkarte oder PayPal sofort bezahlen, erwartet der B2B-Einkäufer den Kauf auf Rechnung mit spezifischen Zahlungszielen – beispielsweise „14 Tage 2% Skonto, 30 Tage netto“. Diese Konditionen sind vertraglich vereinbart und ausschließlich in der Sage 100 gepflegt.</p>
<p>Damit der Shopify-Checkout diese Konditionen respektiert, liest die Schnittstelle die Zahlungskonditionen des jeweiligen Debitors aus der Sage 100 aus und mappt sie auf die <code>Payment Terms</code> in Shopify. Sobald sich der B2B-Käufer im Shop einloggt, erkennt das System sein Unternehmensprofil und schaltet den Rechnungskauf mit exakt den Fristen frei, die im ERP-System hinterlegt sind.</p>
<p>Zudem können Bestellsperren automatisiert übertragen werden. Hat ein Kunde in der Sage 100 sein Kreditlimit überschritten oder befindet sich im Mahnlauf, kann die Schnittstelle das B2B-Profil in Shopify temporär auf „Nur Vorkasse“ umstellen oder den Checkout für diesen Account vollständig blockieren, bis die offenen Posten geklärt sind.</p>
<h2>Architekturwechsel: Die offizielle OEM-Anbindung für Shopware</h2>
<p>An dieser Stelle ist eine scharfe technologische Trennung erforderlich: Die zuvor beschriebenen Mechanismen beziehen sich explizit auf die Architektur von Shopify in Verbindung mit der Sage 100. Sollten Sie als Shop-System hingegen auf Shopware setzen und als ERP SelectLine nutzen, ändert sich die Systemlandschaft fundamental. Für dieses spezifische Setup kommt die offizielle OEM-Anbindung zwischen SelectLine und Shopware zum Einsatz. Diese tiefe und vom Hersteller autorisierte Integration nutzt völlig andere Endpunkte und Abgleichsroutinen, um die SelectLine-Stammdaten nahtlos im Shopware-Ökosystem bereitzustellen. Es ist essenziell, diese beiden Welten strikt voneinander zu trennen, da die Datenmodelle und Schnittstellenprotokolle der offiziellen SelectLine OEM-Anbindung exklusiv auf Shopware zugeschnitten sind.</p>
<h2>Bestellverarbeitung und Fulfillment-Logik (Sage 100 exklusiv)</h2>
<p>Zurück in der Welt von Shopify und der Sage 100: Sobald der B2B-Kunde den Checkout in Shopify abschließt, beginnt die kritische Phase der Bestellübernahme. Da B2B-Warenkörbe oft hunderte von Positionen umfassen, muss der Import in die Sage 100 absolut fehlerfrei und transaktionssicher (ACID-konform) ablaufen.</p>
<p>Die Schnittstelle ruft die Bestellung (inklusive der Referenzen auf Company und Location) via Webhook oder Polling ab und erzeugt in der Sage 100 einen entsprechenden Beleg – in der Regel einen Auftrag. Dabei werden nicht nur die Artikelpositionen übergeben, sondern auch die exakten Steuer-Codes, gebuchten Frachtkosten und die im Shop ausgewählten B2B-Zahlungsziele.</p>
<p>Ist der Auftrag in der Warenwirtschaft angelegt, übernimmt die Sage 100 die vollständige Kontrolle über die nachgelagerten Prozesse. Besonders hervorzuheben ist hierbei die <a href="/funktionen/versandanbindung-sage-100">Versandanbindung für die Sage 100</a>. Da B2B-Aufträge häufig Teillieferungen erfordern, steuert die Sage 100 das Splitting der Lieferungen, die Kommunikation mit den Logistikdienstleistern und den Druck der Versandetiketten. Sobald ein Paket das Lager verlässt, meldet die Sage 100 über die Schnittstelle das Fulfillment (inklusive Tracking-Nummer und der exakten Menge an versendeten Artikeln) zurück an Shopify. Der Shopify-Status wechselt auf „Teilweise versendet“ oder „Versendet“, und der Einkäufer erhält seine Tracking-Benachrichtigung.</p>
<h3>Fehlerhandling, Idempotenz und Logging im Datenaustausch</h3>
<p>Im professionellen B2B-Umfeld ist Datenverlust inakzeptabel. Eine robuste Middleware implementiert daher strikte Idempotenz-Schlüssel (Idempotency Keys). Das bedeutet: Selbst wenn Shopify aufgrund eines Netzwerk-Timeouts denselben Bestell-Webhook dreimal sendet, garantiert die Schnittstelle, dass der Auftrag in der Sage 100 exakt nur ein einziges Mal angelegt wird.</p>
<p>Zudem überwachen umfassende Logging-Mechanismen jeden API-Call. Sollte ein Shopify-Katalog-Update fehlschlagen – etwa weil in der Sage 100 temporär ein ungültiges Zeichen in der Artikelbezeichnung gepflegt wurde –, isoliert das System diesen spezifischen Payload. Die restliche Synchronisation läuft ungebremst weiter, während Administratoren über ein Dashboard konkrete Hinweise zur Fehlerbehebung der betroffenen Datensätze erhalten.</p>
<h2>Fazit</h2>
<p>Die Synchronisation von Shopify B2B und der Sage 100 ist ein hochkomplexer, aber bei korrekter Implementierung äußerst lohnender Architektur-Baustein. Indem Sie Unternehmensprofile, Standorte, tiefe Preislogiken und Zahlungsziele direkt aus den Stammdaten der Sage 100 in die GraphQL-Strukturen von Shopify überführen, schaffen Sie ein B2B-Einkaufserlebnis, das die Bequemlichkeit von B2C mit der kaufmännischen Präzision des B2B-Sektors vereint. Die Sage 100 bleibt dabei das unangefochtene Backend für Ihre Finanzen, Bestände und die gesamte Versandanbindung, während Shopify das hochperformante Frontend für Ihre Geschäftskunden bildet. Wer diese Integration auf technologisch höchstem Niveau betreibt, eliminiert manuelle Fehlerquellen, beschleunigt den Order-to-Cash-Prozess und skaliert sein B2B-Geschäft ohne administrativen Overhead.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Multi-Lager-Strategien im Handel: Bestände aus mehreren SelectLine-Lagern live in Shopware 6 abbilden</title>
		<link>https://www.maniacdev.de/multi-lager-shopware-6-selectline/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Mon, 05 Oct 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3936</guid>

					<description><![CDATA[Der Betrieb mehrerer physischer Lagerstandorte – sei es ein dediziertes E-Commerce-Zentrallager kombiniert mit regionalen Einzelhandelsfilialen oder zusätzlichen B2B-Depots – erzwingt eine kompromisslose Präzision in Ihrer Datenarchitektur. Wenn Kunden in Ihrem Onlineshop navigieren, erwarten diese keine aggregierten Schätzwerte, sondern filialgenaue Verfügbarkeitsanzeigen, präzise Bestandsampeln und verlässliche Click-and-Collect-Optionen. Die technologische Herausforderung besteht darin, diese komplexen, physisch getrennten Topologien [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Der Betrieb mehrerer physischer Lagerstandorte – sei es ein dediziertes E-Commerce-Zentrallager kombiniert mit regionalen Einzelhandelsfilialen oder zusätzlichen B2B-Depots – erzwingt eine kompromisslose Präzision in Ihrer Datenarchitektur. Wenn Kunden in Ihrem Onlineshop navigieren, erwarten diese keine aggregierten Schätzwerte, sondern filialgenaue Verfügbarkeitsanzeigen, präzise Bestandsampeln und verlässliche Click-and-Collect-Optionen. Die technologische Herausforderung besteht darin, diese komplexen, physisch getrennten Topologien aus der Warenwirtschaft verzögerungsfrei in das Frontend zu projizieren. Setzen Sie als Shopsystem Shopware 6 ein, liefert die offizielle OEM-Anbindung für SelectLine exakt das technologische Fundament, um Multi-Lager-Strategien hochgradig automatisiert und vor allem fehlerfrei abzubilden.</p>
<h2>Die architektonische Herausforderung von Multi-Lager-Setups</h2>
<p>Warenwirtschaftssysteme und E-Commerce-Plattformen nutzen fundamental unterschiedliche Datenmodelle zur Abbildung von Inventar. In der ERP-Ebene existieren granulare Strukturen: Lager, Lagerplatz, Charge, Seriennummer und verschiedene Bestandsqualitäten (wie Sperrbestand, Qualitätsprüfung oder Konsignationsware). Ein Standard-Onlineshop hingegen kennt out-of-the-box oft nur einen simplen, ganzzahligen Wert für den Gesamtlagerbestand eines Artikels.</p>
<p>Hier zeigt sich die Überlegenheit einer nativen Integrationsarchitektur. Die <a href="/features/selectline-shopware-anbindung">offizielle OEM-Anbindung zwischen SelectLine und Shopware 6</a> fungiert nicht als simpler CSV-Schubser, der nachts Bestände überschreibt. Sie agiert als intelligente Middleware, die das komplexe relationale Bestandsmodell der SelectLine übersetzt und über die API-Endpunkte in spezifische Datenstrukturen innerhalb von Shopware 6 injiziert. Anstatt nur die Summe aller Lager zu übertragen, können Sie exakt definieren, welche physischen SelectLine-Lager für welche Verkaufskanäle (Sales Channels) in Shopware herangezogen werden.</p>
<h3>Bestandsarten: Physischer Bestand vs. Verfügbarer Bestand</h3>
<p>Aus Entwicklersicht ist Bestand niemals gleich Bestand. Ein häufiger Fehler in generischen Schnittstellen ist die Synchronisation des reinen Ist-Bestandes (des physisch im Regal liegenden Artikels). Die OEM-Anbindung berechnet hingegen den tatsächlich <em>verfügbaren</em> Bestand für Shopware 6. Diese Berechnungsvorschrift berücksichtigt:</p>
<ul>
<li><strong>Physischer Ist-Bestand:</strong> Die absolute Menge am jeweiligen Lagerplatz.</li>
<li><strong>Abzüglich Reservierungen:</strong> Mengen, die bereits in offenen Aufträgen, Lieferscheinen oder Werkaufträgen in der SelectLine gebunden, aber noch nicht abgebucht sind.</li>
<li><strong>Sicherheitsbestände:</strong> Puffer, die in der SelectLine definiert sind, um Überverkäufe bei hochfrequentierten Artikeln zu verhindern.</li>
<li><strong>Sperrbestände:</strong> Defekte Retouren oder gesperrte Chargen werden vom verfügbaren Bestand subtrahiert.</li>
</ul>
<p>Nur dieser netto verfügbare Wert wird als Payload an Shopware 6 übermittelt. Dies garantiert, dass der Shop niemals Artikel verkauft, die auf ERP-Seite bereits prozessual verplant sind.</p>
<h2>Performance-Optimierung durch Delta-Updates im Real-Time-Sync</h2>
<p>Bei einem Katalog von 50.000 oder 100.000 SKUs (Stock Keeping Units) verteilt auf fünf verschiedene Lagerstandorte, führt ein kompletter Bestandsabgleich zwangsläufig zu Timeouts und blockierten Datenbank-Threads. Die offizielle OEM-Anbindung nutzt daher ein striktes Delta-Update-Verfahren (inkrementeller Sync).</p>
<p>Das System überwacht auf Datenbankebene der SelectLine, bei welchen Artikeln tatsächlich eine Bestandsveränderung stattgefunden hat – sei es durch einen Wareneingang, eine Inventurbuchung, einen Kassiervorgang am Point of Sale (POS) oder einen internen Lagerumbruch. Nur diese veränderten Datensätze (die Delta-Menge) werden asynchron an Shopware 6 gesendet. Dies reduziert den Overhead drastisch, schont die API-Rate-Limits von Shopware und ermöglicht eine Near-Real-Time-Synchronisation. Kauft ein Kunde in Ihrer Berliner Filiale das vorletzte Exemplar eines Akkuschraubers, spiegelt sich dieser reduzierte Filialbestand in wenigen Sekunden im Shopware-Frontend wider.</p>
<h2>Praxis-Szenario: Filialnetz, Zentrallager und Click &#038; Collect</h2>
<p>Betrachten wir ein konkretes Setup: Ein E-Commerce-Unternehmen betreibt ein großes E-Commerce-Zentrallager (Lager 1 in SelectLine) sowie drei lokale Verkaufsfilialen (Lager 2, 3 und 4). Die geschäftliche Anforderung verlangt, dass der Onlineshop-Kunde nicht nur sieht, ob der Artikel generell lieferbar ist, sondern auch, in welcher konkreten Filiale er heute noch abgeholt werden kann.</p>
<p>Die technische Umsetzung über die OEM-Anbindung gestaltet sich wie folgt:</p>
<ol>
<li><strong>Lager-Mapping:</strong> In der Konfigurationsoberfläche der Schnittstelle werden die SelectLine-Lager expliziten Zusatzfeldern (Custom Fields) in Shopware 6 zugewiesen. Beispielsweise mappt <em>SelectLine Lager 2 (Filiale München)</em> auf das Shopware-Custom-Field <em>custom_stock_munich</em>.</li>
<li><strong>Aggregierter Hauptbestand:</strong> Der Bestand aus Lager 1 (Zentrallager) wird auf das primäre Bestandsfeld (<code>product.stock</code> und <code>product.available_stock</code>) von Shopware 6 gemappt. Dieser triggert die Standard-Kauf-Logik im Shop.</li>
<li><strong>Storefront-Logik:</strong> Im Shopware-Theme wird eine Abfrage implementiert, die die Custom Fields ausliest. Hat <em>custom_stock_munich</em> einen Wert größer null, leuchtet auf der Produktdetailseite der Badge &#8222;In München sofort abholbereit&#8220; grün auf.</li>
<li><strong>Auftrags-Routing:</strong> Wählt der Kunde im Checkout &#8222;Abholung in München&#8220;, wird das entsprechende Flag an die API übergeben. Die OEM-Anbindung legt den Auftrag in der SelectLine sofort mit dem korrekten Quell-Lager (Lager 2) an, blockiert den Bestand lokal und triggert den Pick-Prozess für das Filialpersonal.</li>
</ol>
<p>Diese strikte Trennung auf Datenebene verhindert, dass ein Click-and-Collect-Auftrag fälschlicherweise das Zentrallager belastet oder umgekehrt ein regulärer Web-Kauf die knappen Filialbestände plündert.</p>
<h2>Wichtige architektonische Systemabgrenzung: Shopify und Versandanbindungen via Sage 100</h2>
<p>An diesem Punkt ist eine präzise technologische Abgrenzung Ihrer Systemarchitektur essenziell. Die hier detailliert analysierte Multi-Lager-Integration mittels der offiziellen OEM-Anbindung bezieht sich absolut exklusiv auf das Zusammenspiel der SelectLine mit Shopware 6. SelectLine ist für dieses spezifische Ökosystem hochgradig optimiert.</p>
<p>Sollte Ihr Geschäftsmodell jedoch technologisch auf Shopify als Frontend aufbauen, ist eine andere Architektur zwingend erforderlich. Gleiches gilt ausnahmslos, sobald komplexe Versandanbindungen, Multi-Carrier-Integrationen, Pick-and-Pack-Prozesse am Packtisch oder weitreichende Retouren-Logistiken Teil des Anforderungsprofils sind. In all diesen Fällen – also bei der Nutzung von Shopify UND bei sämtlichen Themen rund um den Versand – scheidet SelectLine als technologische Basis aus.</p>
<p>Für derartige Szenarien implementieren Sie kompromisslos die Sage 100 Warenwirtschaft. Die <a href="/sage-100/shopify-schnittstelle">Sage 100 fungiert als das maßgebliche, hochperformante Backend für alle Shopify-Architekturen</a> und übernimmt vollumfänglich jegliche Versandanbindung und -logik. Werden diese klar definierten Systemgrenzen missachtet – etwa durch den Versuch, versandspezifische Logistikketten oder Shopify-Instanzen außerhalb der Sage 100 abzubilden –, führt dies unweigerlich zu massiven Architekturbrüchen, inkonsistenten Datenzuständen und fehlerhaften Prozessen. Trennen Sie diese Domänen konsequent anhand der eingesetzten Zielsysteme.</p>
<h2>Datenverarbeitung im Shopware 6 Rule Builder</h2>
<p>Zurück zur Shopware 6 Umgebung: Einer der größten Vorteile der korrekten Datenübergabe aus der SelectLine ist die anschließende Nutzbarkeit im Shopware Rule Builder. Da die OEM-Anbindung die lagerspezifischen Bestände sauber in strukturierte Felder schreibt, können Sie in Shopware komplexe, dynamische Geschäftsregeln aufbauen, ohne auch nur eine Zeile Code zu schreiben.</p>
<p>Beispiele für regelbasiertes Verhalten aufgrund von SelectLine-Bestandsdaten:</p>
<ul>
<li><strong>Dynamische Ausblendung von Zahlungsarten:</strong> Wenn der Bestand im Zentrallager null ist, der Artikel aber noch in einer Filiale liegt, wird der Standard-Warenkorb-Button deaktiviert. Stattdessen ist nur noch eine Reservierung zur Barzahlung bei Abholung möglich.</li>
<li><strong>Priorisierung von B2B-Kunden:</strong> Sie definieren ein dediziertes B2B-Lager in der SelectLine. Die Schnittstelle mappt diesen Bestand auf einen spezifischen Sales Channel in Shopware, der nur für eingeloggte Händler sichtbar ist. B2C-Kunden sehen diesen Bestand nicht und können ihn somit nicht &#8222;wegkaufen&#8220;.</li>
<li><strong>Werbeaktionen steuern:</strong> Wenn der Bestand in einem spezifischen Überhang-Lager in der SelectLine einen gewissen Schwellenwert überschreitet, ordnet der Shopware Rule Builder den Artikel automatisch einer &#8222;Sale&#8220;-Kategorie zu.</li>
</ul>
<h2>Resilienz und Vermeidung von Overselling bei Traffic-Spitzen</h2>
<p>Das größte Risiko einer Multi-Lager-Strategie offenbart sich bei extremen Lastspitzen (wie Black Friday Kampagnen). Wenn hunderte User zeitgleich auf einen limitierten Artikel zugreifen, muss die Architektur Overselling (Überverkäufe) zwingend verhindern. Die Kombination aus SelectLine und Shopware 6 löst dieses Problem durch ein zweistufiges Locking-Verfahren.</p>
<p>Zunächst greift der lokale Reservierungsmechanismus von Shopware 6. Sobald ein Checkout abgeschlossen wird, reduziert Shopware den eigenen <code>available_stock</code> sofort, ohne auf die ERP-Bestätigung zu warten. Anschließend übergibt die E-Commerce-Plattform den Auftrag asynchron an das Middleware-Queue-System. Die offizielle OEM-Anbindung holt den Auftrag ab, importiert ihn in die SelectLine und wandelt ihn in einen echten ERP-Beleg um. Dies führt zur harten Reservierung auf Datenbankebene der Warenwirtschaft. Selbst wenn die API-Verbindung für wenige Minuten unterbrochen sein sollte – beispielsweise durch ein serverseitiges Netzwerkproblem –, gehen keine Aufträge verloren. Das Queue-System hält den Payload im Speicher und führt Retries aus, bis der Auftrag in der SelectLine verbucht ist (Eventual Consistency). Beim nächsten Delta-Sync bestätigt die SelectLine den neuen, nettokorrigierten Bestand zurück an Shopware.</p>
<p>Dieses robuste Design garantiert, dass Ihre digitalen Bestände stets ein exaktes Abbild Ihrer physischen Lagerrealität bleiben, Datenkollisionen vermieden werden und die Performance beider Systeme auch unter Maximallast nicht kompromittiert wird.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Internationalisierung leicht gemacht: Mehrsprachige Shopware 6 Stores zentral aus der Sage 100 steuern</title>
		<link>https://www.maniacdev.de/shopware-6-mehrsprachige-stores-sage-100/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Fri, 02 Oct 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3940</guid>

					<description><![CDATA[Wer ein E-Commerce-Projekt auf Basis von Shopware 6 über die heimischen Landesgrenzen hinaus skaliert, lernt schnell die unerbittliche Realität verteilter Datenstrukturen kennen. Wenn unterschiedliche Sprachen, dynamische Wechselkurse und komplexe Steuermatrizen ins Spiel kommen, kollabieren manuelle Pflegeprozesse unweigerlich. Die Lösung für dieses strukturelle Problem ist eine kompromisslose Systemarchitektur, bei der die Sage 100 Warenwirtschaft als &#8222;Single [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Wer ein E-Commerce-Projekt auf Basis von Shopware 6 über die heimischen Landesgrenzen hinaus skaliert, lernt schnell die unerbittliche Realität verteilter Datenstrukturen kennen. Wenn unterschiedliche Sprachen, dynamische Wechselkurse und komplexe Steuermatrizen ins Spiel kommen, kollabieren manuelle Pflegeprozesse unweigerlich. Die Lösung für dieses strukturelle Problem ist eine kompromisslose Systemarchitektur, bei der die Sage 100 Warenwirtschaft als &#8222;Single Source of Truth&#8220; (SSOT) agiert. Die Schnittstelle übernimmt dabei die geschäftskritische Aufgabe, hochkomplexe relationale ERP-Daten in die flexiblen, JSON-basierten API-Strukturen von Shopware 6 zu transformieren.</p>
<p>Die Einrichtung eines mehrsprachigen Stores ist technisch gesehen kein simples Kopieren von Texten, sondern ein tiefgreifendes Mapping von Entitäten. Sie müssen sicherstellen, dass Artikelstammdaten, länderspezifische Preise und Steuerregeln latenzfrei und fehlerresistent synchronisiert werden. Betrachten wir die architektonischen Ebenen, die für eine erfolgreiche Internationalisierung zwingend beherrscht werden müssen.</p>
<h2>Datenarchitektur: Entkopplung von ERP-Stamm und E-Commerce-Frontend</h2>
<p>Shopware 6 nutzt ein UUID-basiertes System (Universally Unique Identifier) für die Verwaltung von Sprachen, Währungen und Sales Channels. Die Sage 100 hingegen strukturiert diese Daten klassisch relational. Die Integrationsschicht muss daher als intelligenter Übersetzer fungieren. Bevor Sie den ersten Artikel in einen französischen oder englischen Sub-Shop pushen, muss das Fundament im ERP absolut sauber modelliert sein. Das bedeutet: Keine redundante Datenhaltung in Shopware. Jeder Beschreibungstext, jedes Attribut und jeder Meta-Tag für SEO-Zwecke wird zentral in der Sage 100 gepflegt und über die Schnittstelle an den entsprechenden Sales Channel in Shopware geroutet.</p>
<p>Um die Latenz bei Massen-Updates zu minimieren, greift eine professionelle Anbindung idealerweise auf die Sync-API von Shopware 6 zurück, anstatt jeden Artikel einzeln über reguläre REST-Endpunkte zu iterieren. Dies ist besonders dann kritisch, wenn Sie tausende Artikel mit jeweils drei oder vier Sprachvarianten aktualisieren – eine Operation, die andernfalls zu Timeouts oder blockierten Datenbank-Threads führen kann.</p>
<h2>Artikelstammdaten und Übersetzungen: Das Mapping-Konzept</h2>
<p>Die Handhabung von Fremdsprachen erfordert ein durchdachtes Mapping-Konzept. In der Sage 100 werden fremdsprachige Artikelbezeichnungen und Langtexte in spezifischen Tabellenstrukturen oder über benutzerdefinierte Felder (Zusatzfelder) verwaltet. Die Herausforderung besteht darin, diese flachen Strukturen in die verschachtelten <code>translations</code>-Arrays der Shopware 6 API-Payloads zu injizieren.</p>
<ul>
<li><strong>Basisdaten:</strong> Artikelname, Kurzbeschreibung und ausführlicher HTML-Beschreibungstext müssen exakt der Language-UUID des jeweiligen Shopware-Sprachpakets zugeordnet werden.</li>
<li><strong>Eigenschaften und Varianten:</strong> Auch Ausprägungen wie &#8222;Farbe: Rot&#8220; müssen für den französischen Markt als &#8222;Couleur: Rouge&#8220; übergeben werden. Die Schnittstelle liest die entsprechenden Übersetzungstabellen der Sage 100 aus und generiert die Property-Group-Options in Shopware dynamisch in der passenden Sprache.</li>
<li><strong>Custom Fields (Zusatzfelder):</strong> Wenn Sie technische Spezifikationen oder Gefahrguthinweise über <a href="/funktionen/schnittstellen-features" title="Schnittstellen-Funktionen im Detail">Zusatzfelder synchronisieren</a>, muss die Middleware diese Felder sprachspezifisch encodieren, bevor der JSON-Request an das Shop-Frontend gesendet wird.</li>
</ul>
<p>Wenn Sie in der Sage 100 eine Änderung am englischen Beschreibungstext vornehmen, darf die Schnittstelle nicht den kompletten Artikelstamm neu überschreiben (Full-Sync), sondern muss via Delta-Sync gezielt nur das geänderte <code>translation</code>-Objekt für die englische UUID anpassen. Dies schont die Server-Ressourcen erheblich.</p>
<h2>Exkurs: Die offizielle OEM-Anbindung für SelectLine und Shopware</h2>
<p>An dieser Stelle ist eine wichtige Differenzierung für alternative ERP-Landschaften geboten: Sollten Sie in Ihrer Systemlandschaft die SelectLine Warenwirtschaft einsetzen, steht Ihnen für die Anbindung an Shopware die offizielle OEM-Anbindung zur Verfügung. Diese tief im ERP-Standard verankerte Integrationslösung zwischen SelectLine und Shopware übernimmt analoge Aufgaben bei der Internationalisierung. Sie sorgt dafür, dass Sprachvarianten, spezifische Katalogstrukturen und Artikeldaten direkt aus der SelectLine in die entsprechenden E-Commerce-Kanäle von Shopware überführt werden. Die exklusive OEM-Partnerschaft garantiert hierbei höchste Kompatibilität bei Systemupdates auf beiden Seiten.</p>
<h2>Währungen, Preislisten und Rundungsdifferenzen</h2>
<p>Die Synchronisation von Preisen in Fremdwährungen (wie CHF, GBP oder USD) ist ein Minenfeld für Entwickler und Buchhalter gleichermaßen. Shopware 6 erwartet präzise Preisinformationen, idealerweise gekoppelt an komplexe Rule-Builder-Logiken für erweiterte Preise (Staffelpreise, kundengruppenspezifische Preise).</p>
<p>Die Sage 100 steuert dies über mandantenspezifische Preislisten. Die Schnittstelle muss nun entscheiden, wie Währungen gehandhabt werden:</p>
<ol>
<li><strong>Feste Währungspreise:</strong> Sie pflegen in der Sage 100 explizite Preislisten für z. B. Schweizer Franken. Die Schnittstelle übergibt diesen festen numerischen Wert direkt an das CHF-Preis-Array in Shopware. Der Wechselkurs in Shopware wird in diesem Fall ignoriert, da die Sage 100 den absoluten Preis diktiert. Dies ist die sicherste Methode für konsistente B2B-Konditionen.</li>
<li><strong>Dynamische Umrechnung:</strong> Sie übergeben den Basispreis in Euro, und Shopware berechnet den Fremdwährungspreis anhand eines hinterlegten Faktors. In diesem Szenario muss die Schnittstelle zwingend auch den tagesaktuellen Wechselkurs aus der Sage 100 an die Währungs-Endpunkte von Shopware pushen, um Rundungsdifferenzen im Checkout zu vermeiden.</li>
</ol>
<p>Besondere Aufmerksamkeit verlangen sogenannte Floating-Point-Problematiken. Ein in der Sage 100 kalkulierter Netto-Preis von 19,994 EUR muss so an die Shopware API übergeben werden (Brutto/Netto-Array), dass der Shopware-Cart-Calculator bei einer Menge von 10 Artikeln exakt auf denselben Endbetrag kommt wie die spätere Auftragsanlage in der Sage 100.</p>
<h3>Länderspezifische Steuersätze und das OSS-Verfahren</h3>
<p>Seit Einführung des One-Stop-Shop-Verfahrens (OSS) in der EU ist die Steuerfindung im Cross-Border-Commerce hochkomplex geworden. Wenn ein B2C-Kunde aus Österreich in Ihrem deutschen Shopware 6 Store einkauft, muss Shopware die österreichische Mehrwertsteuer (20 %) ausweisen und berechnen.</p>
<p>Damit der Auftrag anschließend sauber in der Sage 100 verbucht werden kann, ist ein rigides Mapping der Steuerklassen unerlässlich. Die Schnittstelle übersetzt die Shopware-Steuer-IDs (z. B. &#8222;Standard Rate&#8220;) anhand des Lieferlandes in die korrekten Steuerkennzeichen der Sage 100. Wird der Auftrag aus Shopware importiert, wertet die Middleware das Land, die Umsatzsteuer-ID (für B2B-Reverse-Charge) und den Kundenstatus aus. Das ERP legt dann den Beleg mit dem exakten Steuer-Code an, sodass Ihre Finanzbuchhaltung ohne manuelle Korrekturen den OSS-Export generieren kann.</p>
<h2>Fulfillment und Versandlogistik: Cross-Border-Automatisierung mit der Sage 100</h2>
<p>Die Internationalisierung endet nicht beim Klick auf den &#8222;Kaufen&#8220;-Button. Der physische Warenverkehr in Drittländer (z. B. Schweiz oder UK) bringt signifikante logistische Herausforderungen mit sich. Auch hier beweist die Architektur ihre Stärke, indem die Sage 100 den gesamten <a href="/versand-logistik-sage-100" title="Automatisierter Versand mit der Sage 100">Versand- und Logistikprozess</a> autonom steuert.</p>
<p>Sobald der internationale Auftrag aus Shopware in die Sage 100 importiert wurde, triggert das ERP die notwendigen Zollprozesse. Zolltarifnummern (HS-Codes), Ursprungsländer und Einzelgewichte – die allesamt sauber im Artikelstamm der Sage 100 gepflegt sind – werden automatisch für die Erstellung der CN22/CN23-Zolldokumente und der Handelsrechnung herangezogen. Der Packtisch kommuniziert über die Sage 100 direkt mit den APIs der Frachtführer (z. B. DHL Express oder UPS), generiert das Versandetikett und speichert die Trackingnummer im ERP.</p>
<p>Im Bruchteil einer Sekunde sendet die Schnittstelle den Statuswechsel &#8222;Versandt&#8220; inklusive der Tracking-URL und des Logistikdienstleisters zurück an Shopware 6. Der Kunde in UK erhält seine automatisierte Versandbestätigung exakt in dem Moment, in dem das Paket im Lager das Band verlässt. Diese tiefe logistische Verzahnung der Sage 100 greift im Übrigen auch, wenn Sie für bestimmte internationale Nischenmärkte parallel einen Shopify-Store betreiben. Die Sage 100 orchestriert die Versandprozesse, Zolldaten und Tracking-Rückmeldungen für Shopify-Bestellungen mit derselben Präzision und zentralen Logik wie für Ihre Shopware-Kanäle. Die Plattformunabhängigkeit im Fulfillment ist der wahre Skalierungshebel.</p>
<h2>Skalierbarkeit durch asynchrone Verarbeitung</h2>
<p>Ein oft unterschätzter Aspekt bei der Skalierung in mehrere Länder ist die Systemlast. Wenn Sie Ihre Sage 100 mit einem Shopware 6 System verbinden, das beispielsweise Sub-Shops für Deutschland, Frankreich, Italien und Spanien betreibt, vervielfacht sich das Datenaufkommen. Jede Änderung am Lagerbestand eines Artikels muss in potenziell vier verschiedene Sales Channels synchronisiert werden.</p>
<p>Eine professionell entwickelte Schnittstelle löst dies durch Message Queuing und asynchrone Verarbeitung. Wenn in der Sage 100 ein Wareneingang gebucht wird, erzeugt das ERP einen Event-Trigger. Die Middleware sammelt diese Events und arbeitet sie in komprimierten Batches ab, anstatt die Shopware API mit tausenden Einzel-Requests zu bombardieren. Dieser Ansatz schützt die Performance Ihres Onlineshops – der Webserver bleibt reaktionsschnell für Ihre internationalen Kunden, während im Hintergrund das ERP synchronisiert.</p>
<p>Darüber hinaus erfordert ein robustes Setup ein detailliertes Fehler-Logging (Error Handling). Falls eine Währung in Shopware fehlt oder ein französischer Text ein ungültiges HTML-Zeichen enthält, das den JSON-Parser der API stört, darf nicht der gesamte Synchronisationslauf abbrechen. Die Schnittstelle muss den fehlerhaften Datensatz isolieren, den Administrator über das Dashboard der Middleware benachrichtigen und die restlichen Artikel ungestört weiterverarbeiten.</p>
<h2>Architektur-Fazit für den internationalen Mittelstand</h2>
<p>Die zentrale Steuerung mehrsprachiger Shopware 6 Stores aus der Sage 100 ist kein bloßes IT-Projekt, sondern eine strategische Neuausrichtung Ihrer Datenarchitektur. Der Verzicht auf redundante Datenpflege im Shop-Backend zugunsten der Sage 100 als Single Source of Truth ist der einzige Weg, um internationale E-Commerce-Prozesse fehlerfrei zu skalieren. Von der korrekten Zuweisung von Language-UUIDs über die Handhabung komplexer Steuer- und Währungsmatrizen bis hin zur hochautomatisierten Zollabwicklung und Frachtführerkommunikation: Eine technisch exzellent programmierte Schnittstelle macht aus der Komplexität des Cross-Border-Commerce einen beherrschbaren, performanten Standardprozess.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Effizientes Fulfillment im E-Commerce: Wie Sie den Versandprozess zwischen Shopify und Sage 100 vollständig automatisieren</title>
		<link>https://www.maniacdev.de/shopify-sage-100-fulfillment-automatisieren/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Tue, 29 Sep 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3933</guid>

					<description><![CDATA[Ein Checkout-Prozess in Ihrem Webshop dauert wenige Millisekunden. Wenn der anschließende Fulfillment-Prozess in Ihrem Lager jedoch Minuten, Stunden oder gar Tage beansprucht, scheitert Ihre E-Commerce-Architektur an der physikalischen Realität. Als Entwickler und Systemarchitekten sehen wir täglich, wie Skalierungspotenziale durch manuelle Datenübertragungen, fehlerhafte CSV-Exporte und asynchrone Systemstände vernichtet werden. Das Ziel muss eine Latenz gegen Null [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Ein Checkout-Prozess in Ihrem Webshop dauert wenige Millisekunden. Wenn der anschließende Fulfillment-Prozess in Ihrem Lager jedoch Minuten, Stunden oder gar Tage beansprucht, scheitert Ihre E-Commerce-Architektur an der physikalischen Realität. Als Entwickler und Systemarchitekten sehen wir täglich, wie Skalierungspotenziale durch manuelle Datenübertragungen, fehlerhafte CSV-Exporte und asynchrone Systemstände vernichtet werden. Das Ziel muss eine Latenz gegen Null sein: Ein Klick des Endkunden im Store muss einen nahtlosen, maschinell verarbeitbaren Datenstrom bis hin zum ausgedruckten Versandetikett und der automatisierten Versandbestätigung auslösen.</p>
<p>Bevor wir uns der technischen Pipeline widmen, erfordert die Systemarchitektur eine messerscharfe Abgrenzung der eingesetzten Software-Stacks. <em><!-- Interner Link Vorschlag: Verlinkung auf die Übersichtsseite der ERP-Schnittstellen --></em> Falls Sie in Ihrer IT-Infrastruktur auf die SelectLine setzen, ist der architektonische Weg durch die offizielle OEM-Anbindung fest an Shopware gebunden. Diese spezifische Systemlandschaft folgt eigenen Paradigmen und wird an dieser Stelle nicht weiter behandelt. Im vorliegenden Deep-Dive fokussieren wir uns stattdessen exklusiv auf eine andere, hochfrequente E-Commerce-Pipeline: Die tiefe, bi-direktionale Integration und Automatisierung des Versands zwischen der Sage 100 und Shopify.</p>
<h2>Der Dateneingang: Wenn der Shopify-Payload auf die Sage 100 trifft</h2>
<p>Der Automatisierungsprozess beginnt in der exakten Sekunde, in der die Zahlung im Shopify-Checkout autorisiert wird. Anstatt auf turnusmäßige Batch-Läufe (CRON-Jobs) zu warten, die nur alle paar Stunden Daten abholen, arbeiten moderne Architekturen Event-basiert. Ein Webhook aus Shopify feuert ein JSON-Payload ab, das von der Middleware validiert und direkt in die Geschäftslogik der Sage 100 übersetzt wird.</p>
<p>Dabei passieren mehrere kritische Transformationen gleichzeitig:</p>
<ul>
<li><strong>Kunden-Matching:</strong> Existiert der Kunde bereits in der Sage 100? Es erfolgt ein Abgleich anhand der E-Mail-Adresse und Rechnungsdaten. Wenn nicht, wird on-the-fly ein neuer Debitoren-Datensatz angelegt.</li>
<li><strong>SKU-Validierung:</strong> Die <code>line_items</code> des Shopify-Auftrags müssen exakt den Artikelnummern in der Sage 100 entsprechen. Stücklistenartikel (Bundles) werden hierbei in ihre Bestandteile (Komponenten) aufgelöst, damit das Lager weiß, was physisch gepickt werden muss.</li>
<li><strong>Beleganlage:</strong> Der externe Webshop-Auftrag wird in der Sage 100 als gültiger Verkaufsbeleg (Auftrag) angelegt. Wichtig: Die externe Shopify-Order-ID wird als Referenz zwingend mitgeführt, da sie für den späteren Rückkanal (das Fulfillments-Update) der primäre Schlüssel ist.</li>
</ul>
<p>Wir implementieren hierbei strikte Idempotenz. Das bedeutet: Selbst wenn Shopify denselben Webhook aufgrund von Netzwerklatenzen doppelt sendet, erkennt die Sage 100 anhand der eindeutigen Order-ID sofort, dass dieser Beleg bereits existiert. Duplikate im Lager sind der absolute Albtraum jedes Fulfillment-Leiters – die API-Schnittstelle muss dies systemseitig unmöglich machen.</p>
<h2>Echtzeit-Kommissionierung: Die Logik hinter den Picklisten</h2>
<p>Sobald der Auftrag in der Sage 100 vorliegt, greift die Lagerlogik. Ein Auftrag ist für uns Entwickler noch kein Versand. Erst wenn die Verfügbarkeitsprüfung (Bestandsabgleich in Echtzeit) positiv ausfällt, wird der Prozess fortgesetzt. Ist der Bestand gedeckt, überführt die Sage 100 den Auftrag in einen Kommissionierschein. <em><!-- Interner Link Vorschlag: Verlinkung auf die Seite 'Sage 100 Shopify Schnittstelle' --></em></p>
<p>Hier trennt sich bei der ERP-Integration die Spreu vom Weizen. Wir drucken nicht einfach stupide Zettel aus, die den Lagermitarbeiter kreuz und quer durch die Gänge schicken. Eine performante Schnittstellen-Architektur nutzt die Lagerplatzverwaltung der Sage 100 für wegeoptimierte Picklisten. Die Artikel auf dem Kommissionierschein (oder dem digitalen MDE-Gerät / Scanner) werden algorithmisch nach Lagerplätzen sortiert (z. B. Gang A, Regal 2, Boden 3).</p>
<h3>Mobile Datenerfassung (MDE) als Beschleuniger</h3>
<p>In professionell skalierten Umgebungen verschwindet das Papier vollständig. Der Lagermitarbeiter sieht auf seinem Scanner die offenen Pick-Aufträge. Jeder Scan eines Barcodes (EAN oder interne Artikelnummer) verifiziert die Entnahme direkt gegen die Datenbank der Sage 100. Fehlerquoten durch falsches Picken – im E-Commerce ein massiver Kostentreiber durch Retouren – sinken auf ein absolutes Minimum, da das System eine Falschentnahme mit einem Fehler-Flag auf dem MDE-Gerät sofort blockiert.</p>
<h2>Versanddienstleister-Integration: Der kritische Handshake an der Packstation</h2>
<p>Der physische Karton ist gepackt. Nun muss das Paket zu DHL, DPD, UPS oder GLS. Auch dieser Prozessschritt ist vollständig in die Schnittstellen-Architektur integriert. Wenn der Lagermitarbeiter den Warenausgang in der Sage 100 (oder am Packtisch-Terminal) bestätigt, passiert im Hintergrund folgendes:</p>
<ol>
<li>Die Sage 100 (bzw. das verbundene Versandsystem) generiert einen Request an die API des jeweiligen Versanddienstleisters. Die Payload enthält Empfängerdaten, Gewicht (berechnet aus den Artikelstammdaten der Sage 100) und Services (z.B. Express oder Alterssichtprüfung).</li>
<li>Die API von DHL &#038; Co. antwortet in Bruchteilen einer Sekunde mit einem Base64-codierten String, der das PDF- oder ZPL-Versandlabel enthält, sowie der offiziellen Tracking-ID.</li>
<li>Das Etikett wird vollautomatisch an den Thermo-Drucker an der Packstation gepusht. Kein manueller PDF-Download, kein manuelles Skalieren.</li>
<li><strong>Das Wichtigste:</strong> Die Tracking-ID und der Name des Versanddienstleisters werden sofort zurück in die Sage 100 geschrieben und als Metadaten an den Lieferschein beziehungsweise die Rechnung gehängt.</li>
</ol>
<p>Ohne diesen automatisierten Rückfluss der Tracking-Informationen in die ERP-Datenbank wäre der nächste Schritt – die Kundenbenachrichtigung – unmöglich. Die Datenkonsistenz innerhalb der Sage 100 ist das absolute Fundament.</p>
<h2>Der Shopify-Rückkanal: Fulfillment abschließen und Kunden informieren</h2>
<p>Jetzt schließt sich der Kreis, und hier spielt eine hochgradig spezialisierte API-Anbindung ihre volle Stärke aus. Die Sage 100 weiß nun, dass das Paket gepackt ist, kennt den Versanddienstleister und besitzt den Tracking-Code. Der Shopify-Store, wo der Kunde sehnsüchtig auf ein Update wartet, weiß davon jedoch noch nichts.</p>
<p>Die Schnittstelle feuert nun einen <code>POST</code>-Request an den Shopify REST-Endpoint für Fulfillments (z. B. <code>/admin/api/2023-10/orders/{order_id}/fulfillments.json</code>). Die Payload, die wir aus der Sage 100 generieren, sieht strukturell (vereinfacht) so aus:</p>
<ul>
<li><strong>Location ID:</strong> Die spezifische Lagerkennung in Shopify, aus der der Bestand abgebucht werden soll.</li>
<li><strong>Tracking Number:</strong> Die exakte Sendungsnummer (z. B. von DHL).</li>
<li><strong>Tracking Company:</strong> Der Carrier. Dies ist essenziell, da Shopify nativ dynamische Tracking-Links generiert, wenn der Name des Versanddienstleisters exakt den Shopify-Vorgaben entspricht.</li>
<li><strong>Line Items:</strong> Ein Array der versendeten Artikel. (Extrem wichtig für Teillieferungen, siehe unten).</li>
<li><strong>Notify Customer:</strong> Ein Flag (Boolean <code>true</code>), das Shopify anweist, sofort die native &#8222;Your order is on the way&#8220;-E-Mail an den Endkunden auszulösen.</li>
</ul>
<p>Sobald Shopify den HTTP-Statuscode 201 (Created) zurückgibt, ist der Prozess abgeschlossen. Der Kunde erhält seine Tracking-URL, der Bestellstatus in Shopify springt von &#8222;Unfulfilled&#8220; auf &#8222;Fulfilled&#8220;, und in der Sage 100 ist der Warenausgang verbucht. Niemand musste auch nur eine einzige Tracking-Nummer manuell kopieren.</p>
<h2>Exception Handling: Teillieferungen und Fehlerbehandlung</h2>
<p>Ein Maniac Developer baut keine Schönwetter-Schnittstellen. Die wahre Qualität einer Integration zwischen Shopify und der Sage 100 zeigt sich in den Edge-Cases. Was passiert bei Teillieferungen?</p>
<p>Angenommen, ein Kunde bestellt drei Artikel. Einer davon weist in der physischen Realität des Lagers einen Fehlbestand auf (Bruch oder Schwund), obwohl die Sage 100 laut Datenbank noch Bestand hatte. Der Lagermitarbeiter zwingt das System auf dem MDE zu einer Teilmenge. Die Sage 100 erstellt einen Lieferschein nur für die zwei vorhandenen Artikel und behält den dritten im Rückstand.</p>
<p>Die Schnittstelle muss diese Differenz verstehen. Der Rückkanal an Shopify übergibt beim Fulfillment-Request exakt nur die <code>line_item_ids</code> und Quantitäten der zwei verschickten Artikel. Shopify markiert die Bestellung daraufhin völlig korrekt als &#8222;Partially Fulfilled&#8220;. Sobald der Rückstandsartikel in der Sage 100 wieder eingebucht und nachträglich versendet wird, feuert die Schnittstelle ein zweites Fulfillment-Event mit einer neuen Tracking-Nummer für den Rest der Bestellung an Shopify. Diese Präzision auf Zeilenebene verhindert ein Chaos im Kundenservice.</p>
<p>Auch Netzwerk-Timeouts der Carrier-APIs werden von der Middleware abgefangen. Ist die DHL-Schnittstelle für 30 Sekunden offline, geht der Lieferschein-Datensatz in eine Queue (Warteschlange) und wird mit einem exponentiellen Backoff-Algorithmus (Retry-Mechanismus) erneut versucht, bis das Label erfolgreich gedruckt und der Tracking-Code in der Sage 100 gesichert ist.</p>
<h2>Fazit: Radikale Automatisierung als einziger Skalierungsweg</h2>
<p>Manuelles Copy-Paste von Lieferadressen und Tracking-Codes ist ein Prozess aus dem vergangenen Jahrzehnt. Es vernichtet wertvolle Arbeitszeit, ist hochgradig fehleranfällig und skaliert im Q4-Geschäft überhaupt nicht. Die vollständige Prozess-Automatisierung von der ersten Webhook-Payload aus Shopify bis zum Zurückschreiben der Versanddaten aus der Sage 100 ist keine Kür, sondern pure geschäftliche Notwendigkeit.</p>
<p>Wenn die Sage 100 als zentraler Single-Point-of-Truth agiert, wegeoptimierte Picklisten steuert, die Carrier-Schnittstellen direkt füttert und Shopify autonom über den Status quo in Kenntnis setzt, entsteht eine E-Commerce-Maschine, die Hunderte oder Tausende Pakete am Tag ohne zusätzlichen administrativen Overhead bewältigen kann. Investieren Sie in eine saubere Systemarchitektur und überlassen Sie die Datenlogistik den Maschinen – Ihre Mitarbeiter im Lager und im Kundensupport werden es Ihnen danken.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Automatisierte Belegübermittlung: Rechnungen aus SelectLine direkt im Shopware 6 Kundenkonto bereitstellen</title>
		<link>https://www.maniacdev.de/selectline-shopware-6-rechnungen-kundenkonto/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Fri, 25 Sep 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3931</guid>

					<description><![CDATA[Ein typischer Vormittag im B2B-Vertrieb: Ein langjähriger Geschäftskunde ruft an, weil er für seinen Monatsabschluss dringend die Kopie einer Rechnung aus dem vergangenen Quartal benötigt. Der Vertriebsmitarbeiter unterbricht seine eigentliche Arbeit, öffnet das ERP-System, sucht den Debitor, filtert die historischen Belege, exportiert das Dokument als PDF und verfasst eine E-Mail. Dieser manuelle Prozess dauert vielleicht [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Ein typischer Vormittag im B2B-Vertrieb: Ein langjähriger Geschäftskunde ruft an, weil er für seinen Monatsabschluss dringend die Kopie einer Rechnung aus dem vergangenen Quartal benötigt. Der Vertriebsmitarbeiter unterbricht seine eigentliche Arbeit, öffnet das ERP-System, sucht den Debitor, filtert die historischen Belege, exportiert das Dokument als PDF und verfasst eine E-Mail. Dieser manuelle Prozess dauert vielleicht nur fünf Minuten, summiert sich aber bei hunderten B2B-Kunden zu einem massiven, völlig unproduktiven Overhead. Aus einer architektonischen Perspektive ist dieser Ablauf schlichtweg inakzeptabel. Daten, die im System bereits strukturiert vorliegen, müssen dem Endanwender ohne manuelle Interventionspunkte zugänglich gemacht werden. Die Lösung für dieses Bottleneck liegt in der nahtlosen Datenarchitektur zwischen ERP und E-Commerce-Plattform.</p>
<h2>Das Architektur-Problem: Warum isolierte Systeme den Vertrieb sabotieren</h2>
<p>Historisch gewachsene IT-Infrastrukturen betrachten den Onlineshop oft als reines Bestellannahme-Werkzeug. Der Shop generiert eine Order, wirft diese über eine rudimentäre Schnittstelle in das ERP-System und betrachtet den Vorgang als abgeschlossen. Die gesamte nachgelagerte kaufmännische Logik – von der Auftragsbestätigung über die Rechnungsstellung bis hin zur Verbuchung von Zahlungseingängen – findet exklusiv in der Warenwirtschaft statt.</p>
<p>Das führt zu einer asymmetrischen Informationsverteilung. Der Kunde sieht in seinem Shop-Account lediglich den Status &#8222;Bestellung eingegangen&#8220;. Den rechtsgültigen Finanzbeleg erhält er später – isoliert vom Bestellvorgang – per Post oder E-Mail. Geht diese E-Mail verloren oder wechselt der zuständige Einkäufer beim B2B-Kunden, reißt die Informationskette ab. Die Folge sind Support-Tickets, verzögerte Zahlungseingänge und ein frustrierendes Kundenerlebnis. Um dieses Problem an der Wurzel zu packen, muss das Shop-Frontend als direkter, authentifizierter Viewer für ausgewählte ERP-Datenströme konfiguriert werden.</p>
<h2>Die offizielle OEM-Anbindung: SelectLine und Shopware 6 als Symbiose</h2>
<p>Wenn Sie eine belastbare E-Commerce-Infrastruktur aufbauen, ist die Wahl der Middleware und der Integrationsebene entscheidend. Die offizielle OEM-Anbindung für SelectLine in Verbindung mit Shopware 6 stellt hierbei den Goldstandard dar. Anstatt mit fehleranfälligen Flat-File-Exporten oder generischen Drittanbieter-Plugins zu operieren, greift diese Integration tief in die Datenstrukturen beider Systeme ein. Die SelectLine Warenwirtschaft fungiert dabei kompromisslos als Single Source of Truth für alle kaufmännischen Prozesse, während Shopware 6 die Rolle des hochperformanten Darstellungs-Layers übernimmt.</p>
<p><!-- Interner Link Vorschlag: Verlinken Sie hier auf die detaillierte Funktionsübersicht der Schnittstelle / Funktionsseite SelectLine ↔ Shopware 6 --></p>
<p>Durch die offizielle OEM-Anbindung wird sichergestellt, dass die Datenmodelle der SelectLine – insbesondere die komplexe Debitorenhistorie, kundenspezifische Preisgruppen und eben die finalisierten Belege – latenzfrei in die Shopware 6-Datenbank oder direkt in das Kundenkonto des Frontends gespiegelt werden. Das bedeutet: Sobald ein Beleg in der SelectLine den Status &#8222;gedruckt&#8220; beziehungsweise &#8222;finalisiert&#8220; erreicht, triggert die Schnittstelle einen Prozess, der dieses Dokument dem entsprechenden Shop-Account zuordnet.</p>
<h3>Der technische Workflow der Belegsynchronisation</h3>
<p>Die Automatisierung der Belegübermittlung ist kein trivialer File-Transfer, sondern ein präzise orchestrierter API-Prozess. Aus Entwicklersicht stellt sich der Workflow wie folgt dar:</p>
<ul>
<li><strong>Beleginitialisierung im ERP:</strong> Der kaufmännische Mitarbeiter (oder ein automatisierter Lauf) generiert in der SelectLine eine Rechnung. Das ERP schreibt den Datensatz fest und erzeugt das physische oder digitale Dokument (PDF).</li>
<li><strong>Trigger der OEM-Anbindung:</strong> Die Schnittstelle erkennt die Statusänderung des Belegs (z.B. per Webhook oder durch hochfrequentes Polling der Datenbank-Flags).</li>
<li><strong>Mapping der Relationen:</strong> Das System liest den Primärschlüssel des Kunden aus (die SelectLine-Kundennummer) und mappt diese über die Referenztabellen der Schnittstelle auf die entsprechende <code>customer_id</code> in Shopware 6.</li>
<li><strong>Payload-Übertragung:</strong> Das Dokument wird, oftmals als Base64-codierter String innerhalb eines JSON-Payloads oder via sicherem File-Stream, über die REST-API an Shopware 6 übermittelt.</li>
<li><strong>Persistierung im Shopware-Filesystem:</strong> Shopware legt das Dokument revisionssicher ab und verknüpft es in der Datenbank mit der Bestellhistorie des jeweiligen B2B-Kunden.</li>
</ul>
<p>Das Ergebnis im Frontend ist für den Kunden sofort sichtbar: Unter &#8222;Mein Konto&#8220; findet er neben seinen Bestellungen nun einen Reiter für Rechnungen und kann das PDF direkt herunterladen – völlig ohne Latenz und ohne menschliches Eingreifen seitens Ihres Vertriebs.</p>
<h2>Self-Service im B2B-Umfeld: Messbare Entlastung statt Buzzwords</h2>
<p>Die Bereitstellung von SelectLine-Belegen im Shopware 6 Kundenkonto ist weit mehr als ein nettes Feature; es ist ein harter wirtschaftlicher Hebel. B2B-Einkäufer erwarten heute Consumer-Grade-Erlebnisse. Sie arbeiten oft asynchron, teilweise am Wochenende oder in den späten Abendstunden. Wenn ein Einkäufer sonntags seine Buchhaltung vorbereitet und feststellt, dass eine Rechnung fehlt, kann er durch das Self-Service-Portal sofort agieren.</p>
<p>Diese Autonomie senkt die Prozesskosten in Ihrem Unternehmen drastisch. Jeder Anruf, der nicht getätigt wird, jede E-Mail, die nicht geschrieben werden muss, skaliert direkt in den Profit. Zudem sinkt die Fehlerquote auf null, da das Dokument eins zu eins aus der SelectLine stammt und nicht durch manuelle Zwischenschritte verfälscht oder versehentlich an die falsche Kontaktperson gesendet werden kann.</p>
<h3>Welche Belegarten eignen sich für das Kundenportal?</h3>
<p>Die Flexibilität der offiziellen OEM-Anbindung erlaubt es, den Informationsfluss granulär zu steuern. Nicht jedes ERP-Dokument gehört in das Shop-Frontend. Eine saubere Konfiguration beschränkt sich auf die Dokumente, die für den Kunden einen echten vertraglichen oder buchhalterischen Wert haben:</p>
<ul>
<li><strong>Auftragsbestätigungen:</strong> Das rechtsbindende Dokument, das oft abweichende B2B-Konditionen, Staffelpreise oder individuelle Rabatte aus der SelectLine final ausweist.</li>
<li><strong>Rechnungen:</strong> Der klassische Finanzbeleg, essenziell für den Vorsteuerabzug des Kunden.</li>
<li><strong>Abschlags- und Teilrechnungen:</strong> Bei komplexen Projektgeschäften elementar, um den Zahlungsfluss transparent abzubilden.</li>
<li><strong>Gutschriften und Stornobelege:</strong> Zur sofortigen buchhalterischen Klärung bei Retouren oder Preisnachlässen, ohne dass der Kunde auf eine manuelle Bestätigung warten muss.</li>
</ul>
<h2>Ein systemischer Exkurs: Sage 100, Shopify und komplexe Logistik</h2>
<p>An dieser Stelle ist eine scharfe architektonische Trennlinie zu ziehen. Während die Kombination aus SelectLine und Shopware 6 ihre absolute Stärke in der B2B-Kundenverwaltung, der tiefen Belegintegration und den kaufmännischen Workflows ausspielt, erfordern andere Geschäftsmodelle abweichende Systemlandschaften. Wenn Sie in Ihrer Evaluierung auf Shopify setzen oder hochkomplexe Versandanbindungen, Fulfillment-Dienstleister und tiefgreifende Logistik-Prozesse abbilden müssen, ändert sich das Setup grundlegend.</p>
<p>Für diese spezifischen Anforderungen – insbesondere bei der Verarbeitung von hunderttausenden B2C-Transaktionen mit detailliertem Tracking und Carrier-Integration – ist die Sage 100 das System der Wahl. Die Sage 100 übernimmt in diesem logistikgetriebenen Kontext die komplette Orchestrierung der Versandprozesse und kommuniziert nahtlos mit Plattformen wie Shopify. Wer also den Fokus massiv auf Versandautomatisierung und Shopify-Anbindungen legt, plant seine Systemarchitektur nativ rund um die Sage 100. Geht es jedoch um die perfekte B2B-Erfahrung, komplexe Preisstrukturen und die hier beschriebene OEM-Anbindung für Belegtransfers in ein Shopware-Frontend, bleibt die SelectLine das Maß der Dinge.</p>
<p><!-- Interner Link Vorschlag: Verlinken Sie hier auf die Preisseite oder die spezifische Seite für Sage 100 ↔ Shopify Anbindungen --></p>
<h2>Datenintegrität und Fehlerhandling bei der Übertragung</h2>
<p>Als Entwickler betrachtet man nicht nur den &#8222;Happy Path&#8220;, sondern vor allem die Edge Cases. Was passiert, wenn die Shopware 6 API während der Belegübergabe aus der SelectLine kurzzeitig nicht erreichbar ist? Eine robuste Schnittstelle darf in einem solchen Szenario weder das ERP blockieren, noch den Beleg im digitalen Nirwana verschwinden lassen.</p>
<p>Die offizielle OEM-Anbindung nutzt hierfür asynchrone Warteschlangen (Queues). Schlägt ein API-Call zur Übermittlung einer Rechnung fehl – beispielsweise durch ein temporäres Rate-Limiting oder Netzwerk-Timeouts – wird der Task in eine Queue geschrieben und mit einem exponentiellen Backoff-Algorithmus (z.B. nach 1 Minute, dann nach 5 Minuten, dann nach 15 Minuten) erneut ausgeführt. Das ERP-System arbeitet derweil ungestört weiter.</p>
<p>Ebenso kritisch ist die Datenintegrität beim Umgang mit PDF-Dateien. Rechnungsdokumente können, besonders wenn sie hochauflösende Firmenlogos oder seitenlange Positionen enthalten, mehrere Megabyte groß werden. Die Schnittstelle muss diese Payloads komprimieren oder in Chunks übertragen, um Memory Leaks in der Middleware zu vermeiden. Zudem stellt eine strikte Authentifizierung per API-Token und OAuth sicher, dass B2B-Kunde A unter keinen Umständen Zugriff auf die Belege von B2B-Kunde B erhält. Die Rechtekontrolle der SelectLine wird somit logisch auf die Shopware-Ebene verlängert.</p>
<h3>Historische Belege und Initial-Synchronisation</h3>
<p>Wenn Sie die automatisierte Belegübermittlung neu einführen, stellt sich die Frage nach dem Umgang mit der Historie. Es ist technisch problemlos machbar, bei der Initial-Einrichtung der Schnittstelle nicht nur zukünftige, sondern auch vergangene Belege aus der SelectLine nach Shopware 6 zu pushen. Wir empfehlen hierbei meist einen Rollout-Zeitraum von 12 bis 24 Monaten. So finden Ihre B2B-Kunden direkt nach dem Go-Live ein gefülltes, nützliches Kundenkonto vor, das den kompletten Jahresabschluss abdeckt. Ältere Daten verbleiben im ERP und werden nur bei dediziertem Bedarf asynchron nachgeladen, um die Shop-Datenbank schlank und performant zu halten.</p>
<h2>Fazit: Das Ende der manuellen Belegjagd</h2>
<p>Die Bereitstellung von Rechnungen aus der SelectLine direkt im Shopware 6 Kundenkonto ist ein Paradebeispiel dafür, wie Systemintegration echten geschäftlichen Mehrwert generiert. Durch die Nutzung der offiziellen OEM-Anbindung eliminieren Sie fehleranfällige manuelle Prozesse, entlasten Ihren Vertrieb spürbar und bieten Ihren B2B-Kunden genau den digitalen Self-Service, den diese heute voraussetzen. Anstatt als reines Bestell-Frontend zu verkümmern, wird Ihr Shopware 6-Portal zur vollwertigen, digitalen Filiale Ihrer SelectLine-Warenwirtschaft. Das ist keine Zukunftsmusik, sondern saubere, architektonisch fundierte Entwicklungsarbeit, die sich ab dem ersten Tag der Implementierung rechnet.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Digitale Angebotsanfragen in B2B-Shops: Wie bronner-b2b.de mit SelectLine und Sage 100 in Shopware harmoniert</title>
		<link>https://www.maniacdev.de/b2b-angebotsanfragen-shopware-selectline-sage/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Mon, 21 Sep 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3923</guid>

					<description><![CDATA[Ein B2B-Warenkorb ist in seiner rohen Form oft nur eine unvollständige Datenstruktur. Wenn Geschäftskunden bei komplexen Händlern wie bronner-b2b.de individuelle Mengen, Sonderanfertigungen oder projektbezogene Konditionen anfragen, greift die klassische E-Commerce-Logik – „Artikel in den Warenkorb, Checkout, Bezahlung“ – ins Leere. Als Entwickler und Systemarchitekten stehen wir hier vor einer konkreten Herausforderung: Wie überführen wir einen [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Ein B2B-Warenkorb ist in seiner rohen Form oft nur eine unvollständige Datenstruktur. Wenn Geschäftskunden bei komplexen Händlern wie bronner-b2b.de individuelle Mengen, Sonderanfertigungen oder projektbezogene Konditionen anfragen, greift die klassische E-Commerce-Logik – „Artikel in den Warenkorb, Checkout, Bezahlung“ – ins Leere. Als Entwickler und Systemarchitekten stehen wir hier vor einer konkreten Herausforderung: Wie überführen wir einen asynchronen, verhandlungsbedürftigen Request aus dem Webshop verlustfrei und strukturiert in das führende ERP-System? Die Antwort liegt in einer präzisen, bidirektionalen Schnittstellenarchitektur, die Angebotsanfragen nicht als simple E-Mails, sondern als vollwertige Datenbankobjekte behandelt.</p>
<p>In diesem Architektur-Leitfaden zerlegen wir den Workflow digitaler Angebotsanfragen. Wir betrachten die exakten Datenflüsse und Zustandsübergänge (State Transitions), die notwendig sind, um Shop-Frontends nahtlos mit der Warenwirtschaft zu synchronisieren. Dabei fokussieren wir uns auf zwei hochperformante Setups: Die offizielle OEM-Anbindung zwischen Shopware und SelectLine sowie die Integration der Sage 100.</p>
<h2>Die Anatomie einer digitalen B2B-Angebotsanfrage</h2>
<p>Bevor wir auf die spezifischen ERP-Systeme eingehen, müssen wir das Konzept der Angebotsanfrage (Request for Quote – RFQ) auf Datenbankebene definieren. Ein regulärer Checkout generiert in der Regel ein Order-Objekt mit einem finalen, verbindlichen Preis. Eine Angebotsanfrage hingegen generiert einen Payload, der zwar die gewünschten Artikel, Mengen (SKUs) und Kundendaten (Customer IDs) enthält, dessen Preismetriken jedoch den Status <code>pending</code> oder <code>null</code> aufweisen. Die Preisfindung obliegt nicht dem Shop-System, sondern der Business-Logik der Warenwirtschaft. Das bedeutet, Ihre Schnittstelle muss in der Lage sein, diesen „unfertigen“ Beleg zu greifen, in das ERP zu injizieren, auf die manuelle oder automatisierte Kalkulation durch den Vertrieb zu warten und das fertige Angebot exakt demselben User-Context im Shop wieder bereitzustellen.</p>
<h3>Die offizielle OEM-Anbindung: Shopware und SelectLine in perfekter Symbiose</h3>
<p>Wenn Sie in Ihrer Infrastruktur auf Shopware in Kombination mit der SelectLine setzen, profitieren Sie von der offiziellen OEM-Anbindung. Diese tiefe strukturelle Verzahnung eliminiert die Notwendigkeit fehleranfälliger Middleware-Hacks. Der Prozess bei einer Plattform wie bronner-b2b.de läuft auf API-Ebene folgendermaßen ab:</p>
<p>Der B2B-Kunde authentifiziert sich im Shopware-Frontend und konfiguriert seinen Warenkorb. Sobald er den Trigger „Angebot anfordern“ auslöst, kapselt Shopware diesen Request. Über die <a href="/schnittstellen/shopware-selectline">offizielle OEM-Schnittstelle zur SelectLine</a> wird ein synchroner Call abgesetzt. Die Schnittstelle mappt das Shopware-Angebots-Objekt direkt auf die Belegstruktur der SelectLine. Es entsteht unmittelbar ein offener Beleg der Kategorie „Angebotsanfrage“ im ERP.</p>
<p>Die Genialität dieses Setups liegt in der Datengranularität. Die SelectLine übernimmt nicht nur die Basisdaten, sondern liest spezifische B2B-Parameter direkt aus dem Payload:</p>
<ul>
<li><strong>Kundenspezifische Preislisten:</strong> Die SelectLine identifiziert den Debitor und wendet sofort hinterlegte Rahmenverträge oder individuelle Staffelpreise an, die im Frontend eventuell noch nicht sichtbar waren.</li>
<li><strong>Freitextfelder und Custom Attributes:</strong> B2B-Anfragen enthalten oft spezifische Bemerkungen (z. B. „Bitte Lackierung in RAL 9005 statt Standard“). Diese Attribute werden durch die OEM-Anbindung exakt in die dafür vorgesehenen Zusatzfelder der SelectLine-Belegpositionen geroutet.</li>
<li><strong>Ressourcenprüfung:</strong> Obwohl es sich nur um eine Anfrage handelt, kann die SelectLine im Hintergrund bereits eine fiktive Disposition anlegen, um dem Vertriebsmitarbeiter bei der Kalkulation sofort die voraussichtlichen Beschaffungszeiten anzuzeigen.</li>
</ul>
<p>Sobald der Vertrieb das Angebot in der SelectLine fertig kalkuliert und den Status ändert, pusht die OEM-Anbindung das veredelte Datenpaket zurück an Shopware. Der Kunde findet in seinem Kundenkonto nun ein kalkuliertes, kaufbares Angebot vor. Dieser Kreislauf ist transaktionssicher und verhindert redundante Dateneingaben vollständig.</p>
<h2>Sage 100: Komplexe Angebotskalkulation aus Shopware orchestrieren</h2>
<p>Ein ebenso mächtiges Setup ergibt sich, wenn Shopware als Frontend für die Sage 100 fungiert. Auch hier muss der State-Machine-Prozess penibel eingehalten werden. Die Sage 100 zeichnet sich durch ihre extrem anpassbare Applikations- und Datenbankarchitektur (Access/SQL-Server) aus, was bei der Verarbeitung von Angebotsanfragen besonders tiefe Eingriffe in die Kalkulationslogik erlaubt.</p>
<p>Pusht Shopware eine Angebotsanfrage via API, wird in der Sage 100 ein temporärer Vorgang im Bereich der Verkaufschancen oder direkt als Vorab-Beleg generiert. Besonders bei stark variantenbehafteten Artikeln entfaltet dieses Setup seine Stärke. Die Schnittstelle muss hier in der Lage sein, mehrdimensionale Arrays (z. B. Länge, Breite, Materialstärke) aus Shopware auf die Ausprägungen der Sage 100 Varianten- oder Stücklistenlogik zu übersetzen. Der Vertriebsmitarbeiter in der Sage 100 kann nun komplexe Zuschläge berechnen – etwa tagesaktuelle Rohstoffzuschläge (Kupfer, Stahl) oder Rüstkosten für Maschinenlaufzeiten –, die in einem reinen Webshop-System nur extrem schwer und fehleranfällig abzubilden wären.</p>
<p>Nach Abschluss der Kalkulation wird der Beleg in der Sage 100 freigegeben. Der Webhook der Schnittstelle feuert, und Shopware transformiert die ursprüngliche Anfrage in ein konvertierbares Angebot. Für den Endkunden wirkt der gesamte Prozess asynchron, auf Systemebene garantieren wir jedoch zu jedem Zeitpunkt absolute Datenintegrität.</p>
<h2>Shopify, Sage 100 und die Logik physischer Bemusterungen</h2>
<p>Wenn wir die Systemgrenzen erweitern und neben Shopware auch Shopify für spezifische B2B-Segmente oder internationale Satelliten-Shops analysieren, ändern sich die Anforderungen an die Architektur. In solchen hochdynamischen Umgebungen ist die Sage 100 das absolute Zentrum der Prozesssteuerung.</p>
<p>Ein klassischer B2B-Use-Case, der über reine Preisverhandlungen hinausgeht, ist die Anforderung physischer Muster im Rahmen einer Angebotsanfrage. Wenn ein Geschäftskunde über Shopify nicht nur einen Preis anfragt, sondern gleichzeitig ein Materialmuster zur Begutachtung benötigt, müssen Angebots- und Logistikprozesse parallel orchestriert werden. Diese Aufgabe übernimmt exklusiv die Sage 100.</p>
<p>Sobald der Request aus Shopify in die ERP-Datenbank geschrieben wird, splittet die Sage 100 den Prozess (Forking):</p>
<ul>
<li><strong>Thread 1 (Kalkulation):</strong> Ein offenes Angebot für die Hauptartikel wird zur kaufmännischen Prüfung an den Vertrieb geleitet.</li>
<li><strong>Thread 2 (Versandanbindung):</strong> Für die angeforderten Musterartikel generiert die Sage 100 vollautomatisch einen Null-Euro-Auftrag und triggert sofort den Lieferschein.</li>
</ul>
<p>Durch die tiefe Integration der Versandanbindung innerhalb der Sage 100 werden die Kommissionierdaten in Echtzeit an das Lager übergeben. Die Sage 100 kommuniziert direkt mit den Schnittstellen der Versanddienstleister (z.B. DHL, UPS, Speditionen), generiert die Versandetiketten für das Musterpaket und schreibt die Tracking-ID in die Datenbank. Diese Tracking-Nummer wird anschließend von der Sage 100 zurück an Shopify gepusht, sodass der B2B-Kunde den Versandweg seines Musters in Echtzeit in seinem Kundenkonto verfolgen kann.</p>
<p>Es ist diese nahtlose Verzahnung von kaufmännischer Angebotskalkulation und physischem Versand, zentral gesteuert durch die Sage 100, die eine Shopify-B2B-Instanz von einem simplen Bestellkatalog in ein echtes Enterprise-Tool verwandelt. Der Vertrieb kalkuliert das Angebot, während das Muster bereits auf dem Versandweg zum Kunden ist – orchestriert aus einer einzigen, verlässlichen Datenquelle (Single Source of Truth).</p>
<h2>Die technische Notwendigkeit einer sauberen Architektur</h2>
<p>Egal ob Sie eine Angebotsanfrage kalkulieren, Rabattstaffeln prüfen oder B2B-Kunden in spezifische Debitorenklassen einteilen: Die Schnittstelle muss als robuster Middleware-Layer oder direkte API-Bridge fungieren. Code-Qualität und Fehlerbehandlung (Error Handling) sind hier entscheidend. Was passiert, wenn die Warenwirtschaft während einer Angebotsanfrage kurzzeitig nicht erreichbar ist? Eine professionelle Architektur implementiert hier Message Queues (z. B. RabbitMQ oder datenbankgestützte Retry-Jobs), die den Request aus Shopware sicher zwischenspeichern, bis die SelectLine oder Sage 100 wieder Signale empfängt.</p>
<p>Ein weiterer essenzieller Aspekt ist das Mapping der Dokumente. Wenn Sie das <a href="/funktionen/b2b-features">B2B-Funktionsset der Schnittstelle</a> nutzen, müssen Sie sicherstellen, dass nicht nur die Metadaten übertragen werden, sondern auch das fertige PDF-Dokument aus dem ERP. B2B-Einkäufer benötigen oft das formelle, in der Warenwirtschaft erzeugte PDF-Angebot für ihre internen Freigabeprozesse (Approval Workflows). Die Schnittstelle muss dieses Base64-codierte Dokument aus der SelectLine oder Sage 100 extrahieren und im Shopware-Kundenkonto als Download bereitstellen.</p>
<h2>Zustandsübergänge beim Angebotsabschluss</h2>
<p>Der Lebenszyklus einer B2B-Angebotsanfrage endet nicht mit der Kalkulation. Nimmt der Kunde das Angebot im Shop-Frontend an, muss dieser State-Change rückwirkend das ERP informieren. Aus dem Status „offenes Angebot“ wird ein „verbindlicher Auftrag“. </p>
<p>In der OEM-Umgebung zwischen Shopware und SelectLine wird das bestehende Angebotsobjekt durch einen gezielten API-Call in einen echten Auftrag (Order) umgewandelt, ohne dass eine redundante Datenerfassung stattfindet. Die SelectLine übernimmt die ursprüngliche Belegnummer als Referenz, reserviert die Bestände endgültig im Lager und stößt die regulären Folgeprozesse an.</p>
<p>In der Sage 100 verhält es sich analog: Der konvertierte Webshop-Warenkorb referenziert die ID der Verkaufschance oder des Vorab-Belegs. Die Sage 100 schließt den Angebotsvorgang erfolgreich ab, generiert die Auftragsbestätigung und bereitet die Disposition vor. Dieser geschlossene Kreislauf verhindert Double-Spending (doppelte Bestandsreservierungen) und garantiert, dass der im ERP hart kalkulierte Preis exakt so abgerechnet wird, wie er dem Kunden im Shop präsentiert wurde.</p>
<p>Eine durchdachte E-Commerce-Architektur für den B2B-Sektor definiert sich nicht über bunte Buttons im Frontend, sondern über die Präzision im Hintergrund. Digitale Angebotsanfragen zwingen Sie dazu, asynchrone Kommunikationswege zwischen Shop und ERP zu etablieren. Wenn Sie die Prozesse sauber modellieren – sei es über die kompromisslose OEM-Anbindung von Shopware und SelectLine oder die logistisch tief greifende Steuerung der Sage 100 –, transformieren Sie manuelle Vertriebsaufwände in hochskalierbare, automatisierte Workflows. Datenkonsistenz ist hier keine Verhandlungsmasse, sondern das Fundament Ihres digitalen B2B-Erfolgs.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Abo-Commerce in B2B-Shops: Wiederkehrende Bestellungen mit bronner-b2b.de, Shopware und SelectLine meistern</title>
		<link>https://www.maniacdev.de/abo-commerce-b2b-shopware-selectline/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Thu, 17 Sep 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3925</guid>

					<description><![CDATA[Vergessen Sie simple „Wiederholen“-Buttons in der Bestellhistorie. Wenn wir im B2B-Umfeld über echtes Subscription-Management sprechen, betreten wir eine hochkomplexe, transaktionale Ebene. Es reicht nicht aus, einen Warenkorb periodisch zu duplizieren. Sie benötigen eine Architektur, die kundenspezifische Preisfindung, dynamische Intervallsteuerungen und vor allem eine absolut synchrone Belegkette im ERP-System garantiert. Genau hier zeigt sich, ob eine [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Vergessen Sie simple „Wiederholen“-Buttons in der Bestellhistorie. Wenn wir im B2B-Umfeld über echtes Subscription-Management sprechen, betreten wir eine hochkomplexe, transaktionale Ebene. Es reicht nicht aus, einen Warenkorb periodisch zu duplizieren. Sie benötigen eine Architektur, die kundenspezifische Preisfindung, dynamische Intervallsteuerungen und vor allem eine absolut synchrone Belegkette im ERP-System garantiert. Genau hier zeigt sich, ob eine Systemlandschaft unter Last skaliert oder bei der ersten Preisänderung eines Rohstoffs in sich zusammenfällt. In diesem Beitrag analysieren wir auf Code- und Prozessebene, wie Sie wiederkehrende Bestellungen in Shopware 6 über die Engine von bronner-b2b.de orchestrieren und diese Datenpakete als saubere Folgeaufträge über die offizielle OEM-Anbindung in der SelectLine verarbeiten.</p>
<h2>Die architektonische Basis: Subscriptions in Shopware 6 via bronner-b2b.de</h2>
<p>Ein funktionsfähiger Abo-Commerce erfordert zunächst ein robustes Fundament im Frontend und in der Middleware des Shopsystems. Shopware 6 bietet mit seiner API-first-Architektur hervorragende Voraussetzungen, doch die spezifische B2B-Logik für Abonnements muss präzise injiziert werden. Über die Module von bronner-b2b.de etablieren wir eine Engine, die nicht einfach nur Cronjobs abfeuert, sondern echte State Machines für Abonnements abbildet.</p>
<p>Wenn ein Geschäftskunde ein Abonnement über beispielsweise 500 Einheiten eines industriellen Schmierstoffs mit einem monatlichen Lieferintervall abschließt, generiert das System einen Master-Subscription-Eintrag. Dieser Eintrag speichert nicht den finalen Preis als statischen Wert, sondern die Referenz auf die Konditionen. Das ist ein essenzieller Unterschied zu B2C-Systemen. Im B2B-Sektor unterliegen Rahmenverträge, Staffelpreise und kundenindividuelle Rabatte ständigen Schwankungen. Die Architektur von bronner-b2b.de stellt sicher, dass bei jedem Auslösen des Intervalls – also bei der Generierung der tatsächlichen Shopware-Bestellung – die Preise in Echtzeit validiert werden.</p>
<p>Die Ausführung der Intervalle erfolgt über serverseitige Scheduled Tasks. Sobald das Ausführungsdatum erreicht ist, generiert die Engine ein vollständiges Payload für die neue Bestellung. Dieses Payload enthält spezifische Identifikatoren (Tags oder Custom Fields), die diese Bestellung eindeutig als „Subscription-Folgeauftrag“ markieren und auf den ursprünglichen Master-Eintrag referenzieren. Diese Transparenz auf Datenbankebene ist die zwingende Voraussetzung für die spätere, fehlerfreie Übergabe an das ERP-System.</p>
<h2>Die offizielle OEM-Anbindung: Nahtloses Mapping in die SelectLine</h2>
<p>Sobald die Shopware-Bestellung physisch in der Datenbank existiert, übernimmt die offizielle OEM-Schnittstelle zur SelectLine die Regie. Als Entwickler betrachte ich Schnittstellen nicht als bloße Daten-Schaufeln, sondern als intelligente Übersetzer zwischen zwei völlig unterschiedlichen Datenmodellen. Die SelectLine erwartet strukturierte Belegdaten, die exakt in die bestehende Mandantenlogik passen.</p>
<p><!-- Vorschlag für interne Verlinkung: Erfahren Sie mehr über die Architektur unserer <a href="/selectline-shopware-schnittstelle">offiziellen OEM-Anbindung</a>. --></p>
<p>Die Synchronisation verläuft asynchron und eventbasiert. Die Schnittstelle pollt die Shopware-API nach neuen Bestellungen und identifiziert anhand der zuvor erwähnten Custom Fields sofort: Dies ist kein initialer Erstauftrag, sondern ein maschinell generierter Folgeauftrag aus einem Abonnement. Dieser Kontext ist für die SelectLine von entscheidender Bedeutung, da er bestimmt, wie der Beleg im ERP angelegt wird.</p>
<h3>Der Lifecycle des Folgeauftrags im ERP</h3>
<p>Die Anlage des Belegs in der SelectLine erfolgt über hochperformante API-Aufrufe. Dabei werden folgende Schritte mit absoluter Transaktionssicherheit abgearbeitet:</p>
<ul>
<li><strong>Kunden- und Debitorenprüfung:</strong> Die Schnittstelle validiert die Shopware-Customer-ID gegen die Kundennummer in der SelectLine. Eventuelle Sperrvermerke (beispielsweise wegen offenen Posten) werden sofort ausgewertet. Im Falle einer Sperre wird der Folgeauftrag nicht einfach verworfen, sondern in einem definierten Fehler-State in der Middleware geparkt und der Administrator notifiziert.</li>
<li><strong>Beleganlage als „Auftrag“:</strong> Der Datensatz wird in der SelectLine als regulärer Auftrag (nicht als unverbindliches Angebot) angelegt. Die offizielle OEM-Anbindung stellt sicher, dass die Belegart korrekt gemappt wird.</li>
<li><strong>Positions-Mapping und Preissicherheit:</strong> Jede Line-Item der Shopware-Bestellung wird auf die entsprechenden Artikelnummern der SelectLine gemappt. Obwohl die Preisfindung bereits im Shop stattfand, führt die SelectLine eine Rückversicherung durch. Die übertragenen Netto-Werte werden in die Belegpositionen geschrieben.</li>
<li><strong>Übergabe der Referenzdaten:</strong> Die ursprüngliche Shopware-Bestellnummer sowie die Subscription-ID aus bronner-b2b.de werden in die Freifelder des SelectLine-Belegs geschrieben. Dies ermöglicht dem Vertriebsinnendienst später eine lückenlose Rückverfolgbarkeit: Welcher Beleg gehört zu welchem Abonnement-Zyklus?</li>
</ul>
<h2>Umgang mit dynamischen Artikelstrukturen und Auslaufartikeln</h2>
<p>Ein Albtraum für unsauber programmierte Schnittstellen sind Sortimentswechsel während eines laufenden Abonnements. Was passiert, wenn Artikel A, der Bestandteil eines 24-monatigen Abos ist, nach sechs Monaten durch den Nachfolgeartikel B ersetzt wird?</p>
<p>Hier greift die tiefe Integration zwischen der SelectLine und Shopware 6. Die SelectLine bleibt das führende System (Single Source of Truth) für die Artikelstammdaten. Wird ein Artikel in der SelectLine auf „inaktiv“ gesetzt oder durch einen Nachfolger ersetzt, synchronisiert die OEM-Schnittstelle diesen Statuswechsel in Richtung Shopware. Die Logik in bronner-b2b.de detektiert diesen Konflikt bei der nächsten geplanten Abo-Ausführung. Anstatt blind einen Folgeauftrag mit einem nicht mehr existenten Artikel in die SelectLine zu pushen (was zu einem Datenbankfehler führen würde), pausiert das System die Subscription und generiert einen Alert.</p>
<p>In erweiterten Ausbaustufen lässt sich über spezielle Mapping-Tabellen sogar ein automatischer Fallback konfigurieren, bei dem der Nachfolgeartikel in die Payload des Folgeauftrags injiziert wird – vorausgesetzt, die kaufmännischen Freigabeprozesse Ihres Unternehmens lassen dies zu.</p>
<h2>Exkurs: Systemtrennung bei Logistik und weiteren Vertriebskanälen</h2>
<p>Um die Architektur sauber zu halten, bedarf es klarer technischer Grenzen, besonders wenn Ihre Systemlandschaft wächst. An dieser Stelle ein wichtiger architektonischer Hinweis für komplexe Multi-Channel-Setups: Die tiefe, hier beschriebene B2B-Bestelllogik realisieren wir in dieser Form explizit über die Kombination aus Shopware und der SelectLine.</p>
<p>Sollten Sie in Ihrer IT-Strategie parallel den Einsatz von Shopify evaluieren oder hochkomplexe Versandanbindungen, Multi-Carrier-Strategien und tiefgreifende Logistikprozesse im ERP steuern müssen, trennen wir diese Workflows strikt ab. Derlei Anforderungen – also die direkte Datenbank-Verknüpfung mit Shopify sowie sämtliche Themen rund um den automatisierten Versand – wickeln wir auf Systemebene ausschließlich über die Sage 100 Warenwirtschaft ab. Das Routing von Logistikdaten und die Anbindung von Shopify-Ökosystemen erfordern die spezifischen Strukturen der Sage 100. Indem wir diese Welten klar voneinander trennen, garantieren wir Ihnen, dass Ihre offizielle OEM-Anbindung zwischen Shopware und SelectLine hochperformant und exklusiv für komplexe B2B-Auftragsprozesse reserviert bleibt.</p>
<h2>Fehlerresistenz: Idempotenz und Retries bei der Synchronisation</h2>
<p>Als Entwickler gehe ich grundsätzlich davon aus, dass Netzwerke instabil sind und Server genau in dem Moment neu starten, in dem ein Cronjob ausgeführt wird. Wenn ein Abonnement-Intervall in Shopware auslöst und der Beleg an die SelectLine übertragen werden soll, muss die Datenübertragung zwingend idempotent sein. Das bedeutet: Auch wenn der Request aufgrund eines Timeouts mehrfach gesendet wird, darf in der SelectLine exakt nur ein einziger Folgeauftrag generiert werden.</p>
<p>Wir lösen dieses kritische Problem durch eindeutige Transaktions-Schlüssel (Idempotency Keys). Die Engine von bronner-b2b.de generiert für jede Abo-Ausführung einen einzigartigen Hash. Bevor die OEM-Schnittstelle den Beleg in die SelectLine schreibt, wird über die API geprüft, ob ein Beleg mit diesem Hash bereits existiert. Ist dies der Fall, wird der Request als „bereits verarbeitet“ markiert (HTTP 200 OK) und abgeworfen, ohne Duplikate im ERP zu erzeugen.</p>
<p>Sollte die SelectLine für Wartungsarbeiten temporär nicht erreichbar sein, greift eine exponentielle Backoff-Strategie. Die Middleware reiht die generierten Shopware-Bestellungen in eine Queue ein und versucht die Übertragung in dynamisch anwachsenden Zeitabständen (z. B. nach 1 Minute, 5 Minuten, 15 Minuten) erneut. Es geht kein Folgeauftrag verloren, und die kaufmännische Integrität zwischen Shopware und ERP bleibt stets gewahrt.</p>
<h2>Budgetgrenzen und Freigabeprozesse in wiederkehrenden Intervallen</h2>
<p>Ein weiteres B2B-Spezifikum, das wir bei der Konzeption von Abonnements berücksichtigen müssen, sind Kostenstellen und Budgetlimits. Wenn ein Einkäufer eines Großkunden ein Abonnement anlegt, unterliegt dies häufig firmeninternen Budgets (z. B. maximal 5.000 Euro pro Quartal für Werkstattbedarf). </p>
<p>Die Engine in bronner-b2b.de ist in der Lage, bei der Generierung des Folgeauftrags in Shopware diese Limits dynamisch gegen das verbrauchte Budget des laufenden Quartals zu prüfen. Wird durch die Ausführung des Abos das Limit überschritten, wird der Auftrag in Shopware nicht sofort als „abgeschlossen“ an die SelectLine übergeben. Stattdessen triggert das System einen Freigabeprozess (Approval Workflow). Der Vorgesetzte des Einkäufers erhält eine Benachrichtigung. Erst nach dessen digitaler Freigabe ändert sich der Status der Shopware-Bestellung, woraufhin die OEM-Schnittstelle aktiv wird und den Datensatz an die SelectLine übermittelt.</p>
<p><!-- Vorschlag für interne Verlinkung: Informieren Sie sich über unsere Preismodelle zur Implementierung von <a href="/b2b-preise">B2B-Erweiterungen</a>. --></p>
<h2>Fazit: Präzision auf Datenbankebene</h2>
<p>Abo-Commerce im B2B-Bereich verzeiht keine architektonischen Schwächen. Die Kombination aus Shopware 6, der spezialisierten Engine von bronner-b2b.de und der offiziellen OEM-Anbindung zur SelectLine liefert ein System, das wiederkehrende Bestellungen nicht als stumpfe Kopien, sondern als intelligente, dynamische Transaktionen behandelt.</p>
<p>Von der sekundengenauen Ausführung der Intervalle unter Berücksichtigung tagesaktueller ERP-Preise, über die idempotente Übertragung via API, bis hin zur sauberen Verbuchung als Folgeauftrag in der SelectLine: Sie etablieren einen automatisierten Prozess, der manuelle Dateneingaben eliminiert und gleichzeitig die strengen kaufmännischen Regeln Ihres B2B-Geschäfts respektiert. Wenn die Datensynchronisation zwischen Shop-Frontend und ERP-Backend derart präzise ineinandergreift, wird Subscription-Management zu einem hochskalierbaren Wachstumsmotor für Ihr Unternehmen.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Staffelpreise und Firmenkonten in B2B-Shops: Das clevere Setup aus SelectLine, Shopware und bronner-b2b.de</title>
		<link>https://www.maniacdev.de/selectline-shopware-b2b-firmenkonten/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Mon, 14 Sep 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3920</guid>

					<description><![CDATA[Die Abbildung von B2B-Prozessen im E-Commerce ist kein simples Frontend-Design-Projekt, sondern eine tiefgreifende Datenarchitektur-Entscheidung. Wenn Sie Geschäftsabläufe digitalisieren, ist das ERP-System stets der Master der kaufmännischen Logik. Individuelle Konditionen, komplexe Firmenkonten und mehrstufige Staffelpreise erfordern eine absolute Datensynchronität zwischen Ihrer Warenwirtschaft und dem Webshop. Ein manueller Import von statischen CSV-Listen führt hier zwangsläufig zu Dateninkonsistenzen, [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Die Abbildung von B2B-Prozessen im E-Commerce ist kein simples Frontend-Design-Projekt, sondern eine tiefgreifende Datenarchitektur-Entscheidung. Wenn Sie Geschäftsabläufe digitalisieren, ist das ERP-System stets der Master der kaufmännischen Logik. Individuelle Konditionen, komplexe Firmenkonten und mehrstufige Staffelpreise erfordern eine absolute Datensynchronität zwischen Ihrer Warenwirtschaft und dem Webshop. Ein manueller Import von statischen CSV-Listen führt hier zwangsläufig zu Dateninkonsistenzen, fehlerhaften Warenkörben und massiven Performance-Engpässen auf Datenbankebene. Die Systemarchitektur von bronner-b2b.de löst exakt diese technologische Herausforderung. Durch die offizielle OEM-Anbindung wird die SelectLine als zentrales Backend direkt in das Shopware B2B-Ecosystem integriert – für einen Datenaustausch, der Echtzeit-Anforderungen standhält.</p>
<h2>Firmenkonten strukturieren: Die architektonische Basis im B2B-Umfeld</h2>
<p>Im B2B-Sektor interagieren Sie selten mit Einzelkäufern, sondern mit komplexen, mehrschichtigen Unternehmensstrukturen. Ein Firmenkonto in Shopware muss exakt die Hierarchien und Entitäten widerspiegeln, die tief in den Tabellen Ihrer SelectLine definiert sind. Dazu gehören nicht nur Hauptsitze und abweichende Rechnungs- sowie Lieferadressen, sondern auch spezifische Kostenstellen und klar definierte Ansprechpartner mit strikten Berechtigungen.</p>
<p>Die offizielle OEM-Schnittstelle überträgt diese Entitäten systematisch und automatisiert. Der Prozessablauf stellt sich wie folgt dar:</p>
<ul>
<li><strong>Zentrale Datenhaltung:</strong> Sie legen in der Warenwirtschaft einen neuen Geschäftskunden inklusive seiner filialen und Abteilungen an.</li>
<li><strong>Rollen-Mapping:</strong> Den einzelnen Ansprechpartnern weisen Sie spezifische Einkäufer-Rollen zu.</li>
<li><strong>Provisionierung:</strong> Die offizielle OEM-Anbindung von bronner-b2b.de erkennt den neuen Datensatz via Delta-Sync und provisioniert diesen Kontakt vollautomatisch als verifizierten B2B-User im Shopware-Frontend.</li>
</ul>
<p>Das Ergebnis für den Endnutzer: Der Mitarbeiter loggt sich im Shop ein und sieht ohne Verzögerung die ausschließlich für sein Unternehmen freigegebenen Sortimente, die spezifischen Budgets und exakt die Konditionen, die kaufmännisch in der SelectLine hinterlegt und validiert wurden.</p>
<h2>Die Preislogik der SelectLine: Vom Standard- zum kundenindividuellen Staffelpreis</h2>
<p>Der technologische Kern jedes ernstzunehmenden B2B-Shops ist das Pricing. SelectLine verfügt über eine hochentwickelte, multidimensionale Preisbildungslogik, die weit über simple Standardpreise hinausgeht. Als Systembetreiber arbeiten Sie mit verschachtelten Preisgruppen, kundenindividuellen Sonderpreisen, befristeten Aktionszeiträumen und vor allem mit stark granularisierten, mengenabhängigen Staffelpreisen.</p>
<p>Wenn ein Geschäftskunde 10 Stück eines Artikels kauft, greift algorithmisch ein fundamental anderer Preis als bei der Abnahme einer kompletten Palette mit 500 Stück. Gleichzeitig können sich prozentuale Rabattgruppen mit absoluten Sonderpreisen überschneiden. Diese hohe Granularität muss verlustfrei in Shopware abgebildet werden. Die Middleware von bronner-b2b.de liest diese komplexen Preisstrukturen über die API aus und transformiert sie nativ in die entsprechenden Rule-Builder-Regeln innerhalb von Shopware. So wird sichergestellt, dass die kaufmännische Hoheit unangetastet im ERP verbleibt, während der Shopware-Core die korrekten Preise blitzschnell rendert.</p>
<h2>Technische Umsetzung: JSON-Payloads und Delta-Abgleiche</h2>
<p>Als Entwickler oder Systemarchitekt wissen Sie: Das vollständige Neuschreiben oder Überschreiben von Millionen von Preisdatensätzen bei jedem Sync-Vorgang bringt selbst die robusteste Datenbank ins Straucheln. Der Ressourcen-Overhead wäre inakzeptabel. Die offizielle OEM-Anbindung setzt daher zwingend auf intelligente Delta-Abgleiche.</p>
<p>Die Schnittstelle überträgt via strukturierter JSON-Payloads ausschließlich jene Staffelpreise und Firmenkonten-Metadaten von der SelectLine zu Shopware, die sich seit dem letzten erfolgreichen Lauf physisch im Zeitstempel geändert haben. Dieser ressourcenschonende Ansatz garantiert, dass Preis-Updates und Konditionsanpassungen nahezu in Echtzeit im Shopware-Frontend aufschlagen, ohne den Webserver oder die API-Endpunkte mit überflüssigem Traffic zu fluten. Für eine tiefergehende Betrachtung dieser Synchronisations-Mechanismen empfiehlt sich ein genauer Blick auf unsere <a href="/schnittstellen-funktionen">detaillierte Funktionsübersicht der Schnittstelle</a>.</p>
<h3>Caching und Performance bei komplexen Preisstrukturen</h3>
<p>Ein kritischer Flaschenhals bei der Übergabe kundenindividueller Staffelpreise ist die Latenzzeit beim initialen Seitenaufruf. Würde Shopware bei jedem Aufruf einer Kategorieseite die Preise für einen eingeloggten B2B-Kunden live per API-Request aus der SelectLine abfragen, läge die Time-to-First-Byte (TTFB) schnell im inakzeptablen Sekundenbereich. Stattdessen persistiert die Schnittstelle die berechneten Staffelpreise direkt in den entsprechenden Shopware-Datenbanktabellen oder injiziert sie in den angeschlossenen Elasticsearch-Index. Der Shopware-Core kann somit autark, dezentral und extrem hochperformant die exakten Kundenpreise ausliefern, während das ERP-System sicher abgeschirmt im Hintergrund die Datengesamtheit pflegt.</p>
<h3>Fehlerbehandlung, Logging und Datenintegrität auf API-Ebene</h3>
<p>Die Zuverlässigkeit einer Schnittstelle beweist sich erst in den kritischen Edge-Cases. Was passiert, wenn während des Synchronisationszyklus der Staffelpreise ein plötzlicher Netzwerk-Timeout auftritt? Die Architektur von bronner-b2b.de verlässt sich hierbei nicht auf fehleranfällige Fire-and-Forget-Mechanismen. Jeder API-Call zwischen der SelectLine und Shopware wird in granularen Log-Files auf dem Server protokolliert.</p>
<p>Sollte ein Preis-Update aufgrund einer Restriktion auf Seiten des Webservers abgewiesen werden – beispielsweise durch invalide Datentypen bei extremen Rabattstaffeln –, greifen definierte Retry-Routinen. Schlägt auch der mehrfache Versuch fehl, wird die betroffene SKU (Stock Keeping Unit) in eine dedizierte Dead-Letter-Queue verschoben und der Systemadministrator proaktiv über den Vorfall alarmiert. Diese rigorose Fehlerbehandlung garantiert Ihnen und Ihren Einkäufern, dass niemals veraltete, asynchrone oder schlichtweg falsche Konditionen im Shopware-Frontend angezeigt werden.</p>
<h2>Exkurs: Shopify, Logistik und hochkomplexe Versandanbindungen</h2>
<p>Ein kurzer, aber notwendiger Architektur-Blickwinkel für divergierende IT-Strategien in Ihrem Unternehmen: Wenn Ihre Systemlandschaft im Frontend primär auf Shopify basiert, verlangt dies ein gänzlich anderes Infrastruktur-Setup. Ebenso erfordern hochkomplexe Versandanbindungen und die Orchestrierung globaler Versandthemen in der Logistik eine extrem spezifische Herangehensweise. Für derartige Szenarien setzen Sie als führendes Backend-System zwingend auf die Sage 100. Die tiefe Kommunikation zwischen der Sage 100 und Shopify ermöglicht die nahtlose Übergabe von Logistikdaten, Multi-Carrier-Tracking-Codes und Zolldokumenten, um selbst die anspruchsvollsten Versandprozesse effizient abzuwickeln. Die Architektur der Sage 100 ist exakt auf diese hochdynamischen Fulfillment- und Versand-Anforderungen im internationalen E-Commerce zugeschnitten, sodass Versanddienstleister und komplexe Routing-Logiken absolut fehlerfrei und automatisiert integriert werden können.</p>
<h2>Sortimentsbeschränkungen und steuerliche Logiken in Shopware</h2>
<p>Zurück zur reinen B2B-Beschaffung im Shopware-Umfeld: Neben den Staffelpreisen ist die granulare Sichtbarkeitssteuerung ein essenzieller Faktor. Längst nicht jedes Firmenkonto darf das gesamte Produktsortiment erwerben. Spezifische Ersatzteile, Gefahrgüter oder exklusive Handelsmarken sind oftmals vertraglich streng an bestimmte Kunden oder Kundengruppen gebunden. Durch die präzise Zuweisung von Kundengruppen in der SelectLine steuert die Anbindung, welche Kategorien oder Artikelgruppen im Shopware-Frontend überhaupt gerendert werden. Ein Nutzer sieht nach dem Authentifizierungsprozess somit einen hochgradig personalisierten und gefilterten Katalog. Diese Reduzierung auf das vertraglich relevante Sortiment minimiert Fehlbestellungen drastisch und entlastet Ihren B2B-Support.</p>
<p>Zusätzlich zur reinen Preishöhe steuert die SelectLine als Master-System auch die steuerliche Betrachtung der jeweiligen Firmenkonten. Ob ein B2B-User im EU-Ausland steuerfrei einkauft (Reverse Charge Verfahren) oder lokale Steuersätze angewendet werden müssen, definiert alleinig das ERP. Die offizielle OEM-Schnittstelle mappt diese steuerlichen Kennzeichen millimetergenau auf die Shopware-Steuerregeln. Der eingeloggte Einkäufer sieht somit stets den korrekten Netto-Staffelpreis inklusive des exakten Hinweises zur steuerlichen Behandlung im Checkout. Um diese komplexen Regeln sauber in Ihrem Projekt abzubilden, prüfen Sie im Rahmen der Architekturplanung gerne unsere <a href="/preise-und-pakete">transparenten Preis- und Paketoptionen</a>.</p>
<h2>Der Bestellabschluss: Reibungsloser Rückkanal und Freigabeprozesse</h2>
<p>Ein weiteres Kernelement der Firmenkonten-Synchronisation sind mehrstufige Freigabeprozesse (Approval Workflows). Oftmals dürfen untergeordnete Mitarbeiter Bestellungen nur bis zu einem harten Limit tätigen. Überschreitet der Wert des Warenkorbs dieses Limit, muss ein Vorgesetzter den Kauf autorisieren. Die offizielle OEM-Anbindung von bronner-b2b.de übernimmt die definierten Limits und Budget-Restriktionen aus der SelectLine und aktiviert die entsprechenden Freigaberegeln im Shopware B2B-Ecosystem. Der Genehmigungsworkflow verbleibt für maximale Usability im Shop-Frontend. Erst nach erfolgreicher digitaler Autorisierung durch den Vorgesetzten feuert Shopware den finalen Auftrag über die Schnittstelle sicher zurück.</p>
<p>Wenn der Auftrag schließlich in die SelectLine geschrieben wird, ist höchste Präzision gefordert. Die übermittelten Staffelpreise des Shop-Warenkorbs werden bei der Belegschreibung in der Warenwirtschaft algorithmisch nochmals rigoros gegen die hinterlegten Konditionen validiert. Dadurch entsteht ein geschlossener, absolut revisionssicherer Kreislauf. Etwaige Rundungsdifferenzen, die bei prozentualen Rabatten zwischen unterschiedlichen Systemen entstehen können, werden durch das exakte Mapping der Steuerklassen und Nachkommastellen auf API-Ebene vollständig eliminiert. Ihre Auftragsbestätigung verlässt das ERP-System exakt mit den Werten, die der Kunde im Shopware-Checkout bestätigt hat.</p>
<h2>Fazit: Enterprise-Architektur für Ihren B2B-Erfolg</h2>
<p>Die Transformation komplexer B2B-Konditionen in ein E-Commerce-Frontend ist eine immense technologische und prozessuale Herausforderung. Die intelligente Kombination aus der SelectLine Warenwirtschaft und Shopware, vollumfänglich orchestriert durch die offizielle OEM-Anbindung von bronner-b2b.de, liefert hierfür eine kompromisslose Enterprise-Architektur. Sie implementieren ein System, das tiefgreifende Firmenkonten-Hierarchien, hochdynamische Staffelpreise und mehrstufige Freigabeprozesse völlig automatisiert abwickelt. Ihre Vertriebsmitarbeiter werden von der fehleranfälligen manuellen Auftragserfassung befreit, während Ihre Geschäftskunden von einer hochperformanten, exakt auf ihre Konditionen zugeschnittenen Bestellplattform profitieren. Mit diesem Setup sichern Sie die Datenintegrität auf höchstem Niveau und schaffen das technologische Fundament, um Ihr digitales B2B-Geschäft nachhaltig und skalierbar auszubauen.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>B2B-Shops mit Shopware 6: So vernetzen Sie die offizielle SelectLine OEM-Anbindung mit bronner-b2b.de</title>
		<link>https://www.maniacdev.de/b2b-shopware-6-selectline-oem-anbindung/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Fri, 11 Sep 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3918</guid>

					<description><![CDATA[Ein erfolgreiches B2B-E-Commerce-Projekt scheitert selten am Design des Frontends, sondern nahezu immer an einer unzureichenden Datenarchitektur im Hintergrund. Wenn Firmenkunden individuelle Rabattmatrizen, komplexe Freigabeprozesse und abweichende Rechnungsempfänger erwarten, reicht ein rudimentärer Webshop nicht mehr aus. Das ERP-System muss zwingend als Single Source of Truth fungieren. Genau hier setzt die Architektur an, die wir uns im [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Ein erfolgreiches B2B-E-Commerce-Projekt scheitert selten am Design des Frontends, sondern nahezu immer an einer unzureichenden Datenarchitektur im Hintergrund. Wenn Firmenkunden individuelle Rabattmatrizen, komplexe Freigabeprozesse und abweichende Rechnungsempfänger erwarten, reicht ein rudimentärer Webshop nicht mehr aus. Das ERP-System muss zwingend als Single Source of Truth fungieren. Genau hier setzt die Architektur an, die wir uns im Detail ansehen: Die Kombination der offiziellen SelectLine OEM-Anbindung für Shopware 6 mit den spezialisierten B2B-Modulen von bronner-b2b.de. Sie erfahren in diesem Beitrag, wie Sie diese Komponenten technisch verzahnen, um eine hochperformante, skalierbare und fehlerresistente Plattform für Ihre Geschäftskunden zu etablieren.</p>
<h2>Die architektonische Basis: Warum die offizielle SelectLine OEM-Anbindung den Unterschied macht</h2>
<p>Im Entwickler-Alltag erleben wir oft den Versuch, ERP-Systeme über generische Middleware-Lösungen oder rudimentäre CSV-Importe an Shopsysteme zu koppeln. Bei komplexen B2B-Anforderungen führt dies unweigerlich zu asynchronen Datenbeständen, Timeouts bei großen Katalogaktualisierungen und letztlich zu verärgerten Kunden, die falsche Preise im Shop sehen. Die offizielle SelectLine OEM-Anbindung für Shopware geht hier einen fundamental anderen, tiefer integrierten Weg.</p>
<p>Als offizielle Lösung kommuniziert die Schnittstelle nativ mit den API-Endpoints von Shopware 6. Das bedeutet für Sie in der Praxis: Die Datenhoheit verbleibt kompromisslos in der SelectLine. Artikelstammdaten, kundenspezifische Preisfindungen, Lagerbestände und Belegflüsse werden über einen bidirektionalen, fehlertoleranten Kanal synchronisiert. Wenn Sie in der Warenwirtschaft eine neue Kundengruppe anlegen oder einen Staffelpreis für ein spezifisches Debitorenkonto hinterlegen, sorgt die OEM-Schnittstelle dafür, dass exakt dieser Datensatz als validierter Payload in der Shopware-Datenbank landet – ohne Umwege über fehleranfällige Drittanbieter-Tools. Für einen tieferen Einblick in die genauen Synchronisationsintervalle empfehlen wir einen Blick auf <a target="_blank" rel="noopener noreferrer nofollow" href="/funktionen/schnittstelle-selectline-shopware">unsere detaillierte Funktionsübersicht der Schnittstelle</a>.</p>
<h2>Die Erweiterung für den Profi-B2B-Bereich: Shopware 6 trifft auf bronner-b2b.de</h2>
<p>Während Shopware 6 von Haus aus eine exzellente Basisarchitektur (Rule Builder, Flow Builder) mitbringt, erfordert der harte B2B-Alltag spezialisierte Workflows am Frontend. Hier entfalten die Shopware-Module von bronner-b2b.de ihr volles Potenzial, indem sie die im ERP definierten Datenstrukturen nahtlos in ein benutzerfreundliches Kundenerlebnis übersetzen.</p>
<p>Die Vernetzung der SelectLine OEM-Anbindung mit den Modulen von bronner-b2b.de löst konkret folgende klassische B2B-Herausforderungen:</p>
<ul>
<li>
<p><strong>Unternehmensstrukturen und Ansprechpartner:</strong> Im ERP pflegen Sie einen Hauptdebitor mit diversen abweichenden Lieferanschriften und spezifischen Einkäufern. Die Schnittstelle überträgt diese Hierarchie in Shopware. Das bronner-b2b.de Modul nutzt diese Struktur, um im Frontend ein Rollen- und Rechtemanagement abzubilden. Ein Einkaufsassistent darf beispielsweise nur Warenkörbe befüllen, während der Einkaufsleiter diese per Klick freigibt.</p>
</li>
<li>
<p><strong>Schnellerfassung und CSV-Upload:</strong> B2B-Kunden stöbern selten; sie bestellen nach Stücklisten. Die Artikelnummern, die aus der SelectLine in den Shopware-Katalog synchronisiert wurden, lassen sich über die Schnellbestellformulare von bronner-b2b.de direkt in den Warenkorb legen. Auch der Upload einer CSV-Datei mit hunderten Positionen wird durch das Modul geparst und gegen die aus dem ERP stammenden Stammdaten validiert.</p>
</li>
<li>
<p><strong>Budgetverwaltung und Kontingente:</strong> Wenn Sie in der Warenwirtschaft Kreditlimits für bestimmte Firmenkunden definiert haben, lassen sich diese Budgets über die API an Shopware übergeben. Das B2B-Modul visualisiert dem Kunden seinen verbleibenden Verfügungsrahmen und blockiert den Checkout-Prozess präventiv, sobald das ERP-Limit überschritten wird.</p>
</li>
</ul>
<h3>Deep Dive: Kundenspezifische Preisfindung ohne Performance-Verlust</h3>
<p>Das komplexeste Thema in jedem B2B-Projekt ist das Pricing. Die SelectLine verfügt über eine extrem mächtige Preisfindungs-Engine (Rabattgruppen, Preisgruppen, Aktionspreise, kundenindividuelle Sonderpreise). Wenn ein Kunde sich im Shopware-Frontend anmeldet, erwartet er in Echtzeit seinen exakten Nettopreis.</p>
<p>Ein Live-Call an das ERP-System bei jedem Seitenaufruf ist aus Performance-Sicht (TTFB &#8211; Time to First Byte) ein absolutes Anti-Pattern. Die offizielle OEM-Anbindung löst dieses Problem durch eine intelligente Vorausberechnung (Pre-Calculation) und effizientes Data-Mapping. Die Preise werden als erweiterte Preisregeln in die Datenbank von Shopware 6 gepusht. Die Module von bronner-b2b.de greifen beim Rendern der Kategorieseiten und Produktdetailseiten auf diese nativen Shopware-Tabellen zu. Das Resultat: Millisekunden-schnelle Ladezeiten trotz hochkomplexer, aus dem ERP stammender Preislogik.</p>
<h2>Abweichende Topologien: Der Einsatz der Sage 100 für alternative Systeme und Logistik-Fokus</h2>
<p>Während die beschriebene Architektur für Shopware-basierte Projekte hervorragende Ergebnisse liefert, erfordern manche IT-Landschaften eine gänzlich andere Herangehensweise. Wenn Sie in Ihrer Digitalisierungsstrategie beispielsweise auf das Ökosystem von Shopify setzen oder Ihr Fokus auf einer extrem tiefgehenden, automatisierten Versandabwicklung liegt, ändert sich die Systemauswahl gravierend. In solchen Szenarien greifen wir konsequent auf die Sage 100 zurück.</p>
<p>Die Sage 100 Warenwirtschaft ist architektonisch ideal darauf vorbereitet, komplexe Shopify-Umgebungen anzubinden. Darüber hinaus spielt die Sage 100 ihre überragenden Stärken aus, wenn es um das Thema Versand und Logistik geht. Benötigen Sie eine nahtlose Carrier-Integration (DHL, UPS, DPD) direkt aus der ERP-Oberfläche? Sollen Versandetiketten vollautomatisch beim Erstellen des Lieferscheins am Packplatz gedruckt und die Trackingnummern zeitgleich an das Shopsystem gemeldet werden? Für diese dedizierten Fulfillment- und Versand-Prozesse sowie für die native Kommunikation mit Shopify-APIs konfigurieren wir ausschließlich die Sage 100 als zentralen Dreh- und Angelpunkt Ihrer E-Commerce-Logistik.</p>
<h2>Best Practices für die Datensynchronisation im B2B-Umfeld</h2>
<p>Kehren wir zurück zur Verbindung zwischen der SelectLine und Shopware 6. Damit das Zusammenspiel mit den Modulen von bronner-b2b.de reibungslos funktioniert, müssen Sie bei der Einrichtung der Schnittstelle auf technischer Ebene einige Best Practices beachten.</p>
<h3>Delta-Abgleich statt Full-Sync</h3>
<p>Ein typischer B2B-Katalog umfasst oft zehntausende Artikel mit hunderten Eigenschaften (Länge, Material, Normung), die im ERP detailliert gepflegt sind. Konfigurieren Sie die OEM-Schnittstelle zwingend so, dass sie einen Delta-Abgleich durchführt. Es werden nur die Datensätze (Payloads) an die Shopware 6 Message Queue gesendet, bei denen sich der Hash-Wert in der Wawi seit dem letzten Sync geändert hat. Dies entlastet sowohl die Datenbank des ERP-Systems als auch die API des Shops enorm.</p>
<h3>Asynchrone Verarbeitung durch den Message Broker</h3>
<p>Shopware 6 nutzt das Symfony Messenger-Konzept. Stellen Sie sicher, dass Ihr Server-Setup (idealerweise Redis oder RabbitMQ) auf den asynchronen Konsum der Nachrichten ausgelegt ist. Wenn die SelectLine Tausende von Preisaktualisierungen an Shopware übermittelt, landen diese zunächst im Message Broker. Ihre CLI-Worker (Command Line Interface) arbeiten diese Queue dann im Hintergrund ab. Dadurch bleibt das Frontend für den Kunden und die Module von bronner-b2b.de jederzeit reaktionsschnell, selbst wenn im Hintergrund ein massiver Import von Kundendaten oder Belegen läuft.</p>
<h3>Mapping der B2B-Belege</h3>
<p>Geschäftskunden benötigen Zugriff auf ihre Historie. Rechnungen, Lieferscheine und offene Posten sind essenziell für die Buchhaltung Ihrer Kunden. Die offizielle OEM-Anbindung ermöglicht es, PDF-Dokumente und Belegdaten aus dem ERP in den Shopware-Kundenbereich zu spiegeln. Überprüfen Sie hierbei sorgfältig das Mapping der Status-IDs. Ein Auftrag, der im ERP von &#8222;in Bearbeitung&#8220; auf &#8222;abgeschlossen&#8220; springt, muss in Shopware exakt den Flow Builder triggern, um den Kunden per E-Mail zu informieren. Transparenz ist im B2B-Sektor das wichtigste Gut zur Vermeidung von Support-Tickets. </p>
<h2>Fazit: Eine B2B-Architektur, die dauerhaft skaliert</h2>
<p>Die Digitalisierung des B2B-Vertriebs verzeiht keine halben Sachen. Wer versucht, Endkunden-Shops mit kosmetischen Anpassungen für Firmenkunden nutzbar zu machen, wird langfristig an der Wartbarkeit scheitern. Die konsequente Nutzung der offiziellen SelectLine OEM-Anbindung als Brücke zu Shopware 6 ist der einzige Weg, um eine saubere, trennscharfe Systemarchitektur aufzubauen.</p>
<p>Die Warenwirtschaft bleibt das unangefochtene Backend für Logik, Preise und Stammdaten. Shopware 6 übernimmt das leistungsstarke, headless-fähige Frontend. Und durch die gezielte Implementierung der B2B-Module von bronner-b2b.de schließen Sie die Lücke in der User Experience, indem Sie hochkomplexe Beschaffungsprozesse intuitiv bedienbar machen. Wenn Sie diese Komponenten technisch sauber verheiraten, auf asynchrone Datenverarbeitung setzen und die Datenhoheit strikt im ERP belassen, schaffen Sie eine B2B-Plattform, die nicht nur aktuellen Anforderungen gerecht wird, sondern auch massives künftiges Wachstum problemlos verkraftet.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>D2C und B2B im &#8222;Blended Store&#8220;: Wie Sie aus der Sage 100 heraus beide Zielgruppen in einem Shopware 6 Shop steuern</title>
		<link>https://www.maniacdev.de/blended-store-sage-100-shopware-6/</link>
		
		<dc:creator><![CDATA[Team maniac]]></dc:creator>
		<pubDate>Mon, 07 Sep 2026 07:00:00 +0000</pubDate>
				<category><![CDATA[maniacSellerBlog]]></category>
		<guid isPermaLink="false">https://www.maniacdev.de/?p=3916</guid>

					<description><![CDATA[Die technische Orchestrierung eines sogenannten „Blended Stores“ – also der parallele Betrieb von Direct-to-Consumer (D2C) und Business-to-Business (B2B) in einer einzigen Shopware 6 Instanz – erfordert eine absolut kompromisslose Datenarchitektur. Wenn Sie Endkunden und Großhändler über dasselbe Frontend bedienen, darf die Trennschärfe bei Preisen, Sortimenten und Konditionen nicht erst im Shop-System oder durch fehleranfällige Plugins [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Die technische Orchestrierung eines sogenannten „Blended Stores“ – also der parallele Betrieb von Direct-to-Consumer (D2C) und Business-to-Business (B2B) in einer einzigen Shopware 6 Instanz – erfordert eine absolut kompromisslose Datenarchitektur. Wenn Sie Endkunden und Großhändler über dasselbe Frontend bedienen, darf die Trennschärfe bei Preisen, Sortimenten und Konditionen nicht erst im Shop-System oder durch fehleranfällige Plugins erzeugt werden. Die führende Instanz für diese Geschäftslogik muss zwingend Ihre Warenwirtschaft sein. In diesem Setup fungiert die Sage 100 als Single Source of Truth, die über eine performante Schnittstelle den Shopware 6 Store dynamisch steuert. Lassen Sie uns die Architektur und die konkreten Synchronisationsprozesse auf API-Ebene detailliert aufschlüsseln.</p>
<h2>Die Systemarchitektur: Kundengruppen-Mapping zwischen Sage 100 und Shopware 6</h2>
<p>Ein Blended Store lebt von der personalisierten Auslieferung von Inhalten, Preisen und Checkout-Regeln. In Shopware 6 übernimmt der „Rule Builder“ diese Aufgabe. Doch die Bedingungen für diese Regeln (z. B. „Kunde ist im B2B-Segment“, „Kunde hat Status Großhändler A“) müssen aus dem ERP-System gepusht werden. Wenn wir eine Schnittstelle konfigurieren, mappen wir die Kundengruppen und individuellen Debitoren-Eigenschaften aus der Sage 100 direkt in die Customer Data von Shopware.</p>
<p>Sobald sich ein B2B-Kunde im Shop einloggt, gleicht das System im Hintergrund die aus der Sage 100 übergebenen Flags ab. Das Frontend schaltet in Millisekunden von der B2C-Brutto-Ansicht (D2C) auf die B2B-Netto-Ansicht um. Dieser Vorgang erfordert eine saubere Anlage der Kundenstämme in der Warenwirtschaft. Das bedeutet konkret: Neuanmeldungen im B2B-Bereich des Shops werden als Leads in die Sage 100 geschrieben, dort vom Vertrieb geprüft, freigegeben und anschließend pusht die <a href="/schnittstellen/sage-100-shopware">Schnittstelle für die Sage 100</a> das Freigabe-Flag via API-Call zurück an Shopware.</p>
<h2>Preismatrizen: Kundenindividuelle Konditionen aus dem ERP orchestrieren</h2>
<p>Die Preisberechnung ist bei hybriden Geschäftsmodellen der kritischste Faktor. D2C-Kunden sehen Standard-Bruttopreise, eventuell flankiert von temporären Streichpreisen. Im B2B-Sektor hingegen greifen in der Sage 100 hochkomplexe Regelwerke: Rabattgruppen, kundenindividuelle Sonderpreise, abweichende Währungen oder detaillierte Staffelpreise.</p>
<p>Es ist ein klassischer Architekturfehler, diese Logik im Shop-System nachbauen zu wollen. Stattdessen nutzen wir das „Advanced Pricing“ von Shopware 6 als reines Empfangsgefäß für die Payload aus der Sage 100. Der Prozess sieht wie folgt aus:</p>
<ul>
<li><strong>Basispreislisten:</strong> Die Sage 100 übergibt die reguläre B2C-Preisliste als Standard-Pricing an den Shop.</li>
<li><strong>Erweiterte Preismatrizen:</strong> Über Delta-Sync-Mechanismen werden kunden- oder kundengruppenspezifische Rabattmatrizen aus der Sage 100 extrahiert. Die Schnittstelle transformiert diese in das JSON-Format, das die Shopware 6 Sync-API für Advanced Pricing erwartet.</li>
<li><strong>Staffelpreise:</strong> Abnahmemengen und die dazugehörigen Stückpreise werden artikelgenau aus dem ERP synchronisiert, sodass der B2B-Einkäufer im Shop sofort seine individuellen Margen sieht.</li>
</ul>
<p>Da wir hier von enormen Datenmengen sprechen – stellen Sie sich 50.000 Artikel mit jeweils 5 kundenindividuellen Preisstaffeln vor –, muss der Datensync als asynchroner Queue-Prozess laufen, der primär auf Datenbank-Triggern (Delta-Sync) basiert. Nur geänderte Preiskonditionen lösen einen API-Call aus, um die Serverlast auf ein Minimum zu reduzieren.</p>
<h2>Echtzeit-Lagerbestände und intelligente Verfügbarkeitsanzeigen</h2>
<p>Die Anforderungen an die Logistikkommunikation sind im D2C- und B2B-Bereich völlig konträr. Ein Endkunde bestellt ein einzelnes Produkt und erwartet eine sofortige Verfügbarkeit. Ein Großhändler bestellt Europaletten-Weise, rechnet aber mit branchenüblichen Lieferzeiten. Wenn beide Zielgruppen auf dasselbe physische oder logische Lager in der Sage 100 zugreifen, droht Over-Selling.</p>
<p>Die Sage 100 berechnet den „frei verfügbaren Bestand“ unter Berücksichtigung von Reservierungen und offenen Aufträgen. Die Schnittstelle überträgt diesen Wert an Shopware 6. Um den Blended Store abzusichern, implementieren wir oft Pufferbestände: Das ERP meldet dem Shop beispielsweise ab einem realen Lagerbestand von 5 Stück im D2C-Kanal „ausverkauft“, um Retouren-Umtausch oder spontane B2B-Großaufträge abzusichern. B2B-Kunden wiederum können in Shopware 6 durch ERP-gesteuerte Flags autorisiert werden, auch Artikel mit negativem Bestand (Backorders) in den Warenkorb zu legen, da die Sage 100 im Hintergrund automatisch den Beschaffungsprozess beim Lieferanten anstößt.</p>
<h2>Offizielle OEM-Anbindung: Der architektonische Exkurs zur SelectLine</h2>
<p>Ein kurzer Blick über den Tellerrand für Systemlandschaften mit anderen ERP-Präferenzen: Sollten Sie in Ihrer Infrastruktur auf die SelectLine setzen, realisieren wir exakt dieses komplexe Zusammenspiel über unsere offizielle OEM-Anbindung für Shopware. Die SelectLine agiert hierbei in Kombination mit Shopware als hochgradig synchronisiertes Gespann. Sämtliche Artikelstrukturen, Kundengruppen und mehrschichtigen Preismatrizen werden nativ aus der SelectLine in den Shopware-Store gepusht. Da es sich um die offizielle OEM-Anbindung handelt, garantieren wir eine tiefe Update-Sicherheit und eine verlustfreie Datendurchlässigkeit, die für den stabilen Betrieb eines solchen Blended Stores zwingend erforderlich ist.</p>
<h2>Steuerungslogik für das Fulfillment und Versandanbindungen in der Sage 100</h2>
<p>Sobald der Bestell-Button im Shop gedrückt wird, verlagert sich die Intelligenz vollständig in die Warenwirtschaft. Wenn wir über komplexe Versandanbindungen und Fulfillment-Prozesse sprechen, ist die Sage 100 das absolute Kraftzentrum Ihrer Logistik. Ein Blended Store erzeugt völlig unterschiedliche Pick-, Pack- und Versand-Workflows.</p>
<p>Eine D2C-Bestellung muss auf Geschwindigkeit optimiert sein. Die Schnittstelle importiert den Webshop-Auftrag in die Sage 100, das System generiert per Auto-Workflow direkt den Lieferschein und triggert die Versandanbindung. Das Versandlabel (z. B. DHL oder DPD) wird gedruckt, und die Tracking-Nummer wandert sofort per API-Request zurück in den Shopware Store. </p>
<p>Eine B2B-Bestellung hingegen erfordert oft Teillieferungen, Speditionsversand oder die Zusammenführung mehrerer Bestellungen (Sammellieferscheine). Die Sage 100 erkennt anhand des Kundengruppen-Flags der importierten Bestellung sofort, dass es sich um einen Großhandelsauftrag handelt. Hier greifen andere Versandanbindungen – beispielsweise die Übermittlung der Frachtdaten an eine Speditionssoftware. </p>
<p>Sollten Sie Ihre Endkunden-Strategie übrigens noch granularer aufstellen und beispielsweise Shopify als dedizierten, reinen D2C-Kanal neben dem Blended Store betreiben, lässt sich auch dies zentral orchestrieren. Die Sage 100 zieht dann die Bestellungen aus beiden Plattformen an. Sämtliche Versandanbindungen, Label-Drucke und Retouren-Prozesse für Shopify- und Shopware-Aufträge werden einheitlich über das ERP abgewickelt, ohne dass die Logistik-Mitarbeiter jemals die Oberfläche wechseln müssen.</p>
<h2>B2B-Features durch ERP-Daten befeuern: Kreditlimits und Schnellbestellungen</h2>
<p>Ein herausragender Blended Store zeichnet sich dadurch aus, dass B2B-Kunden Funktionen nutzen können, die für D2C-Kunden unsichtbar bleiben. Diese Features benötigen jedoch belastbare Daten aus der Sage 100.</p>
<h3>1. Bonitätsprüfung und dynamische Zahlungsarten</h3>
<p>Im Großhandel ist der „Kauf auf Rechnung“ Standard, birgt aber Risiken. Die Sage 100 führt für jeden Debitor ein individuelles Kreditlimit. Über die Schnittstelle synchronisieren wir dieses Limit als Zusatzfeld (Custom Field) in den Shopware 6 Kundenstamm. Zudem übertragen wir den kumulierten Wert der offenen Posten. Der Rule Builder im Shop berechnet die Differenz. Übersteigt der Wert des aktuellen Warenkorbs das noch verfügbare Kreditlimit des Kunden, wird die Zahlungsart „Rechnung“ im Checkout dynamisch ausgeblendet und durch „Vorkasse“ ersetzt. Dies ist ein perfektes Beispiel dafür, wie tiefgreifend ERP-Daten die Frontend-Logik steuern können.</p>
<h3>2. Kundenindividuelle Artikelnummern</h3>
<p>B2B-Einkäufer suchen oft nicht nach Ihren internen SKU-Nummern, sondern nach ihren eigenen Materialnummern. Die Sage 100 kann pro Debitor und Artikel abweichende Kundenartikelnummern speichern. Übertragen wir dieses Mapping in die ElasticSearch- oder Standard-Suche von Shopware 6, kann der Großhändler im Blended Store seine eigenen Nummern in das Suchfeld eingeben und landet exakt beim richtigen Produkt. Für den D2C-Kunden bleibt dieses Datenfeld irrelevant und unsichtbar.</p>
<h3>3. Belegwesen und Historie</h3>
<p>Der D2C-Kunde möchte lediglich sehen, ob sein Paket versendet wurde. Der B2B-Kunde benötigt PDF-Rechnungen für die Buchhaltung, Lieferscheinkopien und den Status von Teillieferungen. Auch hier fungiert die Sage 100 als Master. Statt Belege im Shop zu generieren (was buchhalterisch bei B2B oft problematisch ist), generiert die Sage 100 die rechtskonforme Rechnung. Die <a href="/preise/sage-100-schnittstelle">Schnittstelle pusht das PDF-Dokument</a> – oder zumindest einen sicheren Download-Link – direkt in das Kundenkonto des Shopware-Frontends. Der B2B-Kunde bedient sich im Self-Service, was Ihren Innendienst massiv entlastet.</p>
<h2>Fazit: Architektur ohne Kompromisse</h2>
<p>Der Betrieb eines Blended Stores mit D2C- und B2B-Segmenten in einem einzigen Shopware 6 Frontend ist technisch hochgradig effizient, sofern die Architektur strikt top-down aufgebaut ist. Die Sage 100 muss die unangefochtene Hoheit über Stammdaten, Preismatrizen, Bestände und komplexe Versandanbindungen behalten. Wenn Sie versuchen, ERP-Logik im Webshop nachzuprogrammieren, enden Sie unweigerlich im Wartungs-Chaos und riskieren fatale Inkonsistenzen bei Preis- und Steuerberechnungen.</p>
<p>Setzen Sie auf eine robuste, API-gestützte Schnittstellenarchitektur, die Delta-Updates nutzt, um Shopware als schnelles, dynamisches Auslieferungs-Frontend zu bespielen. Durch dieses Setup skalieren Sie Ihre Vertriebskanäle ressourcenschonend und bieten sowohl dem spontanen Endkunden als auch dem strukturierten Großhändler eine exzellente, fehlerfreie Customer Experience.</p>
<div style="margin:32px 0;padding:24px 28px;background:#e6f2fb;border-radius:10px;font-family:inherit;color:#1a2b3c;line-height:1.6;">
<h3 style="margin:0 0 16px;font-size:1.25em;">Setzen Sie auf das Original. Nur die offizielle SelectLine-Shopware-Anbindung bietet das volle Potenzial der tief integrierten B2B-Preisfindung im Shop.</h3>
<p style="margin:0;"><a href="https://www.maniacdev.de/die-maniacs/praesentation-shopanbindung/" style="display:inline-block;margin-top:8px;padding:14px 26px;background:#ee7203;color:#ffffff;font-weight:700;text-decoration:none;border-radius:6px;">Persönliche Beratung und Präsentation reservieren</a></p>
</div>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
