Vendure E-boekhouden plugin
Plugin for syncing orders to the Dutch accounting platform E-boekhouden.nl.
Getting started
Send orders to e-Boekhouden as GeldOntvangen mutation and configured account and contraAccount numbers. Creates a
mutation line for each taxrate of the order's tax summary.
- Add this to your plugin in
vendure-config.ts:
import { EboekhoudenPlugin } from '@pinelab/vendure-plugin-e-boekhouden'
plugins: [
EboekhoudenPlugin.init({
getTaxCode: (ctx, order, taxRate) => {
if (order.customFields.VatID && taxRate == 0) {
return 'VERL_VERK'; // Reverse charge for EU sales
} else if (taxRate == 21) {
return 'HOOG_VERK_21';
} else if (taxRate == 9) {
return 'LAAG_VERK_9';
} else {
Logger.error(`Unknown tax rate ${taxRate} for order ${order.code}`);
return 'GEEN';
}
},
}),
...
]
- Start the server and go to
Settings>Channels, open the channel you want to configure and select the E-boekhouden tab. TickEnabledand fill in yourUsername,Security code 1,Security code 2,AccountandContra account. Configuration is stored per channel as Channel custom fields, so no Admin UI extension needs to be compiled.
The
eBoekhoudenEnabledtoggle controls whether e-Boekhouden is active for a channel. When it is off (or the config is incomplete), the plugin is disabled for that channel.
Development - generate new client
- Go to https://soap.e-boekhouden.nl/soap.asmx?wsdl and save the wsdl file in
src/client/e-boekhouden-wsdl.xml. - Run
yarn generate-soap-client. src/clientwill now have an updated and typed soap client for e-Boekhouden.