How to Sync Dolibarr with eBay: A Complete Integration Guide
The pain: manual multi-region data entry
You sell on eBay. Your ERP is Dolibarr. Every day the same workflow plays out: you update a price in Dolibarr, then open eBay's Seller Hub and re-enter the change listing by listing. When an order comes in on eBay, you re-type it into Dolibarr. You create the invoice manually. You go back to eBay to mark the order as shipped and enter the tracking number.
If you sell on more than one eBay site — for example eBay Germany, eBay France, and eBay UK — the situation gets worse. Each region has its own interface, its own currency, and its own policies. Updating a price on three sites takes three times as long. Importing orders from three countries into Dolibarr by hand is a guaranteed source of mistakes.
This process takes hours every week. Data-entry errors stack up: a mistyped price, a missed order, a tracking number entered backwards. The bigger your catalog gets, the worse it gets. At 50 SKUs it's tedious. At 500 SKUs it's a full-time job. And every new variation, promo, or fresh listing means starting over.
The real cost isn't just the time lost — it's the risk. A wrong price live on eBay for 24 hours can generate at-a-loss orders. A forgotten invoice misaligns your books. A missing tracking number triggers Item Not Received claims, and eBay is strict on tracking-upload deadlines.
What makes eBay different from other marketplaces
If you've already integrated Shopify, WooCommerce, or PrestaShop with Dolibarr, there are a few eBay-specific things you should know up front:
OAuth instead of an API key. With Shopify or WooCommerce, you generate an API key and paste it into the Dolibarr module. eBay works differently: you click a Connect to eBay button, you're redirected to eBay's consent page, you sign in with your regular eBay seller account, and that's it. No keys to copy-paste, no eBay developer account to create. ERPkit handles all the developer-side credentials on its own infrastructure.
One sync config per region. eBay treats each regional site (eBay.de, eBay.fr, eBay.co.uk, etc.) as a separate universe with its own currency and policies. With ERPkit, you create one sync configuration per region. You can reuse the same eBay seller account to connect across multiple regions — each configuration maintains its own SKU / price / stock link. This also lets you have different prices per region (EUR for DE/FR/IT/ES, GBP for UK, etc.).
Two identifiers, one per phase. ERPkit uses two separate eBay identifiers, and getting them mixed up is the most common source of misconfiguration. Phase 1 (push) uses the eBay listing ID — you enter it in the ebay_{region}_listing_id extrafield on each Dolibarr product, and ERPkit calls eBay's Inventory API to update price and stock by that ID. Phase 2 (import) uses the SKU — when an eBay order arrives, ERPkit reads each line's SKU and looks up a Dolibarr product where ref equals that SKU (case-sensitive). If the SKU on your eBay listing doesn't match your Dolibarr ref, Phase 1 still pushes price/stock fine, but eBay order lines land in Dolibarr as free text without a product link. The baseline rule: list the item on eBay with its SKU equal to your Dolibarr ref, then enter the listing ID in the extrafield — both phases work end-to-end.
Business Policies are required. ERPkit uses eBay's Inventory API, which requires your seller account to be on Business Policies (payment, shipping, return). If they're not enabled, the sync stops cleanly on the next cycle with a not_api_compatible warning. It's a one-time setup, done in minutes from the eBay Seller Hub.
No webhooks — eBay is polled. ERPkit doesn't receive push notifications from eBay. On each cycle (every 3 to 8 hours depending on your plan), ERPkit polls eBay to fetch new orders and push price changes. This matches ERPkit's general philosophy: no fragile webhook dependencies on third parties.
Setting up ERPkit in 6 steps
Step 1: Enable Business Policies on eBay
Sign in to eBay Seller Hub Business Policies. If you haven't already, follow the prompts to opt in to Business Policies — it's free. Create at least one Payment, Shipping, and Return policy. eBay walks you through this on your first opt-in.
Without this step, eBay's Inventory API isn't accessible and the ERPkit sync stops at the first cycle with a clear warning. Do this before continuing.
Step 2: Install the free Dolibarr module
Download the ERPkit module from DoliStore (free, open source GPL v3). In Dolibarr, go to Home > Setup > Modules/Applications and enable the ERPkit module. It adds sync fields to your product forms and a config page for your marketplaces.
For eBay specifically — and unlike the other marketplaces — you don't enter any credentials in the Dolibarr module. eBay uses OAuth, so the module only needs to know which eBay region(s) you'll sync so it can register the right extrafields on your products.
Open the ERPkit module config page in Dolibarr and tick the eBay region(s) you sell on (for example eBay Germany). The module then creates three extrafields per region: ebay_de_listing_id, ebay_de_price, ebay_de_compare_price for eBay Germany, and so on. If you sell across three regions, you get three sets of three fields.
Step 3: Create a free ERPkit account
Head to app.erpkit.app and create your account. The free Solo plan is also available for eBay — you can test the integration on one region before subscribing to a paid plan.
Step 4: Create the eBay sync config and connect via OAuth
In ERPkit's plugin catalog, open the Connect to eBay card. You'll see the 10 available regions (DE, FR, GB, IT, ES, US, NL, BE, AT, CH). Pick the one that matches your eBay sales region. Subscribe to the plan that fits your needs (free Solo plan available) and then click Create Sync Config.
In the setup wizard, enter your Dolibarr URL and Dolibarr API key (the Dolibarr side is identical to Shopify, WooCommerce, or PrestaShop). Then, on the sync-config detail page, you'll find an eBay Connection panel with a Connect to eBay button.
Click that button. You're redirected to eBay's consent page in the same browser tab. Sign in with your eBay seller account, agree to the requested permissions (read inventory, read orders, write fulfillments, read Business Policies), and click Agree. eBay redirects your browser back to ERPkit, the panel turns green with your eBay seller username, and the connection is live.
What ERPkit just stored: an encrypted refresh token (AES-256-GCM) with a 1.5-year lifetime. eBay does not automatically rotate this token, so ERPkit shows a banner 14 days before expiry asking you to reconnect.
Step 5: Map your products (auto-match by SKU)
ERPkit can automatically link your Dolibarr products to your eBay listings by comparing SKUs. Open the Product Mapping tab, run the auto-match, and review the proposed associations. ERPkit then populates the ebay_{region}_listing_id field (for example ebay_de_listing_id) with the matching eBay listing ID.
For edge cases, you can also enter the eBay listing ID by hand in the product extrafield in Dolibarr. Two things to keep aligned: the listing ID in the ebay_{region}_listing_id extrafield (Phase 1 push), and the SKU on the eBay listing matching your Dolibarr ref (Phase 2 import). Easiest workflow: from the eBay listing edit page, set the SKU to your Dolibarr ref, then come back and enter the listing ID in the Dolibarr extrafield.
Step 6: Run your first sync
Everything's ready. From the sync-config detail page, kick off the sync. ERPkit pushes prices, compare-at prices (where Strikethrough Pricing is eligible), weight, and barcode from Dolibarr to eBay. Only changed products are sent thanks to smart delta sync — subsequent syncs are near-instant.
On the first cycle, ERPkit also runs two pre-flight checks: eBay daily API quota (5,000 calls/day by default) and Business Policies. If both pass, the cycle continues. If not, you see an explicit warning in the sync log, you fix it, and the next cycle picks back up automatically.
What's next?
Once product sync is in place, ERPkit also handles:
- eBay order import — paid eBay orders flow automatically into Dolibarr, with customer matching by email and product linking by SKU. You can pick which eBay statuses (PAID, PENDING, FAILED, etc.) are imported from the Order Statuses tab.
- Invoice generation — Dolibarr invoices are created, validated, and marked paid automatically from imported eBay orders.
- Fulfillment sync — when you validate a shipment in Dolibarr, ERPkit pushes the status and tracking number to eBay via the Sell Fulfillment API. The carrier dropdown is fetched live from eBay's metadata API for your region, so it stays in sync with what eBay supports (a few edge-case tracking-number formats may still be rejected case-by-case — the error message points to an alternate carrier to try).
- Factur-X — generate EU-compliant electronic invoices (PDF/A-3 with embedded CII XML) to get ahead of the European e-invoicing mandate (starting September 2026).
Important: ERPkit only pushes prices, weight, barcode, and stock to eBay. Titles, descriptions, photos, item specifics, policies (payment, shipping, return), category, and condition on your eBay listings are never modified.
Get started free with eBay
No credit card required. The free Solo plan is also available for eBay. The Dolibarr module is free and open source (GPL v3). Connect your first eBay region in 10 minutes.
Get started freeFrequently asked questions
- Is ERPkit free for eBay?
- The Dolibarr module is fully free and open source (GPL v3). The sync service offers a free Solo plan. Each eBay region (Germany, France, UK, etc.) is a separate subscription — you only pay for the regions where you actually sell.
- Do I need an eBay developer account?
- No. ERPkit handles all developer-side credentials on its own infrastructure. You only need your regular eBay seller account. The connection uses OAuth — click Connect to eBay in ERPkit, sign in on eBay's consent page, and that's it.
- Why does ERPkit require eBay Business Policies?
- ERPkit uses eBay's Inventory API, which requires your seller account to be on Business Policies (payment, shipping, return). If they're not enabled, the sync stops with a clear warning — you enable them in Seller Hub and the sync resumes automatically on the next cycle.
- How does ERPkit handle eBay SKUs?
- Two identifiers, one per phase. For Phase 1 (pushing price and stock to eBay), ERPkit uses the eBay listing ID in the
ebay_de_listing_idextrafield (or equivalent region) — that's the Phase 1 sync key. For Phase 2 (importing eBay orders into Dolibarr), the SKU on your eBay listing must match your Dolibarrrefexactly (case-sensitive) — otherwise order lines come in as free text without a product link. Easiest setup: list the item on eBay with SKU = Dolibarrref, then enter the listing ID in the extrafield. - What if I sell on multiple eBay sites (DE, FR, UK)?
- Each eBay region is a separate sync configuration with its own plugin subscription. You can use the same eBay seller account to connect across multiple regions. This also lets you have different prices per region (local currency handled automatically).
- Does ERPkit modify titles or photos of my eBay listings?
- No. ERPkit only pushes prices, compare-at price (Strikethrough Pricing when eligible), weight, barcode, and stock. Titles, descriptions, photos, item specifics, categories, and policies on your eBay listings are never touched.