Part of our eCommerce Integration series
Read the complete guideOdoo eBay Connector: Listing, Orders, and Inventory Sync
eBay remains one of the world's largest marketplaces with 132 million active buyers globally. For sellers who use both eBay and Odoo 19 Enterprise, managing two separate systems for orders, inventory, and customer data is inefficient and error-prone. The ECOSIRE Odoo eBay Connector synchronizes your eBay store with Odoo, automating the entire selling workflow from listing creation to order fulfillment and post-sale accounting.
This guide covers everything from eBay API credential setup through listing management, order automation, inventory synchronization, return handling, and seller performance monitoring.
Key Takeaways
- Connector uses eBay REST APIs and OAuth 2.0 for authentication
- Supports eBay Motors, eBay Business & Industrial, and consumer categories
- Fixed Price and Auction listings are both supported (order import only for auctions)
- Inventory sync updates eBay quantities within 10 minutes of Odoo stock changes
- eBay's Out-of-Stock (OOS) setting is managed automatically when quantity reaches 0
- Order import includes buyer details, shipping requirements, and eBay checkout amounts
- Returns and eBay Money Back Guarantee cases sync to Odoo RMA workflow
- Multi-store support: manage multiple eBay seller accounts from one Odoo instance
eBay API Setup and Authorization
The connector uses eBay's REST API suite, replacing the older Trading API for most operations.
Step 1: Create an eBay developer account
- Register at
developer.ebay.com - Create a new application under My Account → Application Keysets
- Note your App ID (Client ID), Dev ID, and Cert ID (Client Secret)
- Generate a RuName (eBay Redirect URL Name) for OAuth flow
Step 2: Configure OAuth scopes
Your application needs the following OAuth scopes:
https://api.ebay.com/oauth/api_scope
https://api.ebay.com/oauth/api_scope/sell.inventory
https://api.ebay.com/oauth/api_scope/sell.inventory.readonly
https://api.ebay.com/oauth/api_scope/sell.fulfillment
https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly
https://api.ebay.com/oauth/api_scope/sell.account
https://api.ebay.com/oauth/api_scope/sell.account.readonly
https://api.ebay.com/oauth/api_scope/commerce.identity.readonly
Step 3: Generate user tokens
OAuth 2.0 user tokens (not application tokens) are required for seller operations:
- In the connector configuration, click Authorize with eBay
- Complete the eBay OAuth consent flow
- The connector stores the access token and refresh token automatically
- Tokens expire after 18 months; the connector auto-refreshes using the refresh token
Sandbox vs. Production
Always test with eBay's sandbox environment first:
- Sandbox API:
api.sandbox.ebay.com - Sandbox credentials are different from production credentials
- Create sandbox seller and buyer accounts at
developer.ebay.com/sandbox
Connector Installation and Configuration
Install from ECOSIRE marketplace:
- Purchase the eBay Connector module from ECOSIRE Products
- Install via Apps → Update Apps List → search "eBay Connector" → Install
- Navigate to Inventory → Configuration → eBay Stores or Sales → eBay
Store configuration:
| Field | Description |
|---|---|
| Store Name | Display name for this eBay account |
| Marketplace | eBay.com, eBay.co.uk, eBay.de, etc. |
| App ID (Client ID) | From eBay Developer Console |
| Client Secret | From eBay Developer Console |
| Access Token | Auto-populated after OAuth flow |
| Refresh Token | Auto-populated after OAuth flow |
| Default Warehouse | Where eBay orders are fulfilled |
| Default Payment Journal | eBay Payments / PayPal journal |
| Shipping Policy ID | eBay Shipping Policy to apply to listings |
| Return Policy ID | eBay Return Policy for listings |
| Payment Policy ID | eBay Payment Policy for listings |
Fulfillment Policies:
Before listing, configure eBay fulfillment policies in Seller Hub:
- Shipping policy: carriers, estimated delivery time, handling time
- Return policy: 30-day returns, restocking fee
- Payment policy: eBay-managed payments required since 2021
The connector references these by policy ID. Link them in the store settings.
Listing Management
The connector supports creating and managing Fixed Price listings directly from Odoo product records.
Creating a listing from an Odoo product:
- Open the product form → eBay tab
- Click List on eBay
- Configure listing fields:
- Title: up to 80 characters, auto-populated from product name
- Category: select eBay category (search by keyword or ID)
- Condition: New, Used, For Parts/Not Working, etc.
- Price: uses product pricelist or override price
- Quantity: available stock or custom quantity
- Duration: GTC (Good 'Til Cancelled) recommended for Fixed Price
- Item Specifics: eBay required attributes for the category
- Click Publish to eBay
Listing templates:
For sellers with many products in the same category, create listing templates:
- Navigate to eBay → Templates → Create Template
- Configure shared fields: category, shipping, return policy, item specifics
- Apply templates to multiple products simultaneously
Bulk listing:
For catalogs with 100+ products:
- Export product list to CSV with required eBay fields
- Use the bulk import in eBay → Bulk Listing → Upload CSV
- Review and publish in batch
Listing synchronization:
Changes made in Odoo sync to eBay:
- Price changes → eBay price updated within 15 minutes
- Product description changes → eBay listing updated on next sync
- Images changes → eBay images updated (requires re-listing for some changes)
eBay category item specifics:
eBay requires category-specific attributes (e.g., Brand, Size, Color for clothing). The connector maps Odoo product attributes to eBay item specifics:
| Odoo Attribute | eBay Item Specific |
|---|---|
| Brand | Brand |
| Size (attribute) | Size |
| Color (attribute) | Color |
| MPN | MPN (Manufacturer Part Number) |
| EAN / Barcode | EAN |
Order Synchronization
Order import process:
Orders flow from eBay to Odoo automatically:
- Buyer places order on eBay and completes checkout
- eBay creates an order in "Awaiting Shipment" status
- Connector polls eBay Orders API every 15 minutes (configurable)
- Odoo creates a sale.order with buyer details from eBay
- Delivery order is created automatically
- Warehouse fulfills the order and validates the delivery
- Connector sends tracking number back to eBay
- eBay marks order as "Shipped"
Order data mapping:
| eBay Field | Odoo Field |
|---|---|
| Buyer username | Customer Name / Partner |
| Shipping address | Delivery address on sale order |
| eBay Order ID | Order Reference (with prefix) |
| Line items | Sale order lines |
| Item price | Unit price |
| Shipping amount | Delivery cost line |
| eBay fees | Info only (for reconciliation) |
| Payment status | Payment state on order |
Sending tracking information:
When you validate a delivery in Odoo and enter a tracking number:
- The connector detects the tracking number on the stock.picking
- It calls eBay's Order Fulfillment API to add tracking
- The buyer receives an eBay notification with tracking details
- eBay updates the order status to "Shipped"
Supported carriers for automatic tracking updates: USPS, UPS, FedEx, DHL, Royal Mail, Deutsche Post, and 100+ others via eBay's carrier code list.
Inventory Synchronization
Accurate inventory prevents eBay "Defect" metrics from out-of-stock situations.
Inventory sync mechanism:
The connector uses eBay's Inventory API with the following logic:
eBay Quantity = Odoo On-Hand - Safety Stock Buffer - Odoo Reserved Quantity
When inventory syncs:
- After every confirmed delivery order (immediate)
- After every validated receipt (immediate)
- Scheduled full sync every 30 minutes
- Manual sync available at any time
Out-of-stock handling:
Configure what happens when quantity reaches 0:
- Option A: OOS mode (Odoo Recommendation): keep listing active with 0 quantity using eBay's Out of Stock option — listing maintains its history and reviews
- Option B: End listing: remove listing from eBay when stock hits 0 and relist when restocked
- Option C: Set minimum: set a minimum quantity (e.g., 1) and go to 0 in Odoo only when OOS minimum is triggered
Ending and relisting frequently hurts eBay search placement. OOS mode is recommended.
Multi-location inventory:
If fulfilling from multiple warehouses:
- Set a primary warehouse for eBay in the store settings
- Or aggregate inventory across multiple warehouses
- Configure per product if some SKUs ship from specific locations
Return and Refund Handling
eBay's Money Back Guarantee means sellers must accept returns. The connector handles the return workflow in Odoo.
Return sync workflow:
- Buyer opens a return request in eBay
- Connector imports the return case to Odoo as an RMA (Return Merchandise Authorization)
- Operations team reviews the return reason in Odoo
- If accepted: generate a return shipping label (if providing prepaid labels)
- Buyer ships item back
- Receive returned goods in Odoo → validate receipt
- Process refund: create a credit note in Odoo → connector triggers eBay refund
Return case statuses tracked:
| eBay Status | Odoo RMA Status |
|---|---|
| Return Opened | RMA Created |
| Awaiting Seller Response | RMA Under Review |
| Return Label Sent | Label Provided |
| Item Received | Return Received |
| Refund Issued | Credit Note Posted |
| Case Closed (No Refund) | RMA Cancelled |
eBay Seller Performance Monitoring
eBay evaluates sellers on metrics that directly impact listing visibility. Monitor them in Odoo:
Key eBay seller metrics:
| Metric | eBay Threshold | Critical Below |
|---|---|---|
| Transaction Defect Rate | < 2% | < 0.5% for Top Rated |
| Cases Closed Without Resolution | < 0.3% | < 0.3% |
| Late Shipment Rate | < 5% | < 3% for Top Rated |
| Tracking Uploaded On Time | > 95% | > 95% for Top Rated |
Performance dashboard in Odoo:
Navigate to eBay → Performance to see:
- Orders by status over the past 30 days
- Late shipments (orders shipped after handling time)
- Return rate by category
- Defects summary with order IDs
- Projected seller level for next evaluation
Pricing and Promotions
Automated pricing rules:
Configure dynamic eBay pricing based on Odoo cost data:
eBay Price = Product Cost × (1 + Target Margin %) + eBay Fee Buffer
Example: If cost is $10, target margin is 40%, and eBay fees are typically 12.5%:
eBay Price = $10 × 1.40 / (1 - 0.125) = $16.00
Markdown promotions:
The connector supports eBay Promotions Manager integration:
- Create sales in Odoo → connector creates corresponding eBay promotions
- Flash sales, order discounts, and shipping promotions
- Scheduled promotions: start and end dates configured in Odoo
Frequently Asked Questions
Does the connector support eBay auction listings?
The connector imports orders from auction listings just like fixed-price listings. However, creating and managing auction listings (setting start price, reserve price, duration) via the connector is limited — auctions are best managed directly in eBay Seller Hub. The connector's primary listing management capability is for Fixed Price / GTC listings.
How does the connector handle eBay Managed Payments (eBay's payment processing)?
Since 2021, eBay processes all payments through eBay-managed payments. The connector imports order totals including eBay's checkout price (item price + shipping). eBay remits net proceeds (after fees) to your bank account. The connector supports importing eBay payout reports for reconciliation, automatically creating journal entries that account for eBay fees deducted from payouts.
Can I sync products from Odoo to multiple eBay stores (different seller accounts)?
Yes. Create multiple eBay store configurations, each with its own OAuth credentials. Products can be listed on multiple stores simultaneously with store-specific pricing overrides. Inventory is tracked globally in Odoo and allocated to each store's listings based on configured rules.
What happens to my eBay listing history (reviews, sales count) when I update a listing?
Standard listing updates (price, quantity, description, images) preserve listing history and sales count. Actions that reset history: ending and relisting, changing the eBay category for some categories. The connector uses the eBay Inventory API's "update offer" endpoint for routine changes, which preserves history.
How does the connector handle international eBay sales and customs requirements?
For cross-border sales through eBay International Shipping or GSP (Global Shipping Program), the connector marks the sale order with the buyer's country. You configure appropriate fiscal positions and tax treatment in Odoo for international sales. GSP orders ship to eBay's domestic fulfillment center; customs documentation is handled by eBay's GSP program, not by your operations.
Next Steps
Managing eBay operations through Odoo eliminates manual data entry, prevents inventory errors, and gives you a single source of truth for all sales channels. The ECOSIRE eBay Connector is built for Odoo 19 Enterprise and includes full support for eBay's latest REST APIs.
Get the ECOSIRE eBay Connector for Odoo 19 →
Every purchase includes the module license, setup documentation, and access to our implementation support team to get your eBay-Odoo sync running smoothly from the first day.
Written by
ECOSIRE Research and Development Team
Building enterprise-grade digital products at ECOSIRE. Sharing insights on Odoo integrations, e-commerce automation, and AI-powered business solutions.
Related Articles
Odoo Accounting vs QuickBooks: Detailed Comparison 2026
In-depth 2026 comparison of Odoo Accounting vs QuickBooks covering features, pricing, integrations, scalability, and which platform fits your business needs.
Case Study: eCommerce Migration to Shopify with Odoo Backend
How a fashion retailer migrated from WooCommerce to Shopify and connected it to Odoo ERP, cutting order fulfillment time by 71% and growing revenue 43%.
Case Study: Manufacturing ERP Implementation with Odoo 19
How a Pakistani auto-parts manufacturer cut order processing time by 68% and reduced inventory variance to under 2% with ECOSIRE's Odoo 19 implementation.
More from eCommerce Integration
Shopify + Odoo ERP Integration: The Complete Guide
Comprehensive guide to integrating Shopify with Odoo ERP — inventory sync, order management, customer data, financial reporting, and automation workflows.
Managing Returns and Exchanges on Shopify
Complete guide to Shopify returns management: policy design, automated workflows, reverse logistics, exchange processing, and reducing return rates profitably.
Headless Shopify with Hydrogen: Build High-Performance Custom Storefronts
Complete guide to building headless Shopify storefronts with Hydrogen framework covering Remix, Storefront API, Oxygen hosting, and performance optimization.
Multi-Channel Inventory Synchronization: Preventing Stockouts and Overselling
Multi-channel inventory sync guide. Covers real-time synchronization methods, safety stock allocation, ERP integration, oversell prevention, and warehouse management.
Data Mapping & Transformation: Handling Different APIs & Data Formats
Master field mapping, data normalization, unit conversion, currency handling, and category taxonomy mapping across eCommerce APIs and data formats.
Headless Commerce Architecture: Decoupling Frontend from Backend
Compare headless vs monolithic commerce, explore API-first design with Shopify Storefront API, Next.js frontends, and modern commerce platform options.