RM24 Swiss Invoices & Delivery Notes for WooCommerce

Description

RM24 Swiss Invoices & Delivery Notes gives shops in Switzerland and Liechtenstein the legal essentials – without the EU overhead (no withdrawal forms, no OSS, no EU labels). Every module can be switched off.

Invoices

  • PDF invoices with your logo, sender line for Swiss window envelopes (window right or left), customer address, order data and items with SKU.
  • VAT column and VAT summary per rate (8.1 %, 2.6 %, 3.8 %) with your VAT number (UID).
  • Number format with placeholders, e.g. RE-{year}-{number}, padded with zeros, optionally restarting every year. The next number can be set.
  • Created automatically when an order reaches a status (on hold, processing or completed) or by hand in the order; bulk action “Create invoices”.
  • Attached to the WooCommerce emails you choose.
  • Payment term and bank details for payment methods paid after delivery (e.g. purchase on account), “Paid” for all others.
  • Stored as PDF in a protected folder and never changed afterwards (archiving for 10 years).
  • Download for customers in “My account”.
  • Invoices in the language of the customer (German, French, Italian, English).

Delivery notes

  • Delivery note with shipping address, quantities (refunded items removed), SKU and customer note; prices optional.
  • Single in the order or for many orders at once (bulk action “Print delivery notes”).
  • Optionally attached to the “New order” email for the shop.

Legal pages

  • Assign terms and conditions, privacy policy, imprint, shipping and payment, and (optionally) right of withdrawal.
  • Links to the legal pages in all customer emails.
  • Terms as PDF attachment to the order confirmation.
  • Shortcodes [rm24_legal_link page="terms"] and [rm24_legal_page page="terms"].

Checkboxes

  • Terms and privacy at checkout (classic and block checkout), privacy at account registration and for product reviews.
  • Texts with placeholders {terms}, {privacy}, {shipping}, {withdrawal} that become links.
  • Every consent is logged with time and wording in the order or the customer account.

Double opt-in

  • New customer accounts confirm their email address before they can log in. Orders are never blocked.
  • Unconfirmed accounts without orders are deleted after a number of days.
  • Status column and “Confirm account” in the user list.

Structured addresses

  • Customers choose company or private person first. A company always needs a contact person: salutation, first and last name, optionally department, direct phone and VAT number.
  • Street and house number in separate fields, as required for the structured address of the Swiss QR bill. The usual address line is still filled, so other plugins keep working.
  • One-time tool to split the addresses of existing customers and orders, with preview, CSV export/import and undo.
  • Stable field names for imports into ERP and CRM systems.

Price notes (Swiss Price Indication Ordinance)

  • “incl. VAT, plus shipping costs” below prices, with a link to your shipping page.
  • Unit price (e.g. per litre or per kg) from the content entered per product or variation.
  • Delivery time per product or variation with a default.

Coming from Germanized?

Invoices created with Germanized stay where Germanized stored them. This plugin shows them in the order and in “My account” (read only) and continues the invoice numbers. Germanized does not need to be active for this. After taking over the documents once (RM24 Invoices & legal), the Germanized plugins can be deleted.

RM24 Swiss Invoices & Delivery Notes PRO

The separate PRO add-on (available at rm24.ch) adds the Swiss QR bill payment part, credit notes, export for your accountant, own checkboxes with conditions and reminder emails for unconfirmed accounts. This free plugin is fully functional on its own.

External services

The RM24 overview page (RM24 Overview) can show a list of further RM24 plugins. The list is only loaded after you click “Show more RM24 plugins”. It is then requested from https://rm24.ch/plugin_updates/modules.json and cached for 12 hours. No data about your site, your shop or its customers is sent; the request only contains the data every web request contains (such as your server’s IP address).

The service is provided by RM24 | Roger Roth: Terms and privacy policy.

Invoices, delivery notes and all other documents are created on your own server. No external service is used for them.

Screenshots

Installation

  1. Install the plugin through Plugins Add New, or upload the plugin folder to /wp-content/plugins/.
  2. Activate the plugin. WooCommerce must be active.
  3. Enter your company data and logo under RM24 Invoices & legal.
  4. Check the tabs Invoices, Delivery notes, Legal pages, Checkboxes, Double opt-in and Price notes.
  5. Use “Preview invoice” to check the layout with your latest order.

FAQ

Can an invoice be changed?

No. Invoices are archived documents. Correct them with a credit note (PRO) and create a new invoice.

Where are the PDF files stored?

In a folder with a random name inside wp-content/uploads/ that is protected with .htaccess (Apache). On nginx, block access to wp-content/uploads/rm24-documents-* in the server configuration. Customers download their documents through a checked link.

What happens on uninstall?

The settings are removed. Invoices (database table and PDF files) are kept on purpose because they must be archived.

Does the plugin work with the block checkout?

Yes. The checkout checkbox appears in the block checkout as well. In the block checkout the texts are shown without links; the WooCommerce terms notice below the order button links to your pages.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“RM24 Swiss Invoices & Delivery Notes for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.4.10

  • Fix: The unit price below the price no longer breaks into several lines.
  • Screenshots, banner and icon for WordPress.org.

1.4.9

  • New setting “Move address down (mm)” (General): moves the sender line, the address and the title down so that they fit the window of the envelopes used.

1.4.8

  • Delivery times: fixed list in the settings (one per line, default 1-3 to 30-60 working days). Products, variations, quick edit and bulk edit offer a selection instead of free text. Saved values that are not in the list are kept.
  • New: overview of all delivery times (Products Delivery times) with the number of products, the products per delivery time and a bulk change. The product list can be filtered by delivery time.

