The REST API, and the connectors built on top of it. Every account includes a sandbox, so you can integrate end to end before a single real parcel moves.
Our Magento module sends your paid orders to the warehouse and puts the tracking, the shipment and your stock figures back into Magento. It runs on Magento's own scheduled tasks, so there is nothing extra to host or pay for. What it means for your shop.
| Magento | Adobe Commerce or Open Source, 2.4.4 or newer |
| PHP | 8.1 or newer |
| One thing to check | Magento's scheduled tasks (its "cron") must be running. Everything here depends on them. Your developer or host will know |
This part is a job for whoever looks after your Magento site.
Download the module from the API & Integrations page of your
Waypoint account — open the account menu at the top right of the portal to find it. Unzip it into your
site's app/code folder. It contains the right folders already, so you should end
up with app/code/Waypoint3PL/Connector. Then, from the site's root:
bin/magento module:enable Waypoint3PL_Connector bin/magento setup:upgrade bin/magento setup:di:compile bin/magento cache:flush
To update it later, download it again, replace the same folder and run those four lines again.
Everything is under Stores → Configuration → Waypoint 3PL → Fulfilment Connector.
Sandbox orders are never picked or posted, so you can try the whole thing without a parcel moving.
| Which way | What | How often |
|---|---|---|
| Magento → Waypoint | Paid orders, including which delivery option the customer chose and what the parcel weighs | Every minute |
| Magento → Waypoint | Cancellations, so we stop picking | Straight away |
| Waypoint → Magento | The courier and tracking number, which sends your customer their shipping email | Every 5 minutes |
| Waypoint → Magento | The order marked complete when it arrives, or refunded if it comes back | Every 5 minutes |
| Waypoint → Magento | Stock figures, set to what you can actually sell | Twice a day, or more if you want |
| Magento → Waypoint | Your product list | A button you press once when setting up |
If the connection hiccups and the same order gets sent to us twice, we notice and still only pick it once.
| Push Orders With Status | Which orders we should start picking. Set to Processing to begin with, which in Magento means paid. Unpaid orders are not sent. |
| Ship Policy | Whether an order goes out as one parcel, or items leave separately as they are ready. You can also decide it per product. |
| Abandon Sync If It Would Zero… | A safety brake on the stock update. If one run would set more than this share of your products to zero (20% to begin with), we stop and change nothing — because that usually means something is wrong, not that your shop sold out. |
| Push Orders Placed Since | If you have been disconnected for a while, this is how far back we look when catching up. |
| In Waypoint | In Magento |
|---|---|
| Being picked or packed | Nothing changes. These are our stages, not news for your customer |
| Dispatched | A shipment is created with the courier and tracking number, which sends your customer their shipping email |
| Delivered | The order is marked Complete, once every parcel has arrived |
| Some of it came back | A note saying what came back and what state it is in |
| All of it came back | The same, for the whole order |
| Cancelled | The order is cancelled, or flagged for you to look at if only part of it was |
Cancel in Magento and we stop picking, before Magento records it. If the parcel has already left, the cancellation is refused and you are told which courier has it and the tracking number — so Magento never tells a customer an order is cancelled while it is on a van. Raise a return instead.
Putting a cancelled order back to Processing afterwards does not start it again. Once we cancel, the stock we were holding goes back on sale and may already have gone to someone else. Place a new order for anything still to be sent.
Every order we receive gets a comment on it in Magento, and everything the module does is written to
var/log/waypoint3pl.log. If an order did not reach us, Force Push Orders sends anything
we missed. Check Magento's scheduled tasks are running first — that is the usual answer.
Your keys, and the connector downloads, are on the API & Integrations page of your account. Not signed up yet? Tell us what you ship and we will get you set up.