Skip to content

Home » Proiecte » B2B ordering portal for a distributor, connected to the ERP

Typical project

B2B ordering portal for a distributor, connected to the ERP

How we build a portal where a distributor’s customers order for themselves, at their own prices, with stock and terms taken from the ERP, and what happens to orders when the link to the ERP goes down.

A distributor sells the same products to shops, construction firms or restaurants, but to almost every one at a different price and on different terms. A B2B ordering portal gives these buyers an account where they see exactly the offer that applies to them and place their orders themselves, at any hour, without waiting for the sales rep or the sales office.

All the value lies in the link to the stock management software (ERP), which already holds the prices, the stock and the balances. A portal that shows different figures from the ERP creates more work than the phone it replaces.

Where time is lost when orders come in by phone and email

The order arrives as a message, as a photo of a handwritten list or as an attached spreadsheet. Someone in the office retypes it into the ERP, looks up the codes, checks the stock and phones back if something is missing. Every retyping is a chance for a mistake.

Sales reps end up as order-takers instead of selling. The buyer, for their part, does not know their balance and finds out they have exceeded their credit limit only when the order is blocked.

B2B ordering portal: what each customer sees after logging in

The catalogue is not public. After logging in, each company sees the range it is entitled to, with its own net price, calculated by the rules in the ERP: price list, discount by product group, negotiated price per item, promotions with a set period. The rules are not rewritten in the portal; they are carried over, so that there are not two sources.

A trade buyer does not browse; they know what they want. That is why the route to the basket is short.

  • Repeat order: any past order can be put back in the basket and adjusted.
  • Basket from a list: you paste codes and quantities, one line per item.
  • Basket from a file: you upload a CSV or an Excel sheet exported from your own software.
  • Stock and packaging: availability shown, quantities rounded to the case or the pallet, where that is how you sell.
  • Credit and balance: the limit, the current balance and the invoices due, visible before the order is sent.

The link to the ERP: which data moves and in which direction

How we connect depends on your software. Some ERPs have a documented programming interface (API); others offer web services, file exchange at fixed intervals or read access to the database. We have the first technical conversation with the ERP vendor or with whoever administers it.

The basic rule: the ERP remains the source of truth. The portal keeps a working copy of the data, so that it can respond quickly, and sends back one thing only: the order. We build the portal in PHP, with Laravel, and the synchronisations run in the background, through job queues.

  • From the ERP to the portal, rarely: products, codes, units, groups, customers, commercial terms.
  • From the ERP to the portal, often: stock, prices, balance, invoices, order status.
  • From the portal to the ERP, immediately: the order, with a unique identifier, so that it cannot be recorded twice.
  • Back to the buyer: the order number from the ERP, as proof that it has gone through.

What happens when the link to the stock management software goes down

It goes down sooner or later: an ERP update, an internet outage at head office, a restarted server. The portal has to stay useful then too. The catalogue and prices from the last synchronisation remain visible, with its time displayed, and stock is marked as indicative.

Orders sent during this time are not lost. They go into a queue and are resent automatically until the ERP receives them, and the buyer sees the status “recorded in the portal, awaiting transfer”. The administrator receives an alert from the first failed attempt. If a price has changed in the meantime, the order is held for checking instead of being accepted with old data.

Sales rep accounts and moving customers onto the portal

The sales rep has an account from which they see the customers in their portfolio and can order on behalf of any of them, at that company’s prices, from their phone, during the visit. The order carries their name, for commission records.

Getting people onto the portal does not happen by itself. It helps if sales reps place the first order together with the buyer and if the portal offers something the phone does not: an up-to-date balance, invoices to download, the order history.

  • Analysis: the pricing rules, the catalogue structure and the ways of getting at the data in the ERP.
  • Reading: catalogue, prices, stock and balances brought into the portal and compared with the ERP, line by line.
  • Writing: sending orders, tried out on a test environment of the ERP, if there is one.
  • Phased roll-out: first a few companies you are close to, then the rest, in groups.

Frequently asked questions

Can the portal work with any ERP?

With any software from which data can be read and into which an order can be entered automatically. We find out exactly what the ERP vendor allows before giving any estimate.

Is the stock shown the real stock?

It is the stock at the last synchronisation, whose time is shown on screen; the firm reservation is made by the ERP when it accepts the order. You can choose to show the exact quantity or just “in stock” and “to order”.

When is an ordinary online store enough?

When you have a small catalogue and almost identical prices for all buyers: a store with an extension for selling to businesses generally costs less and is easier to maintain. A custom portal is worth it when the pricing rules and the link to the ERP do not fit into such an extension.

This is a typical project description: it shows how we usually approach this kind of work and does not present a project carried out for a particular client. Every real project starts from your company’s situation, and the stages, timescales and price are agreed after the initial discussion.

Want a project like this?

Write us a few lines about what you want to build or what no longer works. We will reply with concrete steps and a quote with a price for each stage.

WhatsApp