InPost Lockers and Odoo

Integration Agency & Consultants

AI Powered integration with expert operators
Cogent2’s operators use AI-powered delivery to connect InPost Lockers with Odoo, responding to rising carrier costs and customer demand for local pickup. We ensure accurate locker data flows into Odoo for label printing, removing the manual address fixes that slow down the warehouse. This improves dispatch speed and accuracy.
CULT
CASTORE
LOUNGE
GREEN PEOPLE
TATTY DEVINE
OLIVER BONAS
Intelligent Consulting
Cogent2 connects InPost Lockers with Odoo, ensuring your Smart Lockers and ERP systems work efficiently. Our consulting services, including system audits, identify inefficiencies and integration gaps, allowing your team to take action. This ensures your tech ecosystems, including Odoo and InPost Lockers, run smoothly. Our audits provide insights into your ERP and Smart Lockers, helping optimise workflows and improve performance. By addressing these areas, we help deliver a great customer experience, ensuring your technology supports your business effectively.
Detailed Solution Design
InPost Lockers and Odoo integration design prioritises Odoo as the authoritative source for order fulfilment and label generation. A key design decision involves how locker IDs are mapped. We typically handle the InPost Point of Delivery as a specific shipping attribute in Odoo to prevent standard address validation logic from rejecting the order. We prioritise grouping locker shipments for manifest creation to ensure carrier compliance at the point of packing. The primary trade-off involves locker availability data. While high-frequency syncs ensure accuracy, they increase API load. In many setups, we use a defined sync interval to maintain system performance. This design ensures the warehouse team works from validated records while finance reconciles shipping costs against accurate data, reducing manual postcode corrections in the label generator.
Smooth Integration
The integration creates a structured link between Odoo fulfilment records and the InPost API. When a delivery is validated in Odoo, the system pushes shipment data, including the unique Locker ID, to InPost. Odoo acts as the master for parcel dimensions, which must align with InPost parcel sizes to ensure labels are generated. Once the label is issued, tracking data syncs back to Odoo to trigger customer notifications. The workflow incorporates validation to flag orders missing the mandatory mobile number, preventing API errors before the pick is even packed.
Visibility
Standard Odoo dashboards often miss the details of locker delivery failures. Visibility requires monitoring the connection between Odoo delivery orders and the InPost API to prevent hidden backlogs. We surface issues like locker capacity rejections or collection updates that have not flowed back to Odoo. If an InPost manifest cannot be completed due to a data error, the system flags the specific record involved. This allows operations to fix the individual issue without stalling the entire shipping run, ensuring that locker availability issues or data mismatches do not stop the warehouse.
Training
Handover focuses on the warehouse, ecommerce, and customer service teams who manage the daily InPost and Odoo workflow. We define clear ownership: warehouse teams typically own label generation and manifest verification within Odoo, while CX teams handle locker selection queries or delivery exceptions. Training covers how to identify data mismatches, such as weight or dimension errors, before they impact shipping. We provide operational documentation explaining how to read integration alerts and who is responsible for resolving specific delivery errors. This reference is written for the people running the business, not for IT, ensuring teams can troubleshoot locker delivery issues as part of their standard routine.
Support
Post-launch support focuses on maintaining the data flow between Odoo and the InPost network. We monitor for common failures, such as those caused by carrier timeouts or incorrect customer mobile data, and help your team resolve them before they affect shipping schedules. We provide clear escalation paths for handling warehouse manifest errors to ensure that daily collections are not delayed. Our ongoing oversight helps you prioritise fixes and manage locker logic as your shipping volumes grow and carrier requirements change.
Shopify
BigCommerce
Magento

Integration operating model

In this model, Odoo is the master for order management and warehouse operations. When a customer selects an InPost locker, the specific locker ID is recorded in Odoo. The warehouse team processes the pick, and the integration triggers a label request from InPost using the stored data. Once the label and tracking ID are generated, Odoo updates the order status and prepares the manifest. This allows the customer service team to see the parcel status directly in Odoo, while the warehouse maintains a consistent workflow without switching between different shipping platforms.

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.

Get Started

We would love to hear about your brand and project