Zum Inhalt

Auftragsimport

Warum werden manche Aufträge nicht importiert?

Die Schnittstelle importiert Aufträge nur, wenn folgende Bedingungen zutreffen:

  • Der Bestellstatus muss Offen sein (die Schnittstelle stellt den Status nach dem Import automatisch auf "In Bearbeitung" um)
  • und der Zahlungsstatus darf NICHT einen der folgenden Stati haben:
  • Abgebrochen
  • Fehlgeschlagen
  • In Bearbeitung
  • Erstattet
  • Unbestätigt

Einige Zahlungsmodule (z.B. das Shopware eigene Lastschrift Modul), stellen den Zahlungsstatus direkt auf In Bearbeitung um. Damit solche Aufträge nach Amicron importiert werden, gibt es die Möglichkeit für ausgewählte Zahlungsarten den Zahlungsstatus zu ignorieren. Die Einstellung dafür nehmen Sie in den Plugin-Einstellungen im Bereich Auftragsexport - Aufträge mit folgenden Zahlweisen unabhängig vom Zahlungsstatus importieren vor.

Testimport mit debug_ordernumber= Parameter

Sie können einen einzelnen Auftrag aus Shopware unabhängig von dessen Status über den Parameter &debug_ordernumer=SHOPWARBESTELLNUMMER nach Amicron Faktura übertragen.

Wechseln Sie hierzu in die Konfiguration des Webshops in Amicron Faktura und fügen Sie den Parameter unter Optionen (1) ein:

Parameter debug_ordernumber= beim Auftragsimport

Hinweis: Solange dieser Parameter gesetzt ist, wird immer die hinter = angegebene Auftrag nach Amicron importiert. Der Auftragsstatus spielt keine Rolle und er wird beim Import auch nicht verändert.

Kundengruppe aus Shopware als Preisgruppe importieren

In den Plugin-Einstellungen für den Auftragsexport kommt folgendes TWIG-Template dazu

<!-- twig Template für <billingAddress> -->
<preisgruppe>{% if groups[order.id] == 'Händler' %}
Staffel Händler{% elseif groups[order.id] == 'Standard-Kundengruppe' %}
Staffel Endkunden{% else %}
Staffel Endkunden{% endif %}
</preisgruppe>
Im obigen Beispielcode wird die Shopware Kundengruppe Händler der Amicron Preisgruppe Staffel Händler und die Shopware Kundengruppe Standard-Kundengruppe sowie alle weiteren Shopware Kundengruppen der Amicron Preisgruppe Staffel Endkunden zugeordnet.

Damit die Preisgruppe im Auftrag angelegt wird, muss die Amicron Importdefinition wie folgt erweitert werden:

 <billingAddress NewData="KUNADRESSE">
 ...
    <preisgruppe>#AUFTRAG.PREISGRUPPE</preisgruppe>
 </billingAddress>

Wenn zusätzlich die Preisgruppe der Kundenadresse in Amicron beim Auftragsimport gesetzt werden soll, doppeln Sie das Twig Template und legen Sie zusätzlich das XML Tag preisgruppe_kunde im Template an:

<preisgruppe_kunde>{% if groups[order.id] == 'Händler' %}
Staffel Händler{% elseif groups[order.id] == 'Standard-Kundengruppe' %}
Staffel Endkunden{% else %}
Staffel Endkunden{% endif %}
</preisgruppe_kunde>

danach ergänzen Sie in der Amicron Webshop Importdefinition ebenfalls das XML Tag:

 <billingAddress NewData="KUNADRESSE">
 ...
    <preisgruppe>#AUFTRAG.PREISGRUPPE</preisgruppe>
    <preisgruppe_kunde>#KUNADRESSE.PREISGRUPPE</preisgruppe_kunde>
 </billingAddress>

Zahlbar in X Tagen

Um die "Zahlbar in x Tagen" Kopfdaten in Amicron je nach Zahlweise einzustellen, fügen Sie folgendes Twig Template in den Plugin-Einstellungen für den Auftragsexport hinzu:

<!-- twig Template für <ORDER> -->
{% set transaction = order.transactions.first %}
<zahlungIn>{% if transaction.paymentMethod.name == 'Rechnung' %}
14{% else %}
0{% endif %}
</zahlungIn>

Damit der Wert auch in Amicron ankommt, passen Sie vor dem Import noch die Importdefinition in Amicron an:

...
</deliveryAddress>
<!-- twig Template für <ORDER> wird hier ausgegeben (Template fuer Auftragskopf) -->
<zahlungIn>#AUFTRAG.ZAHLUNGIN</zahlungIn>
<lineItems>
...

Im obigen Beispiel wird bei Aufträgen aus Shopware mit der Zahlweise "Rechnung" im Auftragskopf in Amicron bei "Zahlbar in" der Wert 14 Tage eingetragen, ansonsten 0.

Hinweis: Damit Amicron die Werte korrekt importiert, ist es wichtig, dass diese ohne führende oder nachfolgende Zeichen in den XML-Tags stehen. Testen Sie daher die Ausgabe immer mit dem XML Debugger.

Fehlerhafte Ausgaben sind z.B. solche, die Umbrüche enthalten, diese sehen im XML dann so aus:

<preisgruppe>
    Staffel Händler
</preisgruppe>
<zahlungIn>14
</zahlungIn>

Die Werte müssen aber immer so ausgegeben werden:

<preisgruppe>Staffel Händler</preisgruppe>
<zahlungIn>14</zahlungIn>