Title: LystoSync for eBay
Author: lystosync
Published: <strong>August 26, 2026</strong>
Last modified: August 26, 2026

---

Search plugins

![](https://ps.w.org/lystosync-for-ebay/assets/banner-772x250.png?rev=3666745)

![](https://ps.w.org/lystosync-for-ebay/assets/icon.svg?rev=3666551)

# LystoSync for eBay

 By [lystosync](https://profiles.wordpress.org/lystosync/)

[Download](https://downloads.wordpress.org/plugin/lystosync-for-ebay.1.3.0.zip)

 * [Details](https://wordpress.org/plugins/lystosync-for-ebay/#description)
 * [Reviews](https://wordpress.org/plugins/lystosync-for-ebay/#reviews)
 *  [Installation](https://wordpress.org/plugins/lystosync-for-ebay/#installation)
 * [Development](https://wordpress.org/plugins/lystosync-for-ebay/#developers)

 [Support](https://wordpress.org/support/plugin/lystosync-for-ebay/)

## Description

LystoSync for eBay connects WooCommerce to eBay. Publish products as listings, keep
prices and stock in sync, and end listings when items sell out.

**Core features (free):**

 * Publish WooCommerce products as eBay fixed-price or auction listings
 * Edit listings: price, quantity, title, description
 * End (withdraw) listings at any time
 * Auto-relist expired listings
 * Manual Relist action from the listings table
 * Listing profiles: reusable templates with eBay category, shipping, payment, and
   return policies
 * Per-product shipping weight and dimensions sent to eBay
 * Description templates with placeholder support
 * GPSR compliance fields: manufacturer and responsible persons for EU product safety
 * Archive ended listings on a nightly schedule
 * Auto-sync on product save: changes push to eBay when you update a WooCommerce
   product
 * Stock control: auto-end or update quantity when WooCommerce stock hits zero
 * Background sync: queued listing updates pushed on a schedule
 * Multiple eBay accounts
 * OAuth account connection
 * Business policy sync: pulls fulfillment, payment, and return policies from eBay

**Pro features ([LystoSync Pro](https://lystosync.com/ebay)):**

 * Import existing eBay listings into WooCommerce
 * Migrate from WP-Lister Pro for eBay: listings, category mappings, variations,
   and profiles
 * Orders admin page: view, search, and manage imported eBay orders
 * Automated order import on a schedule
 * Mark orders as shipped on eBay when a WooCommerce order completes
 * Shipment tracking: upload carrier and tracking number to eBay
 * Automated buyer feedback after shipment
 * WooCommerce to eBay category mapping
 * Background inventory check: pulls live eBay status and updates listing state
 * Faster sync intervals (5 and 15 minutes; free is fixed at 30)
 * Sales sync toggle: pause all eBay syncs without deleting listings
 * In-dashboard Pro updates with license key activation

**How it works:**

LystoSync handles eBay OAuth tokens server-side, so you never touch API credentials.
You need a free LystoSync account and an eBay seller account.

### External Services

This plugin transmits data to two external services:

**LystoSync (ebay-api.lystosync.com)**

All eBay API requests go through ebay-api.lystosync.com. On account connection, 
your site URL and license key are sent to authenticate. Subsequent requests include
product data, pricing, inventory levels, order details, and shipment information,
depending on which features you use. No data is sent until you connect an eBay account.

Separately, the plugin can check for service notices (eBay API outages, critical
fixes, and eBay changes that need action on your account). This is **optional and
off by default**. You are asked once, at the end of setup, and can change the answer
at any time under Settings, Advanced. While it is off, no request is made. While
it is on, the check sends your plugin, WordPress, WooCommerce and PHP versions and
your site language, and nothing else: no site address, email, eBay account, or customer
or order data.

 * Service: [lystosync.com](https://lystosync.com)
 * Privacy policy: https://lystosync.com/privacy
 * Terms of service: https://lystosync.com/terms

**eBay**

Product listings, pricing, inventory, and shipment data are submitted to eBay via
the LystoSync middleware. eBay’s own privacy policy and user agreement govern how
eBay handles that data.

 * Service: [ebay.com](https://www.ebay.com)
 * Privacy policy: https://www.ebay.com/help/policies/member-behaviour-policies/
   user-privacy-notice-privacy-policy?id=4260
 * User agreement: https://www.ebay.com/help/policies/member-behaviour-policies/
   user-agreement?id=4259

### Source Code

The human-readable source files for all compiled assets ship with the plugin, in

resources/js/ and `resources/css/`, alongside the build script (`build.js`) and 
the build dependencies (`package.json`). Every generated file in `dist/` also carries
a header comment naming the source file it was built from.

**Build tools required:** Node.js, npm

**To regenerate the compiled files in `dist/`:**

 1. Run `npm install` to install dependencies (esbuild, PostCSS, Autoprefixer).
 2. Run `npm run build` (or `node build.js`) to compile and minify all assets.

The build uses esbuild for JavaScript bundling and minification, and PostCSS with
Autoprefixer for CSS.

**Compiled file => source file:**

 * `dist/admin.js` => `resources/js/app.js`
 * `dist/accounts.js` => `resources/js/accounts.js`
 * `dist/listings.js` => `resources/js/listings.js`
 * `dist/templates.js` => `resources/js/templates.js`
 * `dist/template-editor.js` => `resources/js/template-editor.js`
 * `dist/profiles.js` => `resources/js/profiles.js`
 * `dist/settings.js` => `resources/js/settings.js`
 * `dist/setup.js` => `resources/js/setup.js`
 * `dist/setup-license.js` => `resources/js/setup-license.js`
 * `dist/import.js` => `resources/js/import.js`
 * `dist/wple-migration.js` => `resources/js/wple-migration.js`
 * `dist/product-overrides.js` => `resources/js/product-overrides.js`
 * `dist/product-metabox.js` => `resources/js/product-metabox.js`
 * `dist/products-bulk-list.js` => `resources/js/products-bulk-list.js`
 * `dist/order-metabox.js` => `resources/js/order-metabox.js`
 * `dist/admin.css` => `resources/css/design-system.css` + `resources/css/admin.
   css` + `resources/css/category-picker.css`
 * `dist/product-overrides.css` => `resources/css/product-overrides.css`
 * `dist/product-metabox.css` => `resources/css/product-metabox.css`
 * `dist/order-metabox.css` => `resources/css/order-metabox.css`

Each JavaScript entry point also pulls in shared modules from `resources/js/lib/`,

which are bundled into the output rather than shipped as separate files.

The SortableJS library (`node_modules/sortablejs`, bundled into `dist/profiles.js`
and `dist/settings.js`) is available at https://github.com/SortableJS/Sortable under
the MIT license.

**Bundled fonts.** The admin interface uses two self-hosted webfonts, copied from

resources/fonts/ to `dist/fonts/` by the build. Nothing is loaded from a font CDN
or any other third-party host.

 * DM Sans, Copyright 2014 The DM Sans Project Authors, https://github.com/googlefonts/
   dm-fonts
 * Syne, Copyright 2017 The Syne Project Authors, https://gitlab.com/bonjour-monde/
   fonderie/syne-typeface

Both are licensed under the SIL Open Font License 1.1. The full license texts
 ship
as `resources/fonts/OFL-DM-Sans.txt` and `resources/fonts/OFL-Syne.txt`.

## Installation

 1. Upload the plugin to your `/wp-content/plugins/` directory or install via the WordPress
    plugin screen.
 2. Activate the plugin through the **Plugins** screen.
 3. Go to **LystoSync  Accounts** and connect your eBay seller account via OAuth.
 4. Create a listing profile under **LystoSync  Profiles** with your preferred eBay
    category, shipping policy, and return policy.
 5. Assign the profile to a product and publish it to eBay from the product edit screen
    or the **Listings** table.

Requires WooCommerce 8.0 or later.

## FAQ

### Do I need an eBay developer account or API keys?

No. LystoSync handles all eBay API authentication through its service at ebay-api.
lystosync.com. You connect your eBay seller account via the standard eBay OAuth 
flow. No API keys to manage.

### Is a LystoSync account required?

Yes. Create a free account at lystosync.com. The plugin uses it to authenticate 
with ebay-api.lystosync.com, which handles eBay API calls on your behalf.

### Which eBay sites are supported?

Supported marketplaces include eBay.com, eBay.co.uk, eBay.de, eBay.fr, eBay.it, 
eBay.es, eBay.com.au, and others.

### Can I connect more than one eBay account?

Yes. Each account can have its own profiles and listings.

### Does this work with variable products?

Yes. Each variation publishes as a separate eBay listing.

### What happens to my eBay listings if I deactivate the plugin?

Deactivating stops all syncing. Your live eBay listings stay active on eBay — none
are ended.

### Where can I get support?

Open a support thread in the [WordPress.org support forum](https://wordpress.org/support/plugin/lystosync-for-ebay/)
or visit [lystosync.com](https://lystosync.com) for Pro support.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“LystoSync for eBay” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ lystosync ](https://profiles.wordpress.org/lystosync/)

[Translate “LystoSync for eBay” into your language.](https://translate.wordpress.org/projects/wp-plugins/lystosync-for-ebay)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/lystosync-for-ebay/),
check out the [SVN repository](https://plugins.svn.wordpress.org/lystosync-for-ebay/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/lystosync-for-ebay/)
by [RSS](https://plugins.trac.wordpress.org/log/lystosync-for-ebay/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.3.0

Added:
 * Item specifics now map local (non-taxonomy) WooCommerce attributes, not
just global taxonomy ones, with a local attribute taking priority over a same-named
global one. * A one-time dialog asks existing installs whether to check for eBay
service notices before the check runs. * German, French, Italian and Spanish translations,
bundled so the admin UI is localized out of the box.

Changed:
 * Every REST call the plugin’s admin screens make now goes through wp.
apiFetch instead of hand-built fetch requests.

Fixed:
 * Product images no longer silently skip eBay Picture Service upload when
the listing image size setting is set below Full. * Sites with plain permalinks 
got a 404 on every REST call (categories, item specifics, conditions, GPSR labels,
policies, store categories, account connect, import review) because a hand-built
query string collided with the permalink fallback’s own. * A listing that sells 
out on eBay no longer lands in the Error tab instead of Ended: the follow-up end/
inventory call is expected to fail once eBay has already closed it out, and that’s
now recognized rather than treated as a sync failure. * A permanently rejected Trading
API call is no longer retried four times with a generic timeout message; eBay’s 
actual rejection reason now reaches the seller. * Saving a profile’s price settings
no longer queues a sync per variation child in addition to the listing itself. *
The OAuth callback now validates the state parameter before using it to address 
a transient. * The license key is no longer returned in cleartext from Settings 
or shown in the setup wizard. * Text with HTML entities (e.g. “Black & White”) now
decodes before reaching eBay, instead of appearing verbatim in the title, item specifics,
and variation specifics. * A failed eBay Picture Service upload now aborts the sync
instead of silently mixing self-hosted and eBay-hosted image URLs, which eBay rejects
outright. * A variation dropped during import (usually a duplicate SKU) is now reported
by name and reason instead of being silently counted as imported. * The {{brand}}
description placeholder now resolves through the same override chain as the listing
payload, instead of reading the brand taxonomy directly.

#### 1.2.0

Added:
 * An Import Categories option that assigns imported products to a matching
WooCommerce category based on the eBay category path. * A locking mechanism that
prevents a double-click on Import, or a scheduled run landing on top of one already
in progress, from creating duplicate orders or double-reducing stock. * A connected
account now seeds its order-sync cursor at connect time, so a first sync can’t reach
back and re-process orders already fulfilled. * Keyboard accessibility for the category
picker and modal dialogs, with accessible labels on row-selection checkboxes. * 
A Clear EPS cache bulk action for forcing a re-upload of eBay-hosted images. * An
image transfer method setting for EPS uploads: upload the file directly, or hand
eBay a link to fetch it.

Changed:
 * Renamed “Sync interval” to “Order sync interval” and clarified that 
it governs order imports only, not listing/stock syncs. * The description gallery
now serves images from eBay instead of the store when eBay Picture Service uploads
are on. * The setup checklist can now be dismissed at any point, not only once every
step is complete, via a clearer “Skip setup” link.

Fixed:
 * Listings with an EAN, UPC, or ISBN no longer fail to publish outright.*
Two settings that rendered but silently failed to save (respecting WooCommerce’s
out-of-stock threshold; forwarding shipment tracking to eBay orders) now save correctly.*
LystoSense suggestions no longer fatal the request on an upstream failure; the failure
is now logged. * LystoSense now adds a suggested value as a custom option when it
isn’t already in the field’s list. * A missing product query no longer fatals the
eBay status column on the WooCommerce Products list. * Plugin admin page headers
now align with WordPress’s Screen Options tab. * The API log table no longer stretches
to fit long error messages; errors show on their own row. * Saving settings no longer
resets or interrupts the recurring order-import and inventory-check schedules. *
Decimal values like shipping weight now reach eBay and the API log as the number
entered, not a floating-point expansion. * Images referenced by templated descriptions
are now converted from http to https before publish.

#### 1.1.0

Added:
 * A first-run setup wizard covering the account, business policies, ship-
from location, category and template. * An import review step: listings are gathered
and filtered first, so you choose what to import before anything is created. * Item
specifics from imported listings are mirrored into WooCommerce product attributes.*
An auction’s end date in the listings Type column. * A per-page screen option on
Listings and Orders.

Changed:
 * Listings imported from eBay are now managed over the Trading API, variations
included. * Images are uploaded through eBay’s Media API. * The import lookback 
now defaults to 12 months. * The admin no longer loads fonts, or any other asset,
from a third-party host. * Bulk listing actions and the status tabs run in far fewer
database queries.

Fixed:
 * An auction the seller ended by hand on eBay is no longer relisted automatically.*
An auction’s Buy It Now price is now correctly sent to eBay. * Auction end dates
no longer go stale after a re-sync restarts the auction on eBay. * A listing’s format
now follows its assigned profile. * Trashed listings show as Trashed in the listings
table. * Ship-from locations update on eBay when the address changes.

#### 1.0.1

Added:
 * Listing descriptions are now imported from eBay along with existing listings.

Changed:
 * Admin prices now display in the marketplace currency instead of always
in dollars.

Fixed:
 * Custom item specifics that eBay does not suggest are no longer dropped.*
Ship-from location failures after upgrading to the opt-in store address. * Update
checks no longer run when no license is connected. * The inventory location probe
no longer shows as a failed API call in the log.

#### 1.0.0

 * Initial release.

## Meta

 *  Version **1.3.0**
 *  Last updated **2 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 8.1 or higher **
 * Tags
 * [ebay](https://wordpress.org/plugins/tags/ebay/)[listings](https://wordpress.org/plugins/tags/listings/)
   [Marketplace](https://wordpress.org/plugins/tags/marketplace/)[sync](https://wordpress.org/plugins/tags/sync/)
   [woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/lystosync-for-ebay/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/lystosync-for-ebay/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/lystosync-for-ebay/reviews/)

## Contributors

 *   [ lystosync ](https://profiles.wordpress.org/lystosync/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/lystosync-for-ebay/)