External Inventory
External Inventory shows item availability from external warehouses, logistics provider systems, and vendors in Business Central.
The module imports data into Business Central so users can check quantity, lot number, and pallet number while working with a document, without signing in to another system.
❓ How it works
An external system sends entries through the standard OData v4 interface. Entries are available on the N24I | External Inventory page.
When an entry contains an Item No. matching the item in a document, its data is also available in Multi-Company Inventory results. The result includes the Vendor, External Item No., Quantity, Lot No., and Pallet No..
Use the module for inventory in external warehouses, logistics provider systems, and at vendors. It also supports dropshipments, where the vendor ships directly to the customer.
🔗 Integration URL
https://api.businesscentral.dynamics.com/v2.0/{tenantId}/{environment}/api/nav24/advancedInventory/v1.0/companies({companyId})/externalInventoryEntries
| Parameter | Value |
|---|---|
| Publisher | nav24 |
| Group | advancedInventory |
| Version | v1.0 |
| Entity | externalInventoryEntries |
| OData Key | systemId |
📋 Entry fields
| Field | Type | Description |
|---|---|---|
systemId |
GUID | Entry identifier used as the OData key; read-only. |
entryNo |
Integer | Entry number; assigned automatically and read-only. |
vendorNo |
Code[20] | Vendor number; it does not need to exist in Business Central. |
vendorName |
Text[100] | Vendor name. |
itemNo |
Code[20] | Item number; it does not need to exist in Business Central. |
itemDescription |
Text[250] | Item description. |
externalItemNo |
Code[50] | Vendor's external item number. |
lotNo |
Code[50] | Vendor's lot number. |
palletNo |
Code[50] | Vendor's pallet number. |
quantity |
Decimal | Quantity available at the vendor. |
Note
If you provide a Lot No. but no Item No., Business Central fills in the item when lot information for that lot is created or changed.
⚡ Supported operations
| Operation | HTTP Method | Description |
|---|---|---|
| Read all entries | GET |
Returns a list of entries. |
| Read single entry | GET .../({systemId}) |
Returns one entry. |
| Add entry | POST |
Creates a new entry. |
| Update entry | PATCH .../({systemId}) |
Updates an existing entry. |
| Delete entry | DELETE .../({systemId}) |
Deletes an entry. |
For PATCH and DELETE operations, use the If-Match header with the @odata.etag value returned by the API.
💡 Examples and scenarios
Scenario: Inventory in an external warehouse
Need: A company outsources warehouse operations to an external warehouse. It creates orders in Business Central, but current inventory, storage location, and pallet number are available only in the operator's system.
Configuration:
- Prepare an integration that periodically retrieves data from the operator's system and sends it to Business Central.
- Send at least Item No. and Quantity for each entry, together with Lot No. and Pallet No. when available.
- Open a document line for the item and review the results in the N24I | MultiCompany Items section.
Result: The user can see the current quantity in the external warehouse while working with a document, without signing in to the operator's system or contacting the warehouse to confirm availability.
🛡️ Operation rules
- Fields
vendorNoanditemNoare not validated against Business Central master data, so vendors can use their own identifiers. - You can send
vendorNameanditemDescription. If either is empty and the relevantvendorNooritemNoexists in Business Central, the system fills in the vendor name or item description. - Field
entryNois assigned automatically and is read-only. UsesystemIdto address a single entry.