Zum Hauptinhalt springen
Version: 1.x

Belege in Ihrem Onlineshop

Ihre WCPOS-Belegvorlagen sind nicht auf die Kasse beschränkt. Kunden Ihres Onlineshops können ihren Bestellbeleg oder ihre Rechnung über Mein Konto oder die Bestellbestätigungsseite anzeigen und herunterladen, gerendert mit einer eigenen Vorlage aus WP Admin → POS → Vorlagen.

Erfordert WCPOS 1.9.11

Der Zugriff auf Belege im Onlineshop ist ab WCPOS 1.9.11 verfügbar. In früheren Versionen werden Belege nur im POS gerendert.

Auf dieser Seite geht es darum, dass Kunden ihre eigenen Belege herunterladen

Kassierer und Mitarbeitende benötigen dies nicht — der Bildschirm Bestellungen im POS listet bereits jede WooCommerce-Bestellung auf, einschließlich Onlinebestellungen. Über das Drei-Punkte-Menü kann der Beleg angezeigt, gedruckt oder per E-Mail versendet werden. Auf dieser Seite geht es um den umgekehrten Fall: Kunden können den Beleg selbst über Ihre Website herunterladen.

Download-Schaltfläche unter Mein Konto

Sobald eine Belegvorlage Aktiv ist, sehen angemeldete Kunden neben berechtigten Bestellungen unter Mein Konto → Bestellungen eine Schaltfläche Beleg. Beim Anklicken wird eine PDF-Datei (receipt-1234.pdf) heruntergeladen, die mit der Standard-Belegvorlage des Onlineshops gerendert wurde.

Standardmäßig wird die Schaltfläche bei Bestellungen mit dem Status In Bearbeitung, Abgeschlossen und Rückerstattet angezeigt — also bei Status, bei denen die Bestellung bezahlt wurde. Bei Bestellungen mit Zahlung ausstehend, stornierten und fehlgeschlagenen Bestellungen wird sie nicht angezeigt.

Es ist keine Konfiguration erforderlich: Aktivieren Sie eine Vorlage, und die Schaltfläche ist verfügbar. Wenn sie nicht angezeigt werden soll, kann ein Entwickler sie mit einem Filter deaktivieren.

Der Shortcode [wcpos_receipt]

Um einen Beleg-Link zur Bestellbestätigungsseite ("Danke") oder zur Seite Mein Konto → Bestellung anzeigen hinzuzufügen, verwenden Sie:

[wcpos_receipt]

Ohne Attribute erkennt der Shortcode auf beiden Seiten automatisch die aktuelle Bestellung und gibt einen Link Beleg herunterladen (PDF) aus. Auf anderen Seiten wird nichts ausgegeben. Ein explizites order_id funktioniert nur für angemeldete Kunden, denen diese Bestellung gehört.

Attribute

AttributStandardBeschreibung
order_id(automatisch erkannt)Link zu einer bestimmten Bestellung. Funktioniert nur für angemeldete Kunden, denen die Bestellung gehört.
link_textDownload receipt (PDF)Der Linktext.
formatpdfpdf lädt ein PDF herunter; html öffnet stattdessen die druckbare Belegansicht.
template(Standardwert für Storefront)Rendert mit einer bestimmten Vorlagen-ID statt mit dem Storefront-Standardwert.
classwcpos-receipt-linkCSS-Klasse für den Link.
id(keine)HTML-id für den Link.

Beispiele

Ein Download-Link auf der Bestellbestätigungsseite:

[wcpos_receipt link_text="Download your invoice"]

Ein Link zum auf dem Bildschirm angezeigten (druckbaren) Kassenbon anstelle einer PDF-Datei:

[wcpos_receipt format="html" link_text="View your receipt"]

Mit einer bestimmten Vorlage ausgeben — zum Beispiel einer A4-Rechnungsvorlage anstelle Ihres 80mm-Kassenbons:

[wcpos_receipt template="123" link_text="Download invoice (PDF)"]

Die Vorlagen-ID ist die Zahl in der URL des Bearbeitungsbildschirms der Vorlage (post=123) unter WP Admin → POS → Vorlagen.

Welche Vorlage erhalten Kunden?

Downloads im Onlineshop verwenden die konfigurierte Belegvorlage oder die erste aktive Vorlage, wenn keine konfiguriert ist. Diese Standardvorlage für den Onlineshop ist unabhängig von der Vorlage, die ein Kassierer über das Dropdown an der Kasse auswählt. Wenn die Standardvorlage für den Onlineshop ein schmaler Kassenbon im Thermodruckstil ist, ist auch die PDF schmal.

Für Online-Bestellungen ist möglicherweise ein ganzseitiges Dokument vorzuziehen. Es gibt zwei Optionen:

  • Verwenden Sie eine ganzseitige Vorlage als Standardvorlage für den Onlineshop (die Vorlage Rechnung in der Galerie ist für A4/Letter ausgelegt), oder
  • Lassen Sie Ihre Kassenvorlagen aktiv und verweisen Sie den Onlineshop mit dem Attribut template des Shortcodes auf eine andere Vorlage oder auf der gesamten Website mit dem folgenden Entwicklerfilter.

Vorlagen werden mit derselben Belegdaten-Nutzlast wie im POS gerendert, sodass Ihr Logo, Ihre Unternehmensidentität, Ihre Steuereinstellungen und Ihre Anpassungen übernommen werden.

Sicherheit

Beleglinks enthalten den eindeutigen Schlüssel der Bestellung — denselben Mechanismus, den WooCommerce für seine Bestellbestätigungsseiten verwendet —, sodass Gäste, die ohne Konto zur Kasse gegangen sind, den Link auf der Bestätigungsseite weiterhin verwenden können. Wer den Link nicht hat, muss als Kunde der Bestellung angemeldet sein. Shortcodes mit explizitem order_id werden nur für den angemeldeten Eigentümer dieser Bestellung gerendert.

Sprechende Permalinks erforderlich

Wie alle WCPOS-Checkout-Seiten verwendet die Beleg-URL WordPress-Umschreiberegeln. Websites mit Einfach-Permalinks (Einstellungen → Permalinks) müssen zu einer anderen Permalink-Struktur wechseln.

Für Entwickler

Drei Filter steuern die Shop-Ansichten:

// Hide the My Account Receipt button.
add_filter( 'woocommerce_pos_storefront_receipt_my_account_button', '__return_false' );

// Change which order statuses show the button (default: processing, completed, refunded).
add_filter( 'woocommerce_pos_storefront_receipt_order_statuses', function ( $statuses, $order ) {
$statuses[] = 'on-hold';
return $statuses;
}, 10, 2 );

// Use a different template for storefront PDF downloads only.
// Receives and returns the full template array (null when none is configured).
add_filter( 'woocommerce_pos_storefront_receipt_template', function ( $template, $order ) {
return \WCPOS\WooCommercePOS\Templates::get_template( 123 );
}, 10, 2 );

Die PDF-Route selbst ist /wcpos-checkout/wcpos-receipt/{order_id}?key={order_key}&format=pdf — derselbe durch den Bestellschlüssel geschützte Endpunkt, den der POS für Belege verwendet, wobei format=pdf statt der Bildschirmansicht das gerenderte PDF zurückgibt.