N Nexus Docs
Marketplace Adapters

eBay Adapter

NexusCommerce integration with the eBay REST APIs for global marketplace selling.

Overview

The eBay adapter connects NexusCommerce to eBay's REST API suite, covering eBay's global marketplace network. The adapter uses the eBay Sell APIs for listings, orders, fulfillment, and inventory management, and the eBay Buy APIs for market research and competitor data.

eBay operates marketplace sites across 190 countries. A single seller account (eBay Global Account) can list on multiple eBay sites; configure one NexusCommerce connection per eBay site you sell on.

Key Concepts

eBay Sell APIs — The suite of APIs used to manage a seller's presence on eBay. Key APIs used by this adapter:

  • Sell Inventory API — Manage inventory items and offers
  • Sell Fulfillment API — Retrieve and manage orders and shipments
  • Sell Listing API — Manage item listings
  • Sell Account API — Retrieve seller-level settings (payment policies, return policies, shipping profiles)

Inventory Item vs. Offer — eBay separates the product definition (Inventory Item) from the marketplace listing (Offer). NexusCommerce maps its product schema to both: the Inventory Item holds product details (title, description, images, aspects), and the Offer holds the price, quantity, and listing-specific settings.

eBay Site ID — Each eBay marketplace has a numeric site ID. Common values: US (0), UK (3), Germany (77), Australia (15), France (71).

Condition IDs — eBay uses numeric condition IDs (1000 = New, 3000 = Used - Very Good, etc.). NexusCommerce maps its condition values to eBay condition IDs during listing creation.

Getting Started

Required Credentials

FieldDescription
App ID (Client ID)From the eBay Developer Program
Cert ID (Client Secret)From the eBay Developer Program
Dev IDFrom the eBay Developer Program
User Access TokenOAuth user token obtained via eBay's consent flow
Refresh TokenLong-lived token for re-issuing access tokens
eBay Site IDThe eBay marketplace site to connect

OAuth Flow

eBay uses OAuth 2.0 with a user consent (authorization code) flow:

  1. Register your application at developer.ebay.com
  2. Note the App ID (Client ID), Cert ID (Client Secret), and Dev ID
  3. In NexusCommerce, navigate to Connections > Add Connection > eBay
  4. Click Connect via eBay — NexusCommerce opens the eBay consent page
  5. Log in with your eBay seller account and grant the requested scopes
  6. NexusCommerce stores the access token and refresh token automatically

Required 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.fulfillment
https://api.ebay.com/oauth/api_scope/sell.account
https://api.ebay.com/oauth/api_scope/sell.marketing

Access tokens expire after 2 hours. Refresh tokens are valid for 18 months. NexusCommerce handles token refresh automatically using the stored refresh token.

Synced Data

Data TypeDirectioneBay APINotes
Products (Inventory Items)Read / WriteSell Inventory APITitle, description, aspects, images
Offers (Listings)Read / WriteSell Inventory APIPrice, quantity, listing status
OrdersReadSell Fulfillment APIAll statuses; paginates automatically
Shipment TrackingWriteSell Fulfillment APICarrier and tracking number
ReturnsRead / WriteSell Fulfillment APIAccept/decline return requests
Account PoliciesReadSell Account APIPayment, return, and shipping policies

Configuration Options

KeyTypeDefaultDescription
site_idinteger0 (US)eBay site to connect
sync_interval_minutesinteger60Polling frequency
order_lookback_daysinteger30Historical order import window
listing_durationstringGTCDefault listing duration (GTC = Good Till Cancelled)
auto_relistbooleantrueAutomatically relist ended fixed-price listings
out_of_stock_controlbooleantrueKeep listings active when quantity reaches 0

eBay Site IDs Reference:

MarketplaceSite ID
eBay US0
eBay UK3
eBay Germany77
eBay Australia15
eBay France71
eBay Italy101
eBay Spain186
eBay Canada2

Supported Features

FeatureSupportedNotes
Product listing syncYesInventory Item + Offer model
Inventory updatesYesVia Sell Inventory API
Order syncYesIncluding partial refunds
Shipment confirmationYesRequired to release funds
Returns managementYesAccept or decline via API
Pricing updatesYesFixed-price offers
Account policies syncYesPayment, return, shipping profiles
WebhooksYesOrder and listing notifications
Promoted Listings dataNoRequires Sell Marketing API integration
Auction listingsNoFixed-price only
Multi-quantity variationsYesSKU-level quantity per variation

Webhooks

The eBay adapter registers for real-time notifications via the eBay Notification Platform. NexusCommerce subscribes to these topics on connection setup:

TopicDescription
MARKETPLACE_ACCOUNT_DELETIONSeller account deletion notice
OFFER_LISTEDNew listing goes live
OFFER_ENDEDListing ends or is removed
ORDER_LINE_ITEM_SHIPPEDBuyer marks item received

Webhook payloads are verified using the eBay notification signature (X-EBAY-SIGNATURE header).

Rate Limits & Quotas

eBay applies per-API rate limits. Default application limits:

APIDaily Call Limit
Sell Inventory5,000
Sell Fulfillment5,000
Sell Account5,000

The adapter tracks call counts per day. When approaching 80% of the daily limit, it reduces polling frequency and defers non-critical reads. Limits reset at midnight UTC.

For high-volume accounts, contact eBay Developer Support to request increased call limits.

Troubleshooting

Invalid access token after connection setup

The access token has expired and the refresh token could not be used. Click Reconnect in NexusCommerce to re-run the eBay consent flow and obtain fresh tokens.

Listings not appearing on eBay

eBay requires category-specific item aspects (e.g., Brand, MPN for Electronics). Ensure your products have the required aspects filled in. Check the sync log for ItemAspects validation errors.

CATEGORY_REQUIRED error on product publish

eBay's category taxonomy is required for all listings. NexusCommerce auto-suggests a category based on the product title. Override using the ebay_category_id custom attribute on the product.

Orders missing from sync

Verify that the OAuth token was granted the sell.fulfillment scope. Re-connect if necessary. Check whether the order_lookback_days setting covers the period in question.

Return requests not updating

eBay return requests must be responded to within the seller's stated return window. If NexusCommerce fails to sync a return decision, check the sync log for API errors related to the Sell Fulfillment API returns endpoint.