Bexy für Craft CMS

Craft Commerce 5 · Schweiz

Die Hälfte, die nach dem Senden kommt

Eine Bestellung nach bexio zu bringen ist der einfache Teil. Bexy macht den Rest: Es verbucht die Zahlung, damit die Rechnung nicht offen stehen bleibt, holt den Status von bexio zurück nach Commerce, prüft die Summe vor dem Senden und hält eine Verbindung, die nicht nach 60 Tagen stillschweigend abläuft.

Bexy

Erst sehen, dann senden

Die Vorschau nutzt denselben Builder wie die echte Übermittlung, also ist das Ausgegebene Byte für Byte das, was bexio erhält. Es gibt genau eine Stelle im Code, an der aus einer Commerce-Bestellung ein bexio-Beleg wird — das macht diese Zusage belastbar statt bloss gut gemeint.

bash
$ php craft bexy/sync/preview 1042

  contact      Bühler AG · #4471 (matched on email)
  positions    3 × KbPositionCustom, 1 × KbPositionArticle
  shipping     CHF 12.00   MWST 8.1%   → 3400
  discount     CHF 25.00   magnitude, is_percentual: false
  mwst_type    0  (prices include tax, read from Commerce)

  document     CHF 486.35
  order        CHF 486.35
  ✓ totals agree — nothing to round

  Nothing was sent. Run bexy/sync/order 1042 to send it.

Was es tatsächlich tut

Sechs Dinge, die die Alternative nicht tut.

Eine Verbindung, die verbunden bleibt

OAuth 2.0 mit PKCE und rotierenden Refresh-Tokens statt eines persönlichen Zugriffstokens, den bexio 60 Tage nach der Erstellung stillschweigend verfallen lässt.

  • PATs werden ebenfalls unterstützt, für eine Testfirma
  • Der rotierte Refresh-Token wird jedes Mal gespeichert, sonst scheitert die nächste Erneuerung
  • Tokens werden mit Crafts Security Key verschlüsselt

Zahlungen, nicht nur Rechnungen

Jede erfolgreiche Commerce-Belastung wird auf die bexio-Rechnung verbucht, damit bezahlte Bestellungen nicht offen in den Büchern stehen und darauf warten, dass jemand sie abhakt.

  • Eindeutig pro Commerce-Transaktion, damit eine Belastung nie zweimal verbucht wird
  • Fällt auf das Standard-Bankkonto zurück
  • Nur Rechnungen — bexio-Aufträge nehmen keine Zahlung an

Die Summen werden vorher geprüft

Bexy rechnet aus, worauf bexio den Beleg bringen wird, vergleicht das mit Commerce und fängt die Abweichung hier ab statt bei der MWST-Abrechnung.

  • Eine Differenz im Rappenbereich erhält eine steuerfreie Rundungsposition
  • Eine grössere wird abgelehnt und erklärt
  • Die Obergrenze ist der springende Punkt: Eine falsch zugeordnete 7.7%-Steuer darf nicht durch eine Zeile namens «Rundung» geschlossen werden

bexios Urteil kommt zurück

Der Abgleich holt den Belegstatus aus bexio und setzt die Commerce-Bestellung entsprechend, damit eine von der Buchhaltung als bezahlt markierte Rechnung für den Shop keine Neuigkeit ist.

  • Bexy ändert den Bestellstatus und sonst nichts
  • Es erfindet nie eine Commerce-Transaktion, damit eine Bestellung bezahlt aussieht
  • Bezahlte und stornierte Belege fallen automatisch aus dem Zeitfenster

Schweizer MWST, sauber zugeordnet

Jede Commerce-Steuerkategorie wird einem bexio-Steuersatz und einem Ertragskonto zugeordnet. `mwst_type` wird aus der Bestellung gelesen: Ein als «im Preis enthalten» markierter Satz macht die Preise brutto, ohne dass Sie es ein zweites Mal sagen müssen.

  • Nur die aktiven Umsatzsteuersätze von bexio stehen zur Wahl — alles andere lehnt es ab
  • Der Versand erhält eigenen Steuersatz und eigenes Konto
  • Eine nicht zugeordnete Kategorie erzeugt eine Warnung am Beleg, keinen stillen Standardwert

Zweimal senden ist nicht möglich

`api_reference` wird auf jeden Beleg geschrieben und vor jeder Erstellung gesucht — zusätzlich zu einer lokalen Tabelle, die pro Bestellung eindeutig ist.

  • Dieselbe Bestellung zweimal senden: Die zweite Übermittlung übernimmt den ersten Beleg
  • Auch ein Beleg, der in bexio erstellt wurde, bevor Bexy davon wusste, wird übernommen
  • Rückerstattungen stornieren, wo bexio es zulässt, und werden markiert, wo nicht — nie eine vorgetäuschte Negativzahlung

Bexy in the control panel

The settings screen from a Craft 5 install — the connection to bexio, what a paid order becomes, and when it gets sent.

The Bexy settings screen in the Craft control panel, showing the bexio connection fields, the document type a paid order becomes, and when it is sent

Screenshot from a live install, not a mockup.

Fragen

Schluss mit dem Abgleich von Hand

99 $, einmalig. Installieren, eine bexio-Testfirma verbinden und eine Bestellung senden, um das Ganze in Aktion zu sehen.