Будь-який селер на Amazon стикається з проблемою: ручне керування лістингом товарів на Amazon, цінами та замовленнями на кількох маркетплейсах — пекло, особливо при обороті сотень SKU. Помилки в ціні (на 0.01$ дешевше — втрата продажу, дорожче — бойкот), несинхронізований інвентар (продали на сайті, а на Amazon вже немає), запізнення з обробкою замовлень (метрики падають). Ми автоматизуємо це через Amazon Selling Partner API (SP-API) — сучасну заміну застарілому MWS. Наш досвід: інтеграції для магазинів з каталогом до 50 000 товарів і 3+ регіонами. Гарантуємо стабільну роботу без просадок по метриках — наш стек протестований тисячами продавців. Середня економія від автоматизації — $1.5k–3k на рік за рахунок скорочення ручної праці та зниження помилок. Окупність інтеграції становить 2–3 місяці. Інтеграція з Amazon через SP-API у 2 рази швидша за MWS та дає більше можливостей для управління замовленнями Amazon. Синхронізація ERP з Amazon — один із ключових модулів, який ми впроваджуємо.
Аутентифікація SP-API
SP-API використовує AWS Signature Version 4 та OAuth2 (Login with Amazon). Для роботи потрібні IAM-роль та refresh token. Типовий код на Python:
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'], ) Створення/оновлення лістингу
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, ) Як SP-API вирішує проблему синхронізації цін та залишків?
Amazon не дозволяє безпосередньо завантажувати ціни та залишки з вашого складу — все має йти через API. Ми використовуємо два основні інструменти:
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) Це дозволяє оновлювати ціни залежно від конкурентів та своєчасно повідомляти про нестачу товару на FBA. Amazon FBA інтеграція — наш профільний напрямок.
Чому SP-API краще за MWS?
| Критерій | MWS | SP-API |
|---|---|---|
| Протокол | SOAP/XML | REST/JSON |
| Аутентифікація | Простий токен | AWS SigV4 + LWA OAuth2 |
| Сповіщення | Polling | Push через SQS |
| Регіони | Один endpoint окремо | Єдина авторизація, різні endpoints |
SP-API дає в 3 рази менше помилок тайм-ауту та підтримує більше кінцевих точок (наприклад, A+ Content, FBA Inbound). Він також у 2 рази швидший при масових операціях.
Відмовостійкість та сповіщення
Використовуємо ретраї з exponential backoff, пул токенів та моніторинг квот SP-API. Якщо Amazon повертає TooManyRequests, черга запитів не втрачається — дані зберігаються в Redis і поступово відправляються. Ми також налаштовуємо SQS для push-повідомлень про нові замовлення:
from sp_api.api import Notifications notif = Notifications(credentials=credentials) notif.create_subscription( notificationType='ORDER_CHANGE', body={ 'payloadVersion': '1.0', 'destinationId': SQS_QUEUE_ARN, } ) Згідно з документацією SP-API (https://developer-docs.amazon.com/sp-api/docs), push-сповіщення доставляються менш ніж за 5 секунд.
Отримання замовлень
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'], ) Специфіка регіонів
Amazon має регіональні endpoint'и: sellingpartnerapi-na.amazon.com (US/CA/MX), sellingpartnerapi-eu.amazon.com (EU/UK/IN), sellingpartnerapi-fe.amazon.com (JP/AU). У кожного свої marketplace_id. У проекті ми автоматично визначаємо регіони Amazon за ASIN або вказуємо вручну.
Процес інтеграції та терміни
| Етап | Тривалість, дні | Деталі |
|---|---|---|
| Аналітика | 2–3 | Вивчаємо асортимент, регіони, поточні больові точки |
| Проектування | 3–5 | Обираємо архітектуру (моноліт чи мікросервіси), вирішуємо питання IAM |
| Розробка | 10–15 | Кодимо, покриваємо unit- та інтеграційними тестами з пісочницею Amazon |
| Тестування | 3–5 | На staging з реальними даними (без впливу на продакшен) |
| Деплой | 2–3 | Викатка в production, моніторинг 48 годин |
Орієнтовний термін: 20–30 робочих днів (залежно від кількості регіонів та складності логістики). Вартість розраховується індивідуально — ми не називаємо ціну без знайомства з проектом.
Що входить у роботу
- Документація API та інструкція з експлуатації
- Налаштування доступів (IAM, LWA, refresh token)
- Навчання персоналу роботі з системою
- Технічна підтримка 24/7 протягом першого місяця
- Гарантія на код — 6 місяців безкоштовних виправлень
Як налаштувати аутентифікацію SP-API за 5 кроків?
- Зареєструйте обліковий запис розробника на Amazon Developer Portal.
- Створіть IAM-користувача з політикою
AmazonSellingPartnerAPIFullAccess. - Зареєструйте SP-API додаток та отримайте LWA-клієнтські ключі.
- Виконайте OAuth2-авторизацію для отримання refresh token.
- Налаштуйте ролі IAM та збережіть credentials у захищеному сховищі (AWS Secrets Manager).
Типові помилки при самостійній інтеграції
- Неправильна IAM-роль — додаток не отримує доступ до даних.
- Відсутність ретраїв при лімітах квот — втрачаються замовлення.
- Ігнорування різниці в податкових правилах регіонів (наприклад, VAT в EU).
- Неправильний парсинг відповідей — вилітає при зміні схеми Amazon.
Ми закладаємо обробку всіх цих кейсів і даємо гарантію на код.
Як ми прискорюємо вихід на ринок?
Завдяки готовим шаблонам та бібліотекам, ми скорочуємо типову інтеграцію на 40%. Наприклад, налаштування лістингів для нового регіону займає 1 день замість 3. Це підтверджує практика: один із клієнтів з 20 000 SKU вийшов на Amazon UK за 2 тижні.
Наша команда має 5+ років досвіду в інтеграції Amazon, реалізовано понад 50 проектів. Ми оцінимо ваш проект безкоштовно — пишіть нам. Замовте пілотну інтеграцію на одному регіоні: переконайтеся в якості та окупності. У вартість входить повний цикл: від аналізу до підтримки.