1.4.7

  • Local pickup: invoice and delivery note use the billing address of the customer instead of the pickup location (WooCommerce saves the pickup location as shipping address). New filter rm24_sid_is_pickup.
  • Address window for A4 folded once into a C5 envelope (SN 010 130): the address block lies between 50 and 90 mm from the top, 22 mm from the left with the window on the left.
  • Local pickup: no delivery date on the delivery note, as the goods are often collected days later.
  • Shipping costs incl. VAT: not applied while Germanized is still active, as Germanized already splits the gross amount (no double calculation).
  • Shipping costs incl. VAT: the amount entered in WooCommerce is the final price (e.g. CHF 14.00); net amount and VAT are calculated from it. New setting under Prices & delivery time, on by default (as with the Germanized option).
  • Cart and checkout blocks: “Total” and “incl. CHF … VAT” instead of “Estimated total” and “Including CHF … in taxes” (new setting under Prices & delivery time, on by default).
  • Checkbox texts and the default delivery time that were saved in English (while the translations were missing) are shown in the language of the shop.
  • Fix: the settings of the first saved tab were lost when the option did not exist yet (WordPress sanitizes a new option twice).

1.4.6

  • Invoice number format: new placeholder {day}; the Germanized spelling {Y}, {m}, {d} is understood too, so a taken-over format stays the same.
  • Translations (German, French, Italian) are included again; they were missing in the 1.4.5 package.

1.4.5

  • Security: the plugin now checks the security token (nonce) and the user permissions itself before it saves product fields and consents.
  • Security: the output of the shortcodes [rm24_price_notes] and [rm24_legal_page] is escaped.
  • Translations are now delivered by translate.wordpress.org.

1.4.4

  • Fix: the bulk action “Print delivery notes” works again (the security check failed).
  • Fix: when double opt-in is switched off, unconfirmed accounts can log in again and are no longer deleted.
  • Fix: invoice numbers taken over from Germanized are compared as numbers (e.g. 117 is higher than 99).
  • Fix: no PHP notice for optional checkboxes in the block checkout (WooCommerce 9.8 and newer).
  • Fix: with structured address fields switched on, orders in the block checkout are possible again (the block checkout keeps the usual address line; street and house number are split automatically for the QR bill).

1.4.3

  • Fix: “plus shipping costs” and the delivery time are no longer shown for variable products whose variations are all virtual (e.g. software, licenses, downloads).

1.4.2

  • Checkout: the country is shown below the city.

1.4.1

  • Old salutation fields (billing_title of Germanized or code snippets) are removed from checkout and “My account”; saved values (Mr/Ms) are used for the new salutation field and on documents.

1.4.0

  • Checkout in clear blocks: company (UID, company data, address) on light grey, contact person on ice blue, order details on light yellow with their own heading. Private persons: your details, then address. Colours adjustable.
  • Company fields are always hidden for private persons, even if a theme or snippet changes their CSS classes.
  • Settings: password field type (kept when left empty).

1.3.6

  • Settings tab “Price notes” renamed to “Prices & delivery time”.

1.3.5

  • Delivery time is also shown for products on backorder; new setting to show the product delivery time, an own text or nothing on backorder.

1.3.4

  • Price notes are added after other price filters, so code that rebuilds the price HTML no longer removes them.

1.3.3

  • Delivery time is also shown for variable products (main product; a variation only if its delivery time differs).
  • Product page: if the theme prints the price without the WooCommerce price function, the notes are printed right below it.
  • New shortcodes [rm24_price_notes] and [rm24_delivery_time] (optional id=”…”) for own templates.

1.3.2

  • Delivery time and unit price now have their own block in the General tab, visible for simple and variable products, with suggestions of the delivery times already used.
  • Delivery time and unit price in the quick edit, delivery time and unit in the bulk edit of the product list.

1.3.1

  • Germanized import: documents without PDF (drafts) and documents with a missing file are listed with order, date and reason; missing PDFs can be uploaded in the row, drafts closed without PDF.
  • Germanized import: units that cannot be assigned are listed with their products and can be assigned to a unit once for all of them. The value “0” (no unit) is no longer reported.
  • Germanized import: PDF files moved to another folder are found by their file name.

1.3.0

  • New: take over Germanized documents (invoices, cancellations, packing slips) and product data (unit price, delivery time) into the own archive, so that Germanized, Germanized Pro and Shiptastic can be deleted.
  • New: delivery notes show the ordered and the delivered quantity (refunds and backorders deducted, or an empty box to fill in).
  • New: address split tool with filter, multiple selection and bulk decisions; orders whose personal data was erased can be exported as CSV and moved to the trash.
  • Changed: only active payment methods are listed in the settings.
  • Changed: the position of the address window is a PRO setting; the free version always uses the Swiss window on the right.

1.2.0

  • New: structured address fields for the classic checkout and “My account”: company or private person first, companies always with a contact person (salutation, first and last name, department, direct phone, VAT number), street and house number in separate fields.
  • New: tool to split the addresses of existing customer accounts and orders into street and house number, with preview, CSV export/import, apply and undo.
  • New: list of field names for imports into ERP or CRM systems.
  • Documents: salutation before the contact person.

1.1.0

  • New: VAT per rate shown between subtotal and total.
  • New: own payment and thank-you texts, payment term per payment method, letterhead left or right with own text, logo size and colours, further checkout fields on invoices and delivery notes (with the PRO add-on).
  • Improved: layout of the address block.

1.0.0

  • Initial release.