MintSoft adapter - process maps
How every flow in the LataSys 3PL Connector runs when the MintSoft
adapter is installed. Transport: REST v1 over HTTPS. Auth: the
MintSoft username/password are exchanged for a 24-hour API key
(POST /api/Auth), cached ~23h and sent as the ms-apikey header;
a 401 re-authenticates once. Warehouses are numeric MintSoft ids.
Shared behaviour for every flow below:
- Triggers - the scheduler (per-instance cadences on the
Synchronisation tab), the Run-an-Operation wizard, per-record
buttons, or the inbound webhook.
- Logging - every run writes a Sync Log entry: full request and
response (URL, headers with credentials redacted, body), every Odoo
action taken, and every record touched. Errors are retryable from
the log entry.
- Watermarks - each flow stamps its last-run time on the instance;
the scheduler only fires when the cadence has elapsed.
- License - flows pause if the licensing service reports the
installation suspended for non-payment.
- Refusals - MintSoft reports refusals as HTTP 200 with a
Success: false ToolkitResult; the adapter raises these as
retryable errors with MintSoft's message.
1. Connection test
|
|
| Trigger |
Test Connection button (instance form) |
| Calls |
POST /api/Auth (if no cached key) then GET /api/Warehouse |
| Outcome |
Draft instance moves to Connected; failure logged with the full HTTP exchange |
2. Order push

|
|
| Trigger |
Cron (order cadence), wizard, auto-send on confirmation |
| Direction |
Odoo -> MintSoft |
| Data sent |
Recipient name, address, email, phone; SKUs, quantities, unit prices; courier service from the mappings; delivery/packing notes; IOSS number where configured; ClientId on multi-client accounts |
| Odoo records |
3PL Order binding (pending -> sent) with the integer OrderId |
| Failure |
Retryable Sync Log error; nothing partially written |
3. Status poll and despatch write-back

Statuses are account data at MintSoft: the raw table is fetched live
(cached ~10 minutes) and resolved through the instance's Status
Mappings.
4. Order amendment (Update at 3PL)
|
|
| Trigger |
Update at 3PL button / amend flow on an open order |
| Calls |
POST /api/Order/{id} (header), then a line diff keyed on SKU: PUT .../Items to add, POST .../Items/{ItemId} to change quantity, DELETE .../Items/{ItemId} to remove |
| Outcome |
MintSoft's copy matches the current Odoo order; per-line refusals surface individually |
5. Hold and release
|
|
| Hold |
GET /api/Order/{id}/MarkPackAndHold with a required ReleaseDate = today + the Hold Release After option (auto-release safety net) |
| Release |
GET /api/Order/{id}/MarkReleasePackAndHold - immediate |
6. Order cancellation
|
|
| Trigger |
Order cancelled in Odoo |
| Calls |
GET /api/Order/{id}/Cancel (a GET, per MintSoft's design) |
| Outcome |
Binding closed; if MintSoft refuses (already despatched), the order is flagged instead |
7. Inventory sync

8. Product match and push
|
|
| Match |
Fetch the MintSoft item master (/api/Product/List); match Odoo products by SKU, then barcode; create bindings |
| Push |
PUT /api/Product for new SKUs (SKU + Weight required; name, EAN, prices, batch/expiry flags, commodity code - no personal data). Weight is sent in Odoo's unit unconverted |
| Update |
POST /api/Product with the MintSoft id (resolved via LookupProductId) on changes |
9. Suppliers
|
|
| Push |
PUT /api/Product/Suppliers - name, code, contact and address of the vendor |
10. ASNs / GRNs

11. Returns

12. Carrier and status setup
|
|
| Fetch Carriers |
Pulls MintSoft's courier services into the Carrier Mappings (orders request the service name) |
| Status defaults |
Load Missing Defaults seeds MintSoft's stock status names; account-specific statuses are added on the instance |
13. Webhooks (per-order)
|
|
| Registration |
None at account level - MintSoft only supports per-order ConnectActions. With Per-Order Webhooks on, every pushed order carries callbacks (despatch / cancel / delivered) pointing at the instance's webhook URL |
| On event |
Payload logged; a targeted status check runs for the referenced order - polling remains the safety net |
MintSoft (Mintsoft) is a trademark of its respective owner; the name
is used solely to identify the service this module interoperates with.
Related Articles
MintSoft adapter - setup and reference
Everything you need to connect the LataSys 3PL Connector to MintSoft (Mintsoft OMS/WMS): prerequisites, connection setup, mappings, capabilities and provider-specific behaviour. What this adapter provides Flow Supported Order push and despatch ...
ShipHero adapter - process maps
How every flow in the LataSys 3PL Connector runs when the ShipHero adapter is installed. Transport: GraphQL over HTTPS. Auth: Bearer JWT with refresh - enter the developer-user email/password (the adapter obtains and refreshes tokens itself) or paste ...
ShipBob adapter - process maps
How every flow in the LataSys 3PL Connector runs when the ShipBob adapter is installed. Transport: ShipBob Developer API 2026-07 (REST/JSON) over HTTPS - api.shipbob.com, or sandbox-api.shipbob.com on sandbox instances. Auth: Personal Access Token as ...
Huboo adapter - process maps
How every flow in the LataSys 3PL Connector runs when the Huboo adapter is installed. Transport: Huboo public REST API v2 over HTTPS (https://api.huboo.uk/v2; a sandbox base URL, if issued during Huboo onboarding, goes in the instance's Base URL ...
Clarus WMS adapter - process maps
How every flow in the LataSys 3PL Connector runs when the Clarus WMS adapter is installed. Transport: hybrid - writes are JSON:API REST under /api/..., reads are GraphQL via POST /graphql, both on the tenant's own subdomain ...