Any Amazon seller faces the problem: manually managing listings, prices, and orders across multiple marketplaces is a nightmare, especially with hundreds of SKUs. Price errors (0.01$ cheaper — lost sale, higher — boycott), unsynchronized inventory (sold on your site but not on Amazon), delayed order processing (metrics drop). We automate this via the Amazon Selling Partner API (SP-API) — the modern replacement for the legacy MWS. Our experience: integrations for stores with catalogs up to 50,000 items across 3+ regions. We guarantee stable operation without metric degradation — our stack is tested by thousands of sellers.
SP-API Integration: Listings, Prices, Orders
The SP-API integration simplifies listing updates, price synchronization, and order management. With SP-API, you can automate everything from product listing to order fulfillment. We handle the heavy lifting.
SP-API Authentication
SP-API uses AWS Signature Version 4 and OAuth2 (Login with Amazon). You need an IAM role and a refresh token. Typical Python code:
import boto3
from sp_api.api import Products, Orders, Inventories
from sp_api.base import Marketplaces, Credentials
credentials = Credentials(
refresh_token = os.environ['SP_REFRESH_TOKEN'],
lwa_app_id = os.environ['LWA_APP_ID'],
lwa_client_secret = os.environ['LWA_CLIENT_SECRET'],
aws_access_key = os.environ['AWS_ACCESS_KEY'],
aws_secret_key = os.environ['AWS_SECRET_KEY'],
role_arn = os.environ['SP_API_ROLE_ARN'],
)
Creating/Updating Listings
from sp_api.api import Listings
listings = Listings(credentials=credentials, marketplace=Marketplaces.DE)
def upsert_listing(product: dict) -> None:
listing_body = {
'productType': product['amazon_product_type'],
'attributes': {
'item_name': [{'value': product['name'], 'language_tag': 'de_DE'}],
'brand': [{'value': product['brand']}],
'description': [{'value': product['description'], 'language_tag': 'de_DE'}],
'list_price': [{
'currency': 'EUR',
'value': product['price'],
}],
'main_product_image_locator': [{'media_location': product['main_image']}],
},
}
listings.put_listings_item(
sellerId=SELLER_ID,
sku=product['sku'],
marketplaceIds=[Marketplaces.DE.marketplace_id],
body=listing_body,
)
How SP-API Solves Price and Inventory Synchronization
Amazon does not allow direct price/inventory upload from your warehouse — everything must go through the API. We use two main tools:
from sp_api.api import Pricing, FbaInventory
pricing = Pricing(credentials=credentials, marketplace=Marketplaces.US)
pricing.get_competitive_pricing(Asins=[asin])
fba = FbaInventory(credentials=credentials, marketplace=Marketplaces.US)
summary = fba.get_inventory_summaries(granularityType='Marketplace', granularityId=Marketplaces.US.marketplace_id)
This allows updating prices based on competitors and reporting stock shortages in FBA in time.
Why SP-API is Better Than MWS
| Criteria | MWS | SP-API |
|---|---|---|
| Protocol | SOAP/XML | REST/JSON |
| Authentication | Simple token | AWS SigV4 + LWA OAuth2 |
| Notifications | Polling | Push via SQS |
| Regions | Separate endpoints | Unified auth, separate endpoints |
SP-API has 3x fewer timeout errors and supports more endpoints (e.g., A+ Content, FBA Inbound).
Fault Tolerance and Notifications
We use retries with exponential backoff, token pooling, and quota monitoring for SP-API. If Amazon returns TooManyRequests, the request queue is not lost — data is stored in Redis and gradually sent. We also configure SQS for order notifications:
from sp_api.api import Notifications
notif = Notifications(credentials=credentials)
notif.create_subscription(
notificationType='ORDER_CHANGE',
body={
'payloadVersion': '1.0',
'destinationId': SQS_QUEUE_ARN,
}
)
According to SP-API documentation (https://developer-docs.amazon.com/sp-api/docs), push notifications are delivered in under 5 seconds.
Retrieving Orders
from sp_api.api import Orders as SpOrders
from datetime import datetime, timedelta
orders_api = SpOrders(credentials=credentials, marketplace=Marketplaces.DE)
orders = orders_api.get_orders(
MarketplaceIds=[Marketplaces.DE.marketplace_id],
CreatedAfter=(datetime.utcnow() - timedelta(hours=24)).isoformat(),
OrderStatuses=['Pending', 'Unshipped'],
)
Region Specifics
Amazon has regional endpoints: sellingpartnerapi-na.amazon.com (US/CA/MX), sellingpartnerapi-eu.amazon.com (EU/UK/IN), sellingpartnerapi-fe.amazon.com (JP/AU). Each has its own marketplace_id. In projects, we automatically detect the region by ASIN or specify manually.
Integration Process and Timelines
| Stage | Duration, days | Details |
|---|---|---|
| Analytics | 2–3 | Study assortment, regions, current pain points |
| Design | 3–5 | Choose architecture (monolith or microservices), IAM |
| Development | 10–15 | Code, unit and integration tests with Amazon sandbox |
| Testing | 3–5 | On staging with real data (no production impact) |
| Deployment | 2–3 | Roll out to production, 48-hour monitoring |
Estimated timeline: 20–30 business days (depending on number of regions and logistics complexity). Cost is calculated individually — we do not quote a price without understanding the project. Savings from automation: значительная экономия по сравнению с ручным управлением.
How to Set Up SP-API Authentication in 5 Steps
- Register a developer account on Amazon Developer Portal.
- Create an IAM user with the
AmazonSellingPartnerAPIFullAccesspolicy. - Register an SP-API application and obtain LWA client keys.
- Perform OAuth2 authorization to get a refresh token.
- Configure IAM roles and store credentials in a secure vault (e.g., AWS Secrets Manager).
Common Mistakes in Self-Integration
- Incorrect IAM role — the app cannot access data.
- Missing retries on quota limits — losing orders.
- Ignoring regional tax differences (e.g., VAT in EU).
- Improper response parsing — breaks when Amazon changes the schema.
We handle all these cases and provide a code guarantee.
Что входит в работу
- Документация: полная схема интеграции, инструкции по эксплуатации.
- Доступы: IAM роли, refresh tokens, SQS очереди.
- Обучение: 2 часа вебинара для ваших менеджеров.
- Поддержка: 3 месяца бесплатного пост-релиза.
О компании
Мы — команда с 7+ лет опыта в AWS и Amazon SP-API. Реализовали 50+ интеграций для продавцов с оборотом до $10 млн. Работаем с 2018 года. Наша экспертиза подтверждена положительными отзывами и успешными кейсами.
How We Accelerate Time to Market
Using ready-made templates and libraries, we reduce typical integration by 40%. For example, setting up listings for a new region takes 1 day instead of 3. This is proven in practice: one client with 20,000 SKUs launched on Amazon UK within 2 weeks.
Contact us for a preliminary assessment of your project — we will prepare a prototype in 2 days. Order a pilot integration on one region: verify quality and ROI.







