Quite a lot has been added and fixed since the last update. Here's a rundown of everything.
New Features
Pennylane integration
Pennylane is now supported as an accounting integration. Orders from BrickLink and Brick Owl are automatically synced as invoices in Pennylane, with separate line items for products, margin scheme goods, shipping, and handling fees. VAT is applied per customer location (domestic, EU, export) and B2B reverse charge is supported. The connection uses OAuth, so no API keys are needed.
Notifications page
There's now a dedicated page for all your notifications. Previously you'd only see them if you happened to be looking at the right place — this is a lot cleaner. You can find it via the sidebar menu.
Email notifications for sync errors
You can now opt in to receive email notifications when something goes wrong during a sync with your accounting package. So you don't have to log in every time to check if everything went fine. Turn it on in your notification settings.
B2B orders: sync even when EU orders are excluded
If you had EU orders excluded from syncing, B2B orders (reverse charge, no VAT) were being skipped too. That's not really correct — those should still sync. There's now a separate option to always sync B2B orders, even if you have EU orders turned off.
Customer email sync
You can now include the customer's email address when syncing contacts to your accounting package. It's optional and configurable per integration. Works with: Dinero, e-Boekhouden, e-conomic, Fatture in Cloud, Informer, Jortt, KigoKasa, Lundify, Odoo, Pennylane, QuickBooks, and Rompslomp.
Order cost column
The orders page now has an extra column showing what an order cost you. It's calculated automatically based on the items in the order.
Updating existing contacts is now optional
Before, existing contacts in your accounting package were always updated when a new order came in. That's not always what you want. You can now turn this off. When an address or email address differs from what's already in your accounting package, you'll get a notification.
Shared Stripe account for BrickLink and BrickOwl
You can now use a single Stripe account for both BrickLink and BrickOwl orders. Previously you had to set this up separately for each marketplace.
OSS / IOSS support
You can now enable OSS for cross-border EU orders. The VAT rate of the buyer's country is then automatically applied. There are also extra columns on the orders page to help with OSS administration. Check the documentation for more details.
Edit connection credentials without reconnecting
If you wanted to update an API key or password for an existing integration, you had to remove the whole connection first — losing all your configuration in the process. That's no longer the case. You can now update the credentials directly without breaking the connection. The change is only saved if the connection test passes, similar to how PayPal works.
Test-first connection flow
When setting up a new integration, the connection is now tested before it's saved. So you know right away whether the credentials you entered are correct.
Improvements
Normalize contact data
Some customers type their name, street, or city in all lowercase. You can now have BrickInvoice automatically fix this to proper casing. Find it under Settings → Order sync.
Invoice total verification for Dinero and e-Boekhouden
After creating an invoice, the total is now verified against the order amount for Dinero and e-Boekhouden. If there's a mismatch you'll get a notification. This was already available for a few other packages.
Invoice total mismatch notifications for Rompslomp, Pennylane and QuickBooks
Same as above — the invoice total mismatch notification is now also available for Rompslomp, Pennylane, and QuickBooks.
City names preserved correctly
City names with mixed casing (like "Frankfurt am Main") were sometimes being converted to all caps. Fixed.
Bug Fixes
Stripe fee lookup: also try grand_total
When looking up transaction fees, Stripe now tries a few different order amounts if the first attempt doesn't find a match. This mainly affected US orders on BrickLink.
PayPal fee lookup: also try grand_total
Same fix, but for PayPal fee lookups.
First sync date was wrong
The first time you turned on syncing, the next scheduled sync date was calculated incorrectly. After that it was fine. This is now fixed.
Margin scheme: show placeholder instead of defaulting to "don't use"
On new accounts, the margin scheme setting defaulted to "don't use", which sometimes caused issues when trying to finish the initial setup. It now shows a placeholder instead.