Skip to content

ERP integration

Packing list from your ERP, load plan in the same response.

Your ERP sends the packing list as XML or JSON; StowCargo calculates the plan and returns it in the same response within 2–3 seconds. When the warehouse finishes loading, a signed webhook tells the ERP.

  1. 1

    Your ERP sends the packing list

    When an order is ready to ship, the ERP POSTs the packing list as StowCargo XML 1.0 or JSON with the same field names. The document number (ref) links the plan to the order.

  2. 2

    The plan comes back in the same response

    The engine places the load; the response holds the vehicle count, utilisation, loading length and every box's position in loading order. The plan lands in the site archive tagged ERP, where the team can open and edit it.

  3. 3

    The warehouse loads, the ERP is told

    The warehouse team loads step by step on a phone. When every vehicle is done, a signed webhook (yukleme.tamamlandi) goes to the ERP, which can issue the dispatch note right away.

Every ERP is different. Connect the way that fits yours.

StowCargo offers one standard door; you pick the way that fits your ERP. Start today with Excel, connect the API with your team, or let us build the integration for your ERP.

Day one

No-code start with an ERP export

Export the order or delivery note from your ERP as Excel or CSV and drop it into the workspace. Map the columns once and save them as a template; later files come in with one click.

  • Works with every ERP today
  • No software team needed
  • Import templates shared by the team
Your team

Direct connection through the API

Your IT team or ERP partner converts order lines to StowCargo XML or JSON and sends them; the plan comes back in the same response and a webhook reports when loading is done. Client code is generated from the OpenAPI definition.

  • OpenAPI 3.1, XSD schema, sample file
  • Same document number becomes a new version
  • Signed, queued webhooks
Turnkey

We build the integration for your ERP

Logo, Netsis, Mikro, SAP, Microsoft Dynamics, Oracle or a system built in-house: whatever your ERP is, we build the integration for you. We write the layer that joins order and delivery lines with the dimensions and weights on your item master, map the fields, verify with test submissions and take it live.

  • Tailored to any ERP or in-house software
  • Onboarding free with a yearly Business plan
  • Quote for larger or custom flows

When we build the integration

  1. 01
    Discovery

    Together we pin down your ERP, your shipping process and which document the plan starts from (order, delivery note, shipping order).

  2. 02
    Data

    We check that the item master of shipped products has carton dimensions, weight and units per carton, and list the gaps. Plan accuracy depends on this data.

  3. 03
    Mapping and connector

    We map ERP fields to StowCargo fields and set up the submission and writing the returned plan back to the ERP (plan link, vehicle count, loading status).

  4. 04
    Testing and go-live

    We run test submissions with your real orders, compare the results with the warehouse, then go live.

Field list for your ERP team

The minimum for a line is its size and quantity; weight is recommended for axle and payload checks. Field names match StowCargo XML 1.0, and JSON uses the same fields.

FieldStatusWhat for
boy · en · yukseklikRequiredOuter size of the carton or pallet (mm, cm, m or inches; unit once per document)
adetRequiredHow many cartons / pallets
agirlikRecommendedUnit weight (kg or lb): for axle load and payload checks
ad · kodRecommendedProduct name and item code: shown on the report, labels and warehouse screen
siparis · durakOptionalOrder number and delivery stop: loading order for multi-stop shipments
istiflenebilir · ustYuk · yonOptionalStacking and orientation rules: nothing on top, load limit on top, keep upright
refOptionalERP document number: if it arrives again it becomes a new version of the same plan

One request, one response

Field names are the same in XML and JSON, and they are Turkish. Placements in the response are in loading order: x from the front wall to the doors, y from the right wall, z from the floor, in millimetres. The figures in the example are a real engine result.

Request body and line item limit
8 MB · 5,000
Typical response time (calculation time selectable from 300 to 10,000 ms)
2–3 s
Requests per key; at most 2 concurrent plans per company
120 / min
A failed webhook is retried after 1 min, 5 min, 30 min, 2 h and 6 h
6 attempts
Request POST /api/erp/v1/planla
<cekiListesi ref="SIP-2026-0118" ad="Hamburg shipment">  <arac kod="tir-tenteli"/>  <kalem ad="Bathrobe pallet" boy="1200" en="800" adet="17"/>  <kalem ad="Towel carton" boy="600" en="400" adet="248"/>  <kalem ad="Bedding carton" boy="800" en="600" adet="99"/>  …</cekiListesi>
Response · 201
<plan ref="SIP-2026-0118" planSurumu="1" oncelik="bosluk">  <sonuc aracSayisi="1" yerlesen="414" toplam="414">    <yukleme arac="1" hacimDoluluk="0.912" yukBoyu="13200">      <yerlesim sira="1" x="0" y="0" z="0"/>      …

Endpoints

POST/api/erp/v1/planlaPlan a packing list, return the plan in the same response
GET/api/erp/v1/planlar/{id}Latest version of a plan and its warehouse loading status
GET/api/erp/v1/araclarVehicle codes and internal dimensions
GET/erp/openapi.jsonOpenAPI 3.1 definition (no key needed)
GET/xml/stowcargo-1.0.xsdXML schema (no key needed)

Webhooks: keep the ERP informed without polling

An admin sets a receiving address on the site; on the chosen events StowCargo POSTs signed JSON there. If a notification gets no 2xx within 10 seconds it waits in a queue and is retried; it survives a server restart.

plan.olusturulduA new plan entered the archive (saved on the site, sent by the ERP or copied)
plan.guncellendiA new version was saved (e.g. the warehouse corrected the plan by hand)
plan.silindiThe plan was deleted (can be restored within 30 days)
plan.geriAlindiA deleted plan was restored
yukleme.tamamlandiThe warehouse finished loading every vehicle in the plan on a phone
Notification body
{  "olay": "yukleme.tamamlandi",  "plan": { "ref": "SIP-2026-0118", "planSurumu": 1 }}
Signature check
const { t, v1 } = parse(headers["x-stowcargo-imza"]);if (Date.now() / 1000 - t > 300) return false;const sig = hmacSha256(key, `${t}.${rawBody}`);return timingSafeEqual(sig, v1);

Frequently asked questions

Every ERP is different; how does it integrate with ours?

StowCargo offers one standard door: the ERP API with XML or JSON. The ERP side joins order or delivery lines with the dimensions and weights on the item master and converts them to this format. Your own team can do this with the OpenAPI definition, or we build the integration for Logo, Netsis, Mikro, SAP, Dynamics, Oracle or your in-house software. For a start with no software work, an Excel export from the ERP is imported with a template.

Can you build the integration for us?

Yes. We write the connector for your ERP, map the fields, test with your real orders and take it live. Integration onboarding is free with a yearly Business plan; for larger or custom flows (several warehouses, special approval steps, extra fields written back to the ERP) we give a quote.

Which ERPs does it work with?

Any system that can send XML or JSON over HTTP: Logo, Netsis, Mikro, SAP, Dynamics, Oracle or your own software. No plug-in is needed; client code can be generated from the OpenAPI definition.

How does authentication work?

A company admin creates a key on the ERP integration page of the site; it is sent with every request in an Authorization: Bearer header. The key is shown only once when created; if lost, a new one is issued and the old one closed.

What happens when the same order is updated?

If the same document number (ref) arrives again, no new plan is opened; a new version is added to the same plan. planSurumu in the response says which version it is.

How do I verify that a webhook really came from StowCargo?

Each notification carries an X-StowCargo-Imza header: t=<unix seconds>,v1=HMAC-SHA256(signing key, "<t>.<raw body>"). Reject signatures older than 5 minutes; the same notification can arrive twice, so de-duplicate with X-StowCargo-Teslim.

Where is the data kept?

ERP keys and request logs are kept in a database separate from the site data: on StowCargo's own servers at stowcargo.com, or on your own server with an on-prem installation.

Which plan includes it?

The ERP API and webhooks are in the Business plan and on-prem. A yearly Business plan comes with +1 month and ERP integration onboarding free.

The ERP connection is in the Business plan.

Build the connection with your own team from the sample XML and the OpenAPI definition, or let us build it for your ERP. Integration onboarding is free with a yearly Business plan.

See pricing