Ръководство за интеграция с Shopify
Tajo свързва Shopify с Brevo на две места. Приложението Tajo за Shopify превръща webhooks на Shopify в записи в Brevo в момента на пристигането им. Правилата за синхронизация, които агент изгражда и човек одобрява, прехвърлят записи в Brevo по график. Тази страница описва и двете, а след това инструментите за Shopify, които Tajo предоставя през MCP.
Предварителни изисквания
Преди да започнете интеграцията, уверете се, че разполагате със:
- Shopify магазин на който и да е план (Basic, Shopify, Advanced или Plus)
- Акаунт в Tajo (Tajo е в ранен достъп)
- Акаунт в Brevo, дестинацията на синхронизацията
- Администраторски достъп до Вашия Shopify магазин
Стъпка 1: Свържете Вашия Shopify магазин
Tajo е в ранен достъп. Приложението за Shopify не е публикувано в Shopify App Store и няма връзка за самостоятелно инсталиране. Свържете се с екипа, за да го настроите. Когато работното Ви пространство в Tajo е готово:
- В Tajo отворете Connections.
- Въведете домейна myshopify.com на Вашия магазин и изберете Connect Shopify. Shopify показва обхватите, които Tajo изисква, и Ви връща в Tajo, когато ги одобрите.
- Вижте за какво служи всеки обхват и какво Tajo записва обратно в Shopify в обяснение на разрешенията на Shopify.
Стъпка 2: Какво изпраща приложението Tajo за Shopify към Brevo
Приложението проверява всеки webhook на Shopify, съхранява го, поставя го в опашка и веднага го обработва. Темите за клиенти и продукти първо изчакват около четири секунди. Няма прозорец за пакетна обработка. Неуспешна задача се опитва отново с нарастващо забавяне.
Теми на webhooks
Приложението Tajo за Shopify се абонира за тези теми на Shopify webhooks:
| Теми на webhooks | Цел |
|---|---|
customers/create, customers/update, customers/delete | Поддържат контактите в Brevo актуални |
orders/create, orders/updated, orders/fulfilled, orders/cancelled | Събития за поръчки и показатели за поръчки за Brevo |
orders/paid, refunds/create | Начисляват и отнемат точки за лоялност |
checkouts/create, checkouts/update | Възстановяване на изоставени плащания в Brevo |
products/create, products/update, products/delete | Поддържат продуктовия каталог в Brevo актуален |
inventory_levels/update | Поддържа наличността на продуктите в Brevo актуална |
collections/create, collections/update, collections/delete | Поддържат колекциите актуални |
companies/*, company_contacts/*, company_locations/* (create, update, delete) | Синхронизация на B2B компании |
app/uninstalled, app/scopes_update, app_subscriptions/update | Жизнен цикъл на приложението |
Задължителните webhooks на Shopify за поверителност (заявка за клиентски данни, изтриване на клиентски данни, изтриване на данни на магазина) също се обработват. Приложението не се абонира за carts/*. Изоставените колички идват от темите checkouts/*.
Какво пристига в Brevo:
| Събитие в Shopify | В Brevo |
|---|---|
| Създаден или обновен клиент | Контактът се създава или обновява с име, имейл и маркетингово съгласие. При платените планове приложението добавя тагове, брой поръчки, похарчена сума и последна поръчка. |
| Изтрит клиент | Абонаментът на контакта се прекратява, контактът не се изтрива |
| Създадена, обновена, платена, изпълнена или отменена поръчка | Поръчката през API за поръчки на Brevo и събитията order_paid, order_completed и order_cancelled |
| Създадено възстановяване на сума | Събитието order_refunded. Ако провеждате програма за лоялност на Brevo чрез Tajo, точките се отнемат пропорционално. |
| Платена поръчка при програма за лоялност на Brevo | Точки, начислени според Вашата ставка точки за долар |
| Създадено или обновено плащане с имейл и артикули | Събитията cart_updated и cart_abandoned. Вашата автоматизация в Brevo решава кога да изпрати съобщение. |
| Създаден, обновен или изтрит продукт или колекция | Продуктовият каталог и категориите в Brevo |
| Обновено ниво на наличност | Наличността на продукта в каталога на Brevo. Когато даден вариант премине от 0 към повече от 0, всеки купувач, който е поискал известие, получава събитие back_in_stock, веднъж при всяко зареждане. |
Приложението не добавя бутон „Notify me“ към Вашата тема. Заявката за известие при наличност трябва да идва от Вашия онлайн магазин, например от бутон, който добавите.
Съществуващи данни
При инсталиране приложението импортира съществуващите Ви клиенти като контакти в Brevo. Пълна историческа синхронизация се стартира от страницата за синхронизация на приложението. При платените планове тя импортира също продукти, колекции, компании и поръчки.
Стъпка 3: Изградете правило за синхронизация с агента
Правилото за синхронизация е декларативно описание на една синхронизация: ресурс източник, действие в Brevo, съпоставяне на полета и филтър. Не го пишете ръчно. Вие го описвате, агент го изгражда, а човек го одобрява.
- В Tajo отворете Agents и поискайте синхронизацията от Brevo Integration Architect с обикновени думи. Например: „Изпращай клиентите от Shopify, които са приели имейл маркетинг, в Brevo като контакти.“
- Агентът проверява конектора за Shopify. Неговата извадка връща имена и типове на полета, никога стойности на клиенти.
- Той предлага правило със съпоставяне на полета и филтър, след това валидира съпоставянето спрямо действието в Brevo и прави пробно изпълнение на черновата. Нито една от двете стъпки не чете клиентски записи.
- Той запазва правилото като чернова. Можете също да започнете от шаблон в Connections > Syncs and mappings > New sync from template.
- Request publish approval изпълнява преглед спрямо Вашия магазин. Той чете най-много 10 записа, не записва нищо в Brevo и не премества курсора. Записва само бройки: изтеглени записи, допустими, съпоставени и отхвърлени от филтъра, както и грешки при съпоставянето. Ако прегледът е неуспешен, не се създава заявка за одобрение.
- Човек одобрява заявката на страницата Approvals с писмена обосновка. Одобрението е обвързано с SHA-256 отпечатък на правилото и изтича след 30 минути. След това страницата на правилото показва Publish approved version.
Редактирането на публикувано правило го връща в чернова. То отново минава през преглед и одобрение, преди да се изпълни пак.
Реално правило
Това е шаблонът Shopify customers -> Brevo contacts, както Tajo го дефинира:
sourceSlug: "shopify",sourceResource: "customers",destinationSlug: "brevo",destinationAction: "upsert_contact",fieldMap: [ { source: "email", destination: "email", transform: "toLowerCase" }, { source: "first_name", destination: "attributes.FIRSTNAME" }, { source: "last_name", destination: "attributes.LASTNAME" }, { source: "phone", destination: "attributes.PHONE" }, { source: "total_spent", destination: "attributes.TOTAL_SPENT", transform: "toNumber" }, { source: "orders_count", destination: "attributes.ORDERS_COUNT", transform: "toNumber" }, { source: "tajo_email_marketing_consent", destination: "attributes.OPT_IN", transform: "toBoolean" }, { source: "tags", destination: "attributes.SHOPIFY_TAGS" }, { source: "id", destination: "attributes.SHOPIFY_ID", transform: "toString" }, { source: "created_at", destination: "attributes.SHOPIFY_CREATED_AT" }, { source: "updated_at", destination: "attributes.SHOPIFY_UPDATED_AT" },],filterExpression: "($json.tajo_email_marketing_consent === true) && ($json.tajo_email_suppressed === false)",Филтърът е проверката за съгласие. Tajo извлича двете стойности от email_marketing_consent.state на Shopify или от по-стария флаг accepts_marketing. Правило, което записва контакти в Brevo, не може да бъде публикувано без него. Другият шаблон за Shopify, Shopify orders → Brevo orders, записва поръчки в Brevo за купувачи, които са приели маркетинг при плащането.
Кога се изпълнява правилото
- Правилата за синхронизация на контакти се изпълняват на всеки 15 минути по подразбиране. Всяко изпълнение започва от курсора на правилото.
- Страницата на активно правило има бутон Test run (1 batch).
- Активно, публикувано правило Shopify orders → Brevo orders също се изпълнява на всеки 15 минути. Първото му планирано изпълнение започва няколко минути преди този момент и не изпраща по-стари поръчки. Всяко следващо изпълнение изпраща поръчките, обновени след предишното.
- Миналите поръчки стигат до Brevo само когато Вие сами изпълните правилото: с Test run (1 batch) или като помолите агента Sync Operator да го изпълни.
- Правило за поръчки се изпълнява по график само с филтъра на шаблона за маркетингово съгласие на купувача. Правило с редактиран филтър се изпълнява само когато Вие го стартирате.
- След пет последователни неуспешни изпълнения правилото спира само и страницата му показва последната грешка. Отстранете причината, след това публикувайте отново.
Всяко изпълнение се вписва в историята на изпълненията на правилото с прочетените, записаните и неуспешните записи и с продължителността му.
Какво чете и записва конекторът за Shopify
Правилата за синхронизация записват само в дестинацията, тук Brevo. Те никога не записват в Shopify.
Приложението Tajo за Shopify изисква 12 обхвата и прави кратък списък от записи в Shopify, например откази от съгласие и тагове за лоялност. Обяснение на разрешенията на Shopify изброява всеки обхват и всеки запис заедно с това, което го задейства.
Агентите и MCP хостовете достъпват магазина чрез конектора за Shopify:
| Четене | Записване |
|---|---|
| Данни за магазина, клиенти (списък и търсене), поръчки, продукти, метаполета на клиенти, нива на наличност, статус на масов експорт | Метаполета и тагове на клиенти, както и стартиране на масов експорт. Всеки запис се подготвя като предложение и се изпълнява едва след като бъде одобрен. |
Конекторът декларира и корекция на наличността. Тя изисква обхвата write_inventory, който приложението Tajo за Shopify не изисква.
Стъпка 4: Използвайте инструментите за Shopify през MCP
Tajo предоставя конектора за Shopify като MCP сървър на https://alto.tajo.io/mcp/connectors/shopify. Добавете го към Claude Code:
claude mcp add --transport http tajo-shopify https://alto.tajo.io/mcp/connectors/shopifyХостът открива OAuth сървъра на Tajo и отваря входа в Tajo. Достъпът е ограничен до акаунти с ранен достъп. Сървърът предоставя 12 инструмента:
| Инструмент | Какво прави |
|---|---|
preview_tajo_shopify_app | Интерактивен преглед на приложението Tajo за Shopify, визуализиран като MCP UI |
get_shop | Данните на магазина |
search_customers | Търсене на клиенти със синтаксиса за заявки на Shopify, например tag:tajo-vip или total_spent:>100 |
list_customers | Списък с клиенти, на страници |
list_orders | Списък с поръчки, на страници |
list_products | Списък с продукти с варианти, изображения и наличност |
get_customer_metafields | Чете метаполетата на клиент |
get_inventory_levels | Чете наличността на вариант във всички локации |
poll_bulk_export | Проверява масов експорт и връща връзката за изтегляне, когато приключи |
calculate_rewards_profile | Изчислява нивото, точките и наградния баланс на клиент от синхронизираните търговски данни |
shopify_propose | Подготвя един запис в Shopify като предложение. Нищо не се изпраща. |
shopify_apply | Изпълнява одобрено предложение |
Отстраняване на проблеми
- Контактите не се появяват в Brevo: вижте липсващи контакти в Brevo.
- Правило, което не се изпълнява или е спряло само: вижте данните не се синхронизират.
Следващи стъпки
- Разбиране на синхронизацията на данни, как работят правилата за синхронизация
- Обяснение на разрешенията на Shopify, всеки обхват и всеки запис
- Shopify + Brevo, ръководството за интеграцията
- Свържете се с екипа, за да го настроите