InPost Lockers and Odoo
Integration Agency & Consultants
Intelligent Consulting
Detailed Solution Design
Smooth Integration
Visibility
Training
BigCommerce
Common failures
Parcel dimension and weight mismatch
Operational impact: If product records in Odoo lack accurate weight or dimension data, shipment requests to the InPost API will fail during label generation. This stops the fulfilment team from processing the Sales Order, forcing them to manually investigate SKUs and correct data. At scale, this leads to significant dispatch delays, missed SLAs, and a growing backlog of unfulfilled orders requiring manual intervention.
Prevention / Action: Odoo must be the single source of truth for all product dimensions and weights. Before calling the InPost API, the integration should validate that all items in a shipment have the required data. Orders with missing attributes should be automatically routed to an exception queue in Odoo, allowing an operations or data team to resolve the issue without causing repeated API failures.
InPost selected for oversized items
Operational impact: When a customer selects a locker for an order containing SKUs that exceed InPost’s maximum parcel dimensions, the problem is discovered in the warehouse. The fulfilment team cannot generate a valid label from Odoo because the consolidated package is too large. This forces the customer experience team to contact the customer to arrange a new delivery method, which delays the order and can incur unforeseen shipping costs.
Prevention / Action: The primary control is to filter shipping methods on the ecommerce storefront based on basket contents. As a secondary check, the integration logic within Odoo should recalculate total order dimensions and weight before creating a shipment. If the consolidated package exceeds InPost's limits, the order should be automatically placed on hold for manual review, preventing the failure at the point of dispatch.
Missing or invalid customer phone numbers
Operational impact: The InPost API requires a valid mobile number to send notifications and access codes to the customer. If the phone number on the customer's delivery record in Odoo is missing, invalid, or a landline, the API call to create the shipment will fail. This blocks the order from being dispatched, requiring the customer service team to manually chase the customer for correct information and delaying the entire order-to-dispatch process.
Prevention / Action: The integration should include a pre-flight check to validate the customer phone number on the delivery address before attempting to create an InPost shipment. This check should confirm the number exists and matches a valid mobile format. If validation fails, the Sales Order should be assigned a status in Odoo that routes it to a CX queue for correction, preventing API errors and keeping the fulfilment workflow clear.
Frequently asked questions
What happens if a customer chooses an InPost Locker for a product that is too large or heavy?
This is a frequent cause of fulfilment failure, as a shipping label cannot be generated. A properly configured integration uses the weight and dimension data from the Odoo Item record to filter shipping options at checkout, preventing InPost from being selectable for oversized SKUs. Without this, the packing team only discovers the error when the label fails to print, requiring manual customer contact to arrange a new delivery method.
How does Odoo handle an InPost Locker ID that isn't a standard shipping address?
Odoo must be set up to recognise the InPost 'Point of Delivery' ID as a valid shipping destination, not an address error. The integration maps this locker ID to a custom field on the Odoo Sales Order, ensuring it passes to InPost correctly during label generation. If not, Odoo's standard address validation logic can block the order from entering the fulfilment process, causing significant delays.
How do you ensure InPost uses the correct customer phone number for delivery notifications?
The integration must be configured to pull the customer's mobile number from the correct field on the Odoo Sales Order for every shipment. A common failure occurs if this field is empty or contains a landline, as the InPost API will reject the request to create a shipping label. This stops the Item Fulfilment from being processed and requires a member of staff to manually find the right number and update the order in Odoo.
At what point in the process is the InPost shipping label generated from Odoo?
As Odoo is the master for fulfilment, the InPost label is generally created after a warehouse operative has picked and validated the stock against the Sales Order. The integration then sends the shipment details and locker ID to the InPost API to generate the label. The resulting tracking number is then written back to the Item Fulfilment record in Odoo.