Documentation
Laurens Spaey
Last Update a month ago
This manual takes you from an empty installation to a shop that books its turnover into Scrada automatically. Read it through once before you start: a few choices, such as your sync mode and your VAT mapping, shape how your accounts end up looking.
What is in here
- Before you start
- Installing the plugin and activating your licence
- Connecting to Scrada
- Choosing what goes to Scrada
- When an order is sent
- Letting the customer choose
- Setting up sales invoices
- Setting up daily receipts
- Mapping VAT rates
- Mapping payment methods
- Mapping customer and delivery details
- Peppol and status updates
- Day-to-day use and troubleshooting
1. Before you start
- WordPress 5.0 or higher, with WooCommerce 3.5 or higher
- PHP 7.4 or higher
- A Scrada account with API access
- Your licence key for this plugin
2. Installing the plugin and activating your licence
- Download the zip file we sent you.
- In WordPress, go to Plugins > Add New Plugin > Upload Plugin.
- Choose the zip file, install it and activate the plugin.
- Go to WooCommerce > Settings > Scrada settings > License, enter your licence key and save.
3. Connecting to Scrada
- API Key and API Password
- Company ID, the UUID of your company in Scrada
Turn on Use test environment while you are still trying things out. The plugin then talks to Scrada's test servers instead of your real books, so your test orders pollute nothing.
Remember to turn the test environment off again before you go live. While it is on, nothing reaches your real accounts, including your real orders.
4. Choosing what goes to Scrada
- Sales invoices only – every order becomes its own sales invoice in Scrada. Use this if you sell mainly to businesses, or if every customer expects an invoice.
- Daily receipts / dagontvangstenboek only – every order becomes a line in your daily receipts journal, grouped by VAT category. Use this if you sell to consumers and do not need individual invoices.
- Both: sales invoices + daily receipts – you get an invoice and a journal line. To stop your turnover being counted twice, the plugin books a deduction in the journal. You pick it under Invoice paid deduction.
5. When an order is sent
- Automatically, when payment is completed – the usual choice, and the safest. Nothing leaves until the money is in.
- Automatically, when payment is completed or order is pending/on-hold – useful if you work with bank transfer and want to send the invoice before you are paid.
- Automatically, when order reaches a custom status – enter the slug of your status under Custom sync status, without the wc- prefix.
- Manual only – nothing leaves until you press the button on the order yourself.
6. Letting the customer choose
- Plugin checkbox – we add the field to checkout ourselves. This works on the classic checkout and on the newer block checkout alike.
- Existing checkout field – you read a field another plugin already stores. Give the meta key, and optionally the value that means "yes". Leave that empty and any filled-in value counts as yes.
7. Setting up sales invoices
In Sales invoice journal code, enter the code of the journal your invoices land in, for example V1. You will find it in Scrada in your sales journal's settings.
There are four formats for a line description:
- SKU: Product name – the default
- Product name only
- SKU only – if a product has no SKU, the line falls back to the name
- #Order: Product name
With Let Scrada send invoice to customer on, Scrada emails the invoice according to your company settings there. With it off, Scrada assumes you already sent it, for instance through your normal WooCommerce emails. Do not turn it on if you already email invoices yourself, or your customer receives them twice.
- Generate invoices for cash on delivery orders – COD orders get an invoice too.
- Skip invoice creation for free orders (total = 0) – those orders are passed over.
- Include customer order notes on invoice – the note the customer left goes into the invoice's note.
- Create credit notes for refunds – see chapter 13.
8. Setting up daily receipts
Important: turn on "Allow multiple entries per day" in Scrada. This plugin writes one entry per order, so the journal has to accept more than one a day. With it off, only the first order of each day is booked and every later one fails. You will find the setting in Scrada under Settings > Journals, when editing your daily receipts journal. The plugin checks this for you and warns you if it is still off.
Days without sales are still expected to carry an entry. With Automatic zero-day entries on, the plugin sends a zero-euro entry each night for the days still missing. Your journal's opening days are respected: on a day you are closed, nothing is booked.
Careful: only turn this on if this shop is the only thing booking into this journal. If you also sell over the counter, or a point-of-sale system books into the same journal, the plugin will report a day without sales on a day that had them. A journal entry cannot be undone. The setting is off by default for that reason.
9. Mapping VAT rates
- Standard rate (box 01, 02 or 03) – your ordinary sales with VAT
- Zero rate (box 00) – sales at 0% VAT
- ICD Goods (box 46) – intra-community delivery of goods to a VAT-registered customer in another EU member state
- ICD B2B Services (box 44) – the same, but for services
- Co-contractor (box 45) – reverse charge, for instance in construction
- Export outside EC (box 47) – export outside the European Union
Careful: goods and services are not the same. An intra-community delivery of goods belongs in box 46, of services in box 44. Those are two different types in the list. If you are unsure, ask your accountant before going further.If you use daily receipts, the same tab also maps each rate to a VAT category from your Scrada journal.
The plugin guesses: if the line carries VAT it uses the standard rate, otherwise the zero rate. It writes a warning to the log every time and puts a notice at the top of your screen linking to the right tab. Do not leave it that way, because a guessed VAT type is an error in your return.
10. Mapping payment methods
In the Payment method mapping tab you pick a Scrada payment type for each WooCommerce payment method: bank transfer, bank card, direct debit, cash, credit card, an online payment provider such as Mollie or Stripe, cheque or debit card. It is printed on the invoice.
Leave it empty and the invoice carries the payment type Unknown. That is not an error, but it is less useful to your accountant.For the daily receipts journal
In the Journal mapping tab you pick, for each payment method, a payment method from your Scrada journal. That list comes straight from Scrada, so it only appears once you are connected and have chosen a journal.
This mapping is required. An order paid with an unmapped method cannot be booked into the daily receipts journal and will fail. It stays in your orders list marked Failed until you fill in the mapping and send it again.In Both mode, also pick a method under Invoice paid deduction. That is the line the plugin uses to take already-invoiced turnover back out of the journal.
11. Mapping customer and delivery details
Scrada keeps street, house number and box apart. WooCommerce puts them together in one address field by default. If you have separate fields, map them here. If you do not, leave House number empty and the number stays part of the street.
VAT numbersLeave this empty and the plugin searches the usual fields itself. The number is cleaned before it goes to Scrada: spaces, dots, dashes and the invisible characters that come along when pasting are stripped out.
Delivery addressIf you deliver to an address other than the billing address, map the shipping fields too. Where there is a delivery address, it goes onto the invoice.
12. Peppol and status updates
Without the right key nothing arrives. Notifications whose signature does not check out are rejected, because otherwise anyone who knows your address could write statuses into your accounts.
13. Day-to-day use and troubleshooting
Your orders list carries a Scrada column that answers one question: did this order reach Scrada?
- Synced – there is an invoice or a journal line in Scrada.
- Not synced – nothing has been sent yet. For an unpaid order that is normal.
- Failed – something went wrong, or Scrada reported that a Peppol document did not arrive.
An order that is not yet synced, or that failed, carries a Sync to Scrada button. An order that is already synced does not: sending it again would put a second invoice in your accounts.
Open an order and the Scrada panel shows the invoice number, when it was synced, the credit note if there is one, the Peppol delivery status, and a button to download the UBL file. If something went wrong, the error message is there too, along with what the plugin is doing about it.
Only when Scrada reported that the request limit was reached. Then the plugin waits and tries again by itself. On any other error it does not: after a timeout or a server error there is no way to know whether the invoice was created anyway, and booking twice is worse than booking once too few. In that case, check in Scrada whether the invoice is already there before sending again.
Refund an order in full or in part in WooCommerce and the plugin creates a credit note for it in Scrada, provided Create credit notes for refunds is on. The number appears on the order. If it does not work, the order is marked Failed, so a refund is never quietly missing from your accounts.
The plugin keeps a log per area. You will find them under WooCommerce > Status > Logs, with a dropdown at the top right. The files start with lsdscra-: invoices, customers, orders, journal, peppol, webhooks and general.
- Only the first order of the day reaches the journal. Turn on "Allow multiple entries per day" on your daily receipts journal in Scrada.
- An order stays on Failed. Open it and read the error in the Scrada panel. Fix the cause and send it again.
- No Peppol statuses arrive. Copy the secret key out of Scrada again and save it in the webhook settings.
- The invoice date is wrong. The date follows your shop's clock. Check your timezone under Settings > General in WordPress.
- Nothing reaches Scrada at all. Check whether the test environment is still on, and whether your sync trigger matches the way your orders are actually paid.
Still stuck?
Get in touch and send the relevant log file along with the order number it concerns. That shows us in one go what happened.
