PrestaShop is a widely used open-source shop platform, especially for stores that want to decide for themselves how their shop looks and works. You see that freedom back in the bookkeeping: order statuses, tax rules and payment modules differ per shop. An export from PrestaShop is therefore rarely usable in your accounting package as it is. This article explains what PrestaShop hands you, what your bookkeeping needs and which choices to make before you automate anything.
What PrestaShop gives you
PrestaShop has its own webservice under /api in your shop. You switch it on in the back office and create a key. You set rights per resource, for read, write and delete, so a connection that only needs to read gets read rights only. Responses are XML by default; JSON is available as output from PrestaShop 8.1.
For your bookkeeping these resources matter most:
- Orders and order lines: what was ordered, at what amount, with which tax per line, plus shipping and discounts.
- Customers and addresses: who is buying, with an invoice address and possibly a VAT number.
- Credit slips: a refund or return is a separate resource, apart from the original order.
- Order statuses: the steps an order goes through, such as paid or shipped.
Why PrestaShop is tricky for bookkeeping
The order status decides when to book. Every shop sets up its own statuses. If you book an order as soon as it is placed, you also book orders that are never paid. If you only book at shipped, your revenue shifts. Choose one status deliberately and use it for all orders.
Credit slips stand alone. A return belongs in your bookkeeping as a credit invoice for the amount actually refunded, linked to the original invoice. If you only book orders, your revenue is too high and your VAT return is off.
Tax rules per country. PrestaShop calculates tax with tax rules per country and product group. The result per line has to be translated into a VAT code in your bookkeeping. If you sell to other EU countries, also look at the OSS scheme.
Shipping and discounts. Shipping and cart-rule discounts belong on their own lines with the rate the shop charged on them. If they are left out or hidden in the product lines, revenue and VAT per rate no longer add up.
Multiple shops. PrestaShop can run several shops in one installation. Your bookkeeping often wants to know which revenue belongs to which shop, for example through a cost centre or a separate sales journal.
Different payment modules. Each payment module fills in payment data slightly differently. That makes matching a payment to the invoice, and so reconciling, harder than the order itself.
What your bookkeeping needs
For every paid order a sales invoice with the customer as relation, a line per product, separate lines for shipping and discount and a VAT code per line. For every credit slip a credit invoice. VAT codes differ per administration: in one 21% is called “1”, in another “VH”. So never type them from memory into a connection, but pull them from your own administration.
Options to connect PrestaShop to your bookkeeping
- A PrestaShop module. Quick to install, but it runs inside your shop and has to be checked after every update.
- An external service that reads the webservice. Nothing has to be installed in your shop and the key can only read. This is how Schakel works.
- Custom work. A developer builds the connection. It gives freedom, but maintenance after updates stays with you.
- Manual. An export per month. You lose the link between a return and the original sale.
Questions to ask every solution
- At which order status is the invoice created, and can you choose it yourself?
- Are credit slips booked as a credit invoice, for the amount refunded?
- Do shipping and discounts arrive on their own lines, with the right rate?
- How are duplicates prevented, and how do you see a failed booking?
- Can the connection only read in your shop?
Which package fits
The details per package are on the pages PrestaShop Exact Online integration, PrestaShop Moneybird integration and PrestaShop Twinfield integration. For a broader overview for Exact, read connect a webshop to Exact Online.
Always start with a few test orders and have your accountant check the first entries. You can try Schakel free for 30 days, and the pricing is on the site.
Want this handled automatically? Pick your connector.
Back to the blog