Skip to content
otopack

How-to

Connecting Business Central and CartonCloud across six warehouses: what we learned

Lessons from a live setup that syncs Business Central and CartonCloud stock across six 3PL warehouses, so nobody keys stock or items twice.

By Girish Mulchandani, Principal Software EngineerLast reviewed 12 October 2026

On paper, the Vektro Asia brief was one sentence. Items, customers and suppliers stay in Business Central, stock stays in CartonCloud, and nobody types anything twice.

Then you look closer. Six warehouses, run by different 3PLs. More than one company in Business Central. Product codes that don’t quite match between the two systems. None of it is hard on its own, but together it’s where stock figures quietly go wrong.

This is what I’d tell anyone starting the same job.

Agree who owns what before you write any code

It sounds like a meeting you can skip. It isn’t.

We settled it like this. Business Central is the master for items, customers, suppliers and currency rates. CartonCloud is the master for what’s physically on the shelf. Otopack holds the work in between: enquiries, quotes, artwork, and where each order is up to.

Leads turned out to be the best example of why it matters. Vektro Asia used to create every lead in Business Central, and every year someone had to clear out the ones that never bought anything. Now a lead lives in Otopack with its quotes and artwork, and it only becomes a customer in Business Central once it actually orders. Business Central stays clean, and nobody spends the end of the year deleting records.

Map the warehouses once, and keep the map out of the code

Each 3PL warehouse is a location in Business Central and has its own place in CartonCloud. We keep the link between the two in settings, not in code, so when a new warehouse comes on board it’s a settings change rather than a release.

Two things caught us here.

If you run more than one company in Business Central, the same item number can exist in both. Before the sync writes a stock figure, it has to know which company that item belongs to.

And warehouses don’t always store your item number as is. Some put their own prefix in front of it. Strip that back to the Business Central number before you try to match anything, or half your items simply won’t be found.

Don’t read the stock report until it’s finished

Stock comes from CartonCloud’s stock on hand report. You don’t get the report straight away. You ask for it, it runs in the background, and you collect it when it’s done.

Here’s the trap. Collect it too early and you get an empty report, and an empty report looks exactly like an empty warehouse. Act on that and you’ve just told customer service there’s no stock.

So the sync checks the status and waits until CartonCloud says the run succeeded. If it doesn’t succeed, we skip that warehouse, log why, and leave the last good figures alone. Slightly stale beats wrong.

Only count stock someone can actually sell

The report can split one product over several lines, by unit of measure and by status. We add them up, but only the lines marked OK. Quarantined stock, or stock that arrived damaged, is in the building, but you can’t promise it to anyone.

We also keep two numbers per item per warehouse: what’s on hand, and what’s free. Customer service lives on the second one.

Be careful about zeroing

When a product ships out completely, it drops off the report, so its stock should go to zero. The obvious move is to zero anything you didn’t see.

Be careful with that. If the report comes back exactly as big as the page size you asked for, it may have been cut off. Zero the “missing” products in that case and you wipe real stock. So when the report might be incomplete, we skip the zeroing and log a warning instead.

Not everything needs to sync at the same speed

Items come across from Business Central every hour. Customers and suppliers every four hours. Currency rates twice a month. Consignment status and proof of delivery come back from Transvirtual on a schedule as well, so nobody has to log in and look them up.

The rule of thumb: how often does it change, and what does it cost you if it’s a few hours old?

Make failures loud

A sync that fails quietly is worse than no sync at all, because people stop checking the numbers. If a warehouse is set up wrong or a report doesn’t come back, the sync logs it and carries on with the next warehouse instead of stopping the whole run. Someone can always see what was skipped and why.

If you remember three things

Wait for the report to finish. Never zero stock off a report that might be cut short. And decide who owns each piece of data before anyone writes a line of code.

You can see how Otopack connects Business Central, CartonCloud and Transvirtual. If you run them and want to see this on your own data, book a demo and bring one real order.

About the author

Girish Mulchandani

Principal Software Engineer, Otolab AI

Girish Mulchandani is a Principal Software Engineer at Otolab AI, with more than 18 years in the software industry working at architect level on automation and integration. He led the Vektro Asia setup.

Girish Mulchandani on LinkedIn

Bring one real order. Watch it run.

Pick a quote, a proof round or a call-off from this week. We will walk it through Otopack on top of your own systems, so you see exactly where the hours go.

Microsoft Dynamics and its logo are trademarks of Microsoft Corporation. CartonCloud and its logo are trademarks of CartonCloud. Transvirtual and its logo are trademarks of Transvirtual. Otopack is not affiliated with or endorsed by Microsoft Corporation or CartonCloud or Transvirtual.