Skip to main content
Omnilinker can send an order to your ERP as a customer order, with a reservation for its products, so the stock your ERP shows is already spoken for. The ERP Sync agent places the order in your Wapro database; Omnilinker never connects to it. Each order is sent once: if a send is repeated, the ERP finds the order it already has and creates nothing twice. On the order card and in the Orders list, the ERP’s name is your connection’s name, for example Wapro. This page writes ‹ERP› for it. With more than one connection, the texts say “the ERP” until the order’s source decides which connection it goes to.
Update the agent first. An agent older than the one that can place orders makes the connection’s Orders tab say ERP Sync needs an update, and nothing is sent. See Install the agent.

Before you start

Open ERP Integration > Connections, click Details on the connection and open its Orders tab. You can change the order settings with Edit ERP Connection, and the question and each source’s choice with Manage sources (Ordering); without them you see the tab read-only. The Orders to ‹connection› card opens with What orders need, a checklist. Each line that is not ready has a button that takes you to the fix: The card’s heading says where you stand: Ready for orders, Connection switched off, No ERP Sync connected, ERP Sync needs an update, No ERP user for writes, No warehouse mapped, No products linked or Settings incomplete. The ERP user for writes is the Wapro user Omnilinker acts as when it writes. Set it on the connection’s page; see Monitoring. The SQL login needs a few more rights for orders than for reading: see Requirements and Wapro.

Order settings

Below the checklist, Order settings holds what an ERP order carries. Click Save. If someone saved the settings meanwhile, Omnilinker reloads them and asks you to make your change again.

Choose who imports orders today

Many Wapro installations already import shop and Allegro orders through Wapro’s own tools. If both Wapro and Omnilinker brought in the same order, you would have it twice. So Omnilinker asks first, once per connection: Who imports orders into ‹connection› today?
  • Nobody, we type them in: Omnilinker sends the orders.
  • Another system already imports them: you then choose Which sources does the other system import? and click Leave them to the other system. Omnilinker never sends those sources’ orders; they show Managed by another system.
The card shows who answered and when. If the connection’s database holds shop or Allegro orders that another system imported during the last 30 days, the card warns you and tells you to leave those sources to the other system.

Choose how each source sends

After the question, the card lists your order sources in a table with Source, Warehouse and Into the ERP. Every source starts as Not sent: nothing leaves Omnilinker until someone chooses how a source sends. For each source pick one of: Each source sends to one connection. If it already sends to another, the row says Sends to … and asks you to confirm the move. To take a source back from another system, click Take over from the other system and confirm: switch the other system’s order import off first, because only orders confirmed from now on are sent automatically. Send older ones by hand or in bulk. The same line, Into the ERP, is on each source’s card under Sales > Order sources; see Order statuses, sources and extra fields. The Warehouse column shows the source’s warehouse, whether it is mapped to an ERP warehouse and who manages its stock. All the product lines of an order come from this one warehouse. Above the table, ‹n› orders not in ‹ERP› yet and ‹n› orders failed to reach ‹ERP› open the Orders list filtered to them.

Send an order

An order can be sent when it is confirmed, not cancelled, not archived, not anonymized, and its source sends to an ERP.
  • Automatically, as the source’s choice above says.
  • By hand: open the order, find the ERP section (ERP in the menu on the left) and click Send to ‹ERP› now. You need Send orders to the ERP.
  • In bulk: tick orders on the Orders list and click Send to ‹ERP›. Each order goes to the connection its source sends to, and one that cannot be sent is counted as failed. Up to 50 orders are sent at once; with more, the send runs in the background and a bar shows the progress. See Bulk actions.
  • From an automation rule: the step Send to the ERP. See Create and edit rules.
Sending does not wait for the ERP. The order shows Sending to ‹ERP› while the agent picks it up, and then In ‹ERP› or In ‹ERP› as … with Wapro’s order number.

What an ERP order contains

  • Products and prices. Each product line goes to the Wapro article it is linked to, at the gross price from Omnilinker. The VAT rate comes from the Wapro article, not from Omnilinker, and Wapro works out the net.
  • Delivery. The shipping cost is one line on the Delivery service article code from the settings. Without that code the line is left out and the shipping amount does not reach Wapro, with no warning anywhere, so set the code before you send orders that have a shipping cost.
  • Numbers. Omnilinker’s order number goes into the ERP’s customer order number, cut to 30 characters (with a warning in the receipt). The shop’s or Allegro’s order number and the buyer’s login go into the free field you chose, and into a line of the order’s remarks.
  • A reference that makes a retry safe. Each send carries a reference starting with OMNI- in the order’s internet order id. Before writing, the agent looks for it, so a repeated send finds the order and creates nothing again.
  • The delivery address. It becomes a delivery place of its own on the order’s customer, with the parcel locker’s point code for a pickup point. A matching place is reused, and the customer’s default delivery place never changes. If Wapro does not know the delivery country, the address goes into the remarks, with a warning in the receipt.
  • The reservation. With Book a reservation on, the products are reserved in the order’s warehouse. If Wapro can reserve only part of it, the card says Partly reserved in ‹ERP›: x of y and you get a notification; the rest is not reserved until the stock arrives.
  • The customer. A real named customer, found, created or chosen once. See Customers in your ERP.
  • Warnings. An order that went through with a caveat (a number cut short, an address moved to the remarks, an exchange-rate download that failed) is not marked on the order. The warnings are in the receipt of the command that placed it: ERP Integration > Commands, open the command, section Receipt (you need the ERP commands permission).

Currencies

An order in euros, dollars or another currency is sent in its own currency, at the rate the ERP holds. Omnilinker does not convert it.
  • The rate. Wapro uses the National Bank of Poland (NBP) table it holds for the order’s date.
  • Download first. With Download NBP exchange rates in ‹connection› before a foreign-currency order on (the default), the agent asks Wapro to fetch the NBP tables just before it places the order. If the download fails, the order is still sent, with a warning in the receipt. The download needs rights on the SQL Server, and it needs the server to run Wapro’s download component and to reach the NBP site; see Wapro.
  • A table older than 7 days is never used. If the newest table is 1 to 7 days older than the order date, the order is sent with a warning in the receipt naming both dates. If it is older, or there is none, the order waits: the card says Not in ‹ERP› yet and gives the reason, for example No EUR rate in Wapro for 2026-10-19. You get a notification; add the rate in Wapro (or let the next download bring it), and the order is sent again by itself.

Cross-border VAT (OSS)

A consumer order delivered to another EU country is sent with that country’s VAT rate, taken from your ERP, so the sale is booked in your OSS (One Stop Shop) register.
  • Your ERP must be set up for it. If it is not, the order waits and the card gives the reason Cross-border VAT is not set up in ‹ERP›, and you get a notification. Set it up in Wapro (the cross-border transactions switch and the destination country’s rates), and the order is sent again by itself.
  • For now only goods at Poland’s standard 23% rate go this way; an order with other lines, for example reduced-rate goods, is declined by Wapro and waits.
  • Such an order always goes to a named customer in the destination country, never to the shared retail customer. If the customer Omnilinker created for the buyer is in another country, the order waits until you choose the customer (the card offers Choose the ‹ERP› customer). Omnilinker does not add a second customer for the same buyer: change the customer’s country in the ERP, then choose that customer again. A customer that was only found by the Allegro buyer id is not kept this way: it is replaced by a new customer in the destination country.

What is not sent yet

An order with any of these is held, and its card names the reason:
  • Lines the ERP cannot take: a line that is not a catalog product (a custom line), a discount line, or an order without any product line.
  • Lines from more than one warehouse. An ERP order comes from one warehouse. Move the lines to one warehouse, or enter the order in the ERP by hand.
  • Too many lines: more than 150.
  • Not supported yet: intra-EU / export sale: a buyer with an EU VAT number, a buyer with a tax ID (a NIP included) whose order is delivered outside Poland, or any delivery outside the EU. Enter it in the ERP by hand and mark it (see below).
  • Warehouse not mapped, Products not linked to the ERP, ERP connection not ready, Order export settings incomplete: fix what the checklist above shows.
An order held for a reason that something outside it can lift, like a missing link or an agent that is offline, is checked again every 15 minutes. After 7 days of waiting it stops waiting and shows Not sent to ‹ERP›; it is then never sent automatically again, and you send it with Send again. An order that waits for a person, such as choosing the customer, a source that sends later, a source you handed over to another system, or a sale Omnilinker does not send yet, waits for as long as it takes. So does an order you sent again after No confirmation from ‹ERP›: the first attempt may be in the ERP, so it keeps waiting instead of showing Not sent to ‹ERP›.

While the order is in the ERP

Once the order is on its way to the ERP or in it, Omnilinker refuses to add, change or remove its products (a product’s warehouse included), and to delete, merge or split it. The message says “Order … is in the ERP; change it there, or cancel it.” The card’s ERP section says the same. Buyer details, addresses, notes, payments and the status can still be edited in Omnilinker, but the ERP is not told: change buyer details and addresses in Wapro as well.
  • Cancel. Cancelling the order in Omnilinker cancels it in Wapro and releases its reservation. While the cancel waits for the agent the order shows Cancelling in ‹ERP›, then Cancelled in ‹ERP›.
  • Not cancelled. If Wapro or the agent refuses the cancel, the card says Not cancelled in ‹ERP›: cancel order … there by hand, you get a notification, and Try the cancel again repeats it (you need Change status).
  • Cancel and send again. On an order that is in the ERP, this cancels the ERP order and sends the order again as a new one. Use it, for example, to book a reservation for an order that went without one.
  • Earlier ERP orders. When an order has been sent more than once, the card lists Earlier ‹ERP› orders with their numbers and whether each is current, cancelled, removed or replaced.

When something goes wrong

The state in the card’s heading tells you where the order stands: For an order that waits or whose send failed, you can click Entered in ‹ERP› by hand when you entered the order in the ERP yourself. Omnilinker then stops sending it, shows Entered in ‹ERP› by hand, and does not carry the order’s later changes or its cancelling to the ERP. You need Mark orders as entered in the ERP by hand; the permission is separate because it tells Omnilinker an order exists in the ERP when it may not.

Notifications

Omnilinker tells you when an order needs a person: it was not sent, there is no confirmation, it is partly reserved, an exchange rate or the cross-border VAT is missing, a customer must be chosen, the buyer’s data or tax ID is wrong, its lines come from more than one warehouse, or a cancel did not go through. The notification goes to the person who asked for the send, otherwise the order’s creator, otherwise the administrators, and it clears itself when the order is in. See Inbox and, to react automatically, the automation trigger Sending to the ERP fails in Create and edit rules.

Invoices

The invoice for a sale is issued in the ERP. Pick one place per order source to issue the sale document: an Omnilinker receipt, or the ERP’s invoice, not both. The ERP’s status and the invoice and KSeF numbers will show on the order card in the next release; until then the card shows only where the order stands.

Permissions

See Permissions reference.

Customers in your ERP

How the buyer becomes a customer in Wapro.

Orders

The order card, filters and bulk actions.

Wapro

What the connector writes, and the SQL rights it needs.

Troubleshooting

Fix an order that does not reach Wapro.