How to cleanly connect Amazon, eBay and Zalando without ending up with overselling or inconsistent prices
Once a Magento store also sells through Amazon, eBay, or Zalando, the store's own internal stock management is no longer enough on its own: without solid marketplace integration, overselling looms whenever the same item gets ordered through multiple channels at once, and without central product feed management, keeping identical product data in sync across three or more systems quickly becomes unsustainable. This article shows how to build a technically sound marketplace connection to Magento 2, what Amazon, eBay, and Zalando each bring to the table, and how to keep stock and pricing consistent across every channel.
Table of Contents
- 1. Why marketplaces need their own integration strategy
- 2. Connecting Amazon: SP-API, feeds, and choosing between FBA and FBM
- 3. Connecting eBay: the Sell API and category mapping
- 4. Connecting Zalando: the Partner Program API and content requirements
- 5. Stock synchronization across channels: the overselling problem
- 6. Product feed management: central data instead of channel sprawl
- 7. Pricing strategies per marketplace: fees and repricing
- 8. Order import and return handling back into Magento
- 9. Marketplace integration compared
- 10. Summary
- 11. FAQ
1. Why marketplaces need their own integration strategy
Every marketplace brings its own API concepts, category taxonomies, and fee models that differ fundamentally from one another, which is why a single, one size fits all marketplace connection rarely works in practice across every channel. Amazon, for instance, demands strict adherence to predefined product categories and attributes, while eBay allows considerably more freedom in listing design but enforces its own rules around shipping times and return conditions.
A good marketplace integration abstracts these differences into a shared internal data layer in Magento, from which channel specific exports are generated, instead of building an entirely separate data maintenance process for every marketplace. That abstraction pays off at the latest when a fourth or fifth marketplace joins and does not require starting from scratch again.
2. Connecting Amazon: SP-API, feeds, and choosing between FBA and FBM
Amazon provides its Selling Partner API, or SP-API, as the central interface for listings, stock, pricing, and orders, replacing the older, now deprecated Marketplace Web Service API. Product listings usually go through a feed based approach, uploading structured XML or JSON files with listing data, rather than maintaining every single listing through a synchronous API call.
One of the most important strategic decisions on Amazon is the choice between Fulfillment by Amazon, or FBA, where Amazon handles storage, shipping, and customer service, and Fulfillment by Merchant, or FBM, where the seller ships directly. FBA stock lives in Amazon's own internal warehouse and therefore has to be synchronized separately from FBM stock in the seller's own warehouse, which should be treated as two distinct stock sources in the integration logic.
<?php
declare(strict_types=1);
namespace Mironsoft\MarketplaceSync\Model\Amazon;
/**
* Builds an inventory reconciliation feed for Amazon SP-API (FBM stock only).
*/
final class InventoryFeedBuilder
{
/**
* @param array $skuQuantities SKU => available quantity (FBM stock only)
* @return array Feed document in the format Amazon expects
*/
public function build(array $skuQuantities): array
{
$messages = [];
$messageId = 1;
foreach ($skuQuantities as $sku => $quantity) {
$messages[] = [
'messageId' => $messageId++,
'sku' => $sku,
'quantity' => max(0, (int) $quantity),
'fulfillmentLatency' => 2,
];
}
return ['header' => ['sellerId' => getenv('AMAZON_SELLER_ID')], 'messages' => $messages];
}
}
3. Connecting eBay: the Sell API and category mapping
The modern eBay Sell API replaces the older Trading API and offers REST endpoints for inventory, offers, and orders, with eBay strictly separating an inventory object that holds product level data from an offer object that defines the actual listing with price and quantity. That separation allows an inventory object to be maintained once and used to derive several offers with different prices or listing formats.
Category mapping is particularly demanding on eBay, since eBay's category tree is structured differently by country and also changes regularly, while Magento's own category structure is usually organized around entirely different criteria. A mapping table that explicitly maps every relevant Magento category to an eBay category ID, validated regularly against eBay's current category API, prevents listings from being rejected due to outdated category IDs.
4. Connecting Zalando: the Partner Program API and content requirements
Zalando runs its Partner Program through its own API, which imposes considerably stricter requirements on image quality, product descriptions, and size charts than Amazon or eBay, since Zalando positions its marketplace heavily around a consistent customer experience. Products that fail to meet those content standards are typically rejected already during review, rather than only causing problems after publication.
For clothing and shoes, Zalando also requires a standardized size chart per brand, which must not be confused with Magento's internal size attribute, but maintained separately and translated into Zalando's expected format through the marketplace integration. Anyone underestimating that requirement typically sees an above average rejection rate during product approval.
5. Stock synchronization across channels: the overselling problem
Once the same physical stock is sold simultaneously through the store's own site and several marketplaces, a classic overselling risk appears: two customers order the last available item almost simultaneously through different channels, before the stock update has reached both systems. A safety buffer that deliberately withholds a small fraction of actual stock from the marketplaces reduces that risk noticeably without meaningfully hurting revenue.
Stock synchronization should also be event driven rather than purely time based: every order, regardless of which channel it comes through, should immediately reduce available stock and propagate that change to all other active channels right away, instead of waiting for the next scheduled sync cycle. At high order volume, a cron interval of a few minutes is often no longer enough to reliably prevent overselling.
6. Product feed management: central data instead of channel sprawl
Without central product feed management, product titles, descriptions, and images end up being maintained separately and manually for every marketplace, which stops scaling as the assortment grows and leads to inconsistent information between channels. A central feed management system holds product data once in Magento and automatically generates channel specific exports that each meet the target marketplace's format requirements.
Channel specific adjustments, such as shortened product descriptions for Amazon's character limits or additional mandatory attributes for Zalando, should live as transformation rules within feed generation, not as separate, manually maintained data sets per channel. That architecture ensures a price change in Magento automatically reaches every active marketplace feed, instead of having to be applied manually in multiple places.
7. Pricing strategies per marketplace: fees and repricing
Every marketplace charges different selling fees that have to factor into pricing so the same margin is preserved across every channel, instead of accidentally selling at a loss on one marketplace. A marketplace integration should therefore allow defining a channel specific markup or discount relative to the base price in Magento, instead of pushing identical prices everywhere.
On Amazon, automated repricing is also common, adjusting the seller's own price in real time against competitor prices to win the Buy Box. Such repricing logic has to work with a price floor that accounts for actual marketplace fees and cost of goods, so an aggressive competitor does not automatically force a sale at a loss.
8. Order import and return handling back into Magento
Orders from every marketplace should be imported as regular orders into Magento for unified order processing, accounting, and customer communication, instead of staying isolated in separate marketplace backends. The integration has to clearly tag each imported order with its originating marketplace channel, so reporting and return processes can be broken down by channel.
Returns handled directly through the marketplace, such as a return processed by Amazon FBA, also have to be reported back to Magento so stock levels and invoicing stay consistent. Without that return channel, discrepancies between actual physical stock and the stock recorded in Magento accumulate over time and can only be corrected through manual stocktaking.
9. Marketplace integration compared
The table below compares the three marketplaces covered here by their typical API and their most important characteristics.
| Marketplace | API | Distinctive Feature | Typical Challenge |
|---|---|---|---|
| Amazon | Selling Partner API (SP-API) | FBA vs. FBM as separate stock sources | Securing repricing with a price floor |
| eBay | Sell API (REST) | Separate inventory and offer objects | Regularly validating category mapping |
| Zalando | Partner Program API | Strict content and size chart standards | High rejection rate on incomplete content |
| All channels combined | Central feed layer in Magento | Unified data with transformation rules | Overselling without a safety buffer |
Mironsoft
Magento development, module consulting, and system architecture
A Magento project that needs a second opinion or experienced execution?
We build custom Magento modules, advise on architecture decisions, and take on complex implementations, from service contract planning to production-ready deployment.
Architecture Consulting
Have module and system architecture thought through properly before you build.
Custom Module Development
Build custom Magento modules cleanly, following best practices.
Code Review & Audit
Have existing modules reviewed for performance, security, and maintainability.
10. Summary
Marketplace Integration: The Essentials at a Glance
Core idea
Every marketplace needs its own API logic, but should be fed from one central product data layer in Magento.
Biggest risk
Overselling caused by delayed stock synchronization between the store and multiple marketplaces.
Key decision
Treat FBA and FBM on Amazon as separate stock logic rather than one combined pool.
Success criterion
Price changes and stock updates reach every active marketplace automatically, without manual rework.