Guide

Connecting your online shop to accounting, the warehouse and couriers

An order from your shop passes through four programs before the parcel leaves. This is what a connection looks like after which the order travels that path on its own, a person only sees the exceptions, and the customer gets a tracking number without asking.

Author: Łukasz WłodarczykPublished:

The path of one order

This is what an order looks like once the programs are connected, from the click on “buy” to the parcel at the customer’s door:

  1. The shop takes the order and the payment. Within a minute the order appears in the system at the centre of the company, with a number and the status “paid”.
  2. The warehouse gets a picking document with the items and their shelf locations. Stock is booked out immediately, and the new level goes back to the shop so nothing gets sold that is no longer there.
  3. Accounting gets an invoice issued from the order data. Nobody retypes the tax number or the address.
  4. The courier gets a shipment with the address and weight. The label prints in the warehouse, and the tracking number comes back to the order.
  5. The customer gets an email with the tracking number and the invoice attached, the moment the warehouse marks the parcel as dispatched.

A person sees only the list of exceptions in this flow: an order with no house number, a product whose stock does not match, a payment that has not arrived. Everything else moves on its own.

Selling on several channels

Your own shop, a marketplace, wholesale orders by email. Without a connection each channel is a separate spreadsheet and a separate person watching it. After the connection every channel lands in one place, gets shared numbering and follows the same path.

The hardest part is stock. One unit sold in the shop has to disappear from the marketplace before someone buys it there a second time. The connection sends the stock level back to every channel after each change and holds a reserve for units already in baskets. Without that, you sell the same item twice and explain yourself to the customer.

Ready-made platform or a custom connection

There are ready-made platforms that connect popular shops with popular accounting packages and couriers. For a company with a standard process that is a good and cheaper route. I check this after the first call, and if a ready-made platform is enough, I say so.

A custom connection makes sense when:

  • you pick from several warehouses or ship some orders straight from the supplier,
  • some products are made to order and the order has to pass through production,
  • you use a stock or accounting program the ready-made platforms do not support,
  • you sell wholesale with individual prices and credit limits per customer,
  • you want staff to work on one screen rather than in four programs.

In those cases I build the connection as part of your own system at the centre of the company. The system is made of modules, meaning self-contained parts: orders, warehouse, invoicing, dispatch. Each connects a different program and can go live on its own.

Common traps

Duplicate orders. The shop sent the order twice because the first attempt was not confirmed. Without a safeguard the warehouse ships two parcels. The connection recognises the order by the shop’s number and does not accept it a second time.

Invoice before payment. With a cash-on-delivery order or a bank transfer, the invoice cannot be issued at the moment of ordering. The flow has to know the payment method and wait for confirmation, or issue a different kind of document.

Different product codes. The same product has one code in the shop, another in the warehouse, a third at the supplier. Before launch we build one lookup table of equivalents, and that table decides what is what. In the companies I have seen it is a frequent cause of errors and an often skipped step.

Stock in two places. The shop has its stock level, the stock program has its own. We agree that one of them is right, and that one sends the level to the other. Never both ways at once.

Changes after ordering. The customer added a product, changed the address, asked for an invoice to their company. The connection has to carry the change to the warehouse and accounting until the parcel leaves, and then lock it.

Where to start

Start with the flow that carries the most orders. Usually that is shop to warehouse and courier, because a mistake there ends in a parcel at the wrong address or a unit sold twice. Invoices and accounting come as a second stage. What the connection to the accounting package looks like is on a separate page.

The bigger picture of how programs get connected in a company and what can go wrong is on the main page of the guide. What to do with a program that cannot connect is covered here.

Tell me in the form below how many orders a day you handle and which programs they pass through. I will get back to you.

Questions and answers

We sell through our shop and two marketplaces. Is that three separate connections?

Three entry points, one flow. Orders from every channel land in one place, get a shared number and follow the same path to the warehouse, the invoice and the courier. Stock levels go back to each channel separately, so the same unit is never sold twice.

Would a ready-made integration platform do this more cheaply?

Often yes, if you run a popular shop, a popular accounting package and a standard process. A custom connection makes sense when something in the middle is unusual, for example picking from several warehouses, made-to-order products or a program the platform does not support. After the call, once I have checked your programs, I tell you which route is cheaper in your case.

What happens when a customer returns goods?

A return raised in the shop or by a staff member creates a goods receipt in the warehouse and a credit note in accounting, and the customer gets a confirmation. It is the same flow as an order, only in reverse, and it is part of the scope from the start.

Contact

Tell me how many orders a day you handle and which programs they pass through

You do not need a specification. Describe how the work looks today and what should change. We will write the scope together.

A few sentences is enough.

The data controller is WSD - Włodarczyk Software Development. I use your data only to answer this enquiry. Details in the privacy policy.