This project is not covered by Drupal’s security advisory policy.

Commerce eBay Inventory lists Drupal Commerce product variations on eBay through eBay's current Sell Inventory API, keeps quantities in sync and imports eBay sales back into Drupal.

It is built for stores that sell one-of-a-kind items on several channels at once, such as used parts, second-hand goods, art or collectibles: when an item sells on eBay, it is unpublished in Drupal, which ends its listings on every other eBay site.

Features

  • One variation = one eBay inventory item (by SKU) and one offer per eBay site (eBay UK, Germany, US, …).
  • Published variations are listed; unpublished ones, or quantity 0, end their listings.
  • Several eBay sites with their own language, currency, exchange rate, category, business policies and inventory location.
  • Photos are uploaded straight to eBay (Media API), so the site does not need to be publicly reachable.
  • New eBay orders are imported on cron and announced with an event; sold variations are unpublished by default.
  • Changes reach eBay seconds after saving, with cron as the safety net. Unchanged items cost no API calls.
  • OAuth connection to the seller account from the admin UI; the client secret can live in settings.php.
  • Drush commands to sync, import orders, create the inventory location, add marketplaces and check status.

For developers

Subscribe to the EbayEvents::LISTING_BUILD event to add item specifics, condition, photos, category, package size, vehicle compatibility or a quantity from your own fields. React to sales with EbayEvents::ORDER_RECEIVED. See the README for examples.

Requirements

  • Drupal 11.1 or later and Commerce 3.
  • An eBay developer account with an application (sandbox and/or production keys).
  • An eBay seller account with business policies (shipping, payment, returns) enabled.

Not (yet) included

  • Creating Commerce orders from eBay orders (the order event carries everything needed).
  • eBay multi-variation listings: each variation is its own listing.
  • Shipment tracking back to eBay.

Similar projects

Commerce eBay and eBay Commerce target older Drupal versions and eBay's legacy Trading API. This module uses the Sell Inventory, Fulfillment and Media REST APIs and Drupal 11 features (OOP hooks, attributes, autowiring).

Project information

Releases