Poland Allegro Connector
Sync Allegro orders, stock and offers into Odoo through the official Allegro REST API — with your own seller token (BYOK).
One app for your whole Allegro back office
This connector links your Odoo instance directly to the Allegro REST API (api.allegro.pl). It pulls your marketplace orders into Odoo as sale orders, matches buyers and products, keeps your offer stock and prices in sync, and pushes shipment tracking and fulfillment status back to Allegro — all without leaving Odoo. A sandbox host is configurable for safe testing.
Order import
Cron and on-demand pull of Allegro checkout forms, paged through
the /order/checkout-forms endpoint with status and
update-window filtering. Each order maps to an Odoo sale order
with buyer, delivery address and order lines resolved by external
SKU, internal reference, barcode or Allegro offer id.
Stock & price sync
Push available quantity and sales price to Allegro per offer using
the command-pattern endpoints
(offer-quantity-change-commands and
offer-price-change-commands). Manual buttons, bulk
list actions, a bulk-sync wizard and hourly crons are included.
Fulfillment & shipments
Mark orders PROCESSING, register a shipment with a carrier name and
waybill (/shipments), and flip the order to SENT —
the Allegro fulfillment status flow, driven from the Odoo order
header.
Polish tax ID validation
Validate the buyer / invoice NIP, REGON and PESEL carried on Allegro orders with the official Polish control-digit algorithms before they are written to Odoo, and reuse repeat buyers.
Feature overview
| Capability | Allegro REST resource |
|---|---|
| List & import orders | GET /order/checkout-forms |
| Order detail with line items | GET /order/checkout-forms/{id} |
| Set fulfillment status | PUT /order/checkout-forms/{id}/fulfillment |
| Register shipment / waybill | POST /order/checkout-forms/{id}/shipments |
| List seller offers | GET /sale/offers |
| Read one offer | GET /sale/product-offers/{offerId} |
| Push price | PUT /sale/offer-price-change-commands/{commandId} |
| Push stock | PUT /sale/offer-quantity-change-commands/{commandId} |
| Refresh access token (manual & automatic on 401) | OAuth2 refresh_token grant |
Bring your own key (BYOK)
You authenticate with the OAuth2 access token issued to your own Allegro application. The connector stores your client id, client secret and refresh token so it can mint a fresh access token on demand — and, because Allegro access tokens expire every 12 hours, it also refreshes the token automatically: whenever the API answers a scheduled sync with HTTP 401 the connector exchanges your refresh token for a new access token, stores the rotated pair and replays the call, so the background crons keep running without manual re-authentication. Nothing is routed through a third party — every call goes straight from your Odoo server to the Allegro endpoint you configure. This module is not an Allegro-accredited integrator; it transmits using your own seller credentials only.
Resilience & auditing
- Automatic retry with exponential backoff on 5xx for idempotent verbs.
- 30-second request timeouts and structured logging.
- Unified API call log: operation, HTTP method, status, duration and error excerpt.
- Vendor media type
application/vnd.allegro.public.v1+jsonpinned to the public v1 surface. - Duplicate-order protection via a unique Allegro Checkout ID constraint.
Requirements
- Odoo 18.0 or 19.0 (Community or Enterprise).
- An active Allegro seller account and your own Allegro application (OAuth2 token).
- The Python
requestslibrary (bundled with Odoo).
Screenshots
Api Log
Bulk Offer Sync
Settings
Update date: 2026-07-02