---
title: "Οδηγός ενσωμάτωσης Shopify | Tajo"
description: "Πώς το Tajo συνδέει ένα κατάστημα Shopify με το Brevo: ο συγχρονισμός μέσω webhooks της εφαρμογής Shopify, οι κανόνες συγχρονισμού που δημιουργεί ένας πράκτορας και εγκρίνει ένας άνθρωπος, και τα εργαλεία Shopify μέσω MCP."
url: https://tajo.io/gr/docs/ecommerce-platforms/shopify/
markdown: https://tajo.io/gr/docs/ecommerce-platforms/shopify.md
lang: el-GR
author: "Set Noa"
author_url: https://tajo.io/gr/set-noa/
robots: noindex
---

Ζητήστε πρώιμη πρόσβαση

Συμπληρώστε το μικρό σας όνομα και την επαγγελματική διεύθυνση email. Θα σας στείλουμε σύνδεσμο για να επιβεβαιώσετε το αίτημα πρόσβασης στο Tajo.

# Οδηγός ενσωμάτωσης Shopify

[Set Noa](https://tajo.io/gr/set-noa/)

Το Tajo συνδέει το Shopify με το Brevo σε δύο σημεία. Η εφαρμογή Shopify του Tajo μετατρέπει τα webhooks του Shopify σε εγγραφές στο Brevo καθώς φτάνουν. Οι κανόνες συγχρονισμού, που δημιουργεί ένας πράκτορας και εγκρίνει ένας άνθρωπος, μεταφέρουν εγγραφές στο Brevo βάσει χρονοδιαγράμματος. Αυτή η σελίδα καλύπτει και τα δύο και, στη συνέχεια, τα εργαλεία Shopify που προσφέρει το Tajo μέσω MCP.

## Προϋποθέσεις

Πριν ξεκινήσετε την ενσωμάτωση, βεβαιωθείτε ότι διαθέτετε:

- **Κατάστημα Shopify** σε οποιοδήποτε πρόγραμμα (Basic, Shopify, Advanced ή Plus)
- **Λογαριασμό Tajo** (το Tajo βρίσκεται σε πρώιμη πρόσβαση)
- **Λογαριασμό Brevo**, τον προορισμό του συγχρονισμού
- **Πρόσβαση διαχειριστή** στο κατάστημά σας στο Shopify

## Βήμα 1: Συνδέστε το κατάστημά σας στο Shopify

Το Tajo βρίσκεται σε πρώιμη πρόσβαση. Η εφαρμογή Shopify δεν είναι καταχωρημένη στο Shopify App Store και δεν υπάρχει σύνδεσμος αυτοεξυπηρέτησης για εγκατάσταση. [Επικοινωνήστε με την ομάδα](https://tajo.io/gr/contact) για να ρυθμιστεί. Όταν ο χώρος εργασίας σας στο Tajo είναι έτοιμος:

1. Στο Tajo, ανοίξτε το **Connections**.
2. Εισαγάγετε τον τομέα myshopify.com του καταστήματός σας και επιλέξτε **Connect Shopify**. Το Shopify εμφανίζει τα scopes που ζητά το Tajo και σας επιστρέφει στο Tajo όταν τα εγκρίνετε.
3. Δείτε σε τι χρησιμεύει κάθε scope και τι γράφει το Tajo πίσω στο Shopify στο άρθρο [Τα δικαιώματα του Shopify εξηγούνται](https://tajo.io/gr/resources/help/integrations/shopify-permissions-explained/).

## Βήμα 2: Τι στέλνει η εφαρμογή Shopify του Tajo στο Brevo

Η εφαρμογή επαληθεύει κάθε webhook του Shopify, το αποθηκεύει, το βάζει σε ουρά και το επεξεργάζεται αμέσως. Τα θέματα πελατών και προϊόντων περιμένουν πρώτα περίπου τέσσερα δευτερόλεπτα. Δεν υπάρχει παράθυρο παρτίδας. Μια εργασία που αποτυγχάνει επαναλαμβάνεται με backoff.

### Θέματα webhook

Η εφαρμογή Shopify του Tajo εγγράφεται σε αυτά τα θέματα webhook του Shopify:

| Θέματα webhook | Σκοπός |
| --- | --- |
| `customers/create`, `customers/update`, `customers/delete` | Διατήρηση των επαφών Brevo ενημερωμένων |
| `orders/create`, `orders/updated`, `orders/fulfilled`, `orders/cancelled` | Συμβάντα παραγγελιών και μετρήσεις παραγγελιών για το Brevo |
| `orders/paid`, `refunds/create` | Απόδοση και αφαίρεση πόντων πιστότητας |
| `checkouts/create`, `checkouts/update` | Ανάκτηση εγκαταλελειμμένων checkout στο 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 |
| --- | --- |
| Δημιουργία ή ενημέρωση πελάτη | Η επαφή δημιουργείται ή ενημερώνεται με όνομα, email και συναίνεση μάρκετινγκ. Στα επί πληρωμή προγράμματα η εφαρμογή προσθέτει ετικέτες, πλήθος παραγγελιών, ποσό που έχει δαπανηθεί και τελευταία παραγγελία. |
| Διαγραφή πελάτη | Η επαφή απεγγράφεται, δεν διαγράφεται |
| Δημιουργία, ενημέρωση, πληρωμή, εκτέλεση ή ακύρωση παραγγελίας | Η παραγγελία μέσω του orders API του Brevo, καθώς και τα συμβάντα `order_paid`, `order_completed` και `order_cancelled` |
| Δημιουργία επιστροφής χρημάτων | Το συμβάν `order_refunded`. Αν λειτουργείτε πρόγραμμα πιστότητας Brevo μέσω του Tajo, οι πόντοι αφαιρούνται αναλογικά. |
| Πληρωμή παραγγελίας, με πρόγραμμα πιστότητας Brevo | Απόδοση πόντων με τον συντελεστή πόντων ανά δολάριο που έχετε ορίσει |
| Δημιουργία ή ενημέρωση checkout, με email και είδη | Τα συμβάντα `cart_updated` και `cart_abandoned`. Ο αυτοματισμός σας στο Brevo αποφασίζει πότε θα γίνει η αποστολή. |
| Δημιουργία, ενημέρωση ή διαγραφή προϊόντος ή συλλογής | Ο κατάλογος προϊόντων και οι κατηγορίες του Brevo |
| Ενημέρωση επιπέδου αποθέματος | Το απόθεμα του προϊόντος στον κατάλογο του Brevo. Όταν μια παραλλαγή περνά από 0 σε πάνω από 0, κάθε αγοραστής που ζήτησε ειδοποίηση λαμβάνει ένα συμβάν `back_in_stock`, μία φορά ανά αναπλήρωση. |

Η εφαρμογή δεν προσθέτει κουμπί «Ειδοποιήστε με» στο θέμα σας. Ένα αίτημα ειδοποίησης επαναφοράς αποθέματος πρέπει να προέρχεται από τη βιτρίνα σας, για παράδειγμα από ένα κουμπί που προσθέτετε εσείς.

### Υπάρχοντα δεδομένα

Κατά την εγκατάσταση, η εφαρμογή εισάγει τους υπάρχοντες πελάτες σας ως επαφές του Brevo. Ένας πλήρης συγχρονισμός του ιστορικού ξεκινά από τη σελίδα συγχρονισμού της εφαρμογής. Στα επί πληρωμή προγράμματα εισάγει επίσης προϊόντα, συλλογές, εταιρείες και παραγγελίες.

## Βήμα 3: Δημιουργήστε έναν κανόνα συγχρονισμού με τον πράκτορα

Ένας κανόνας συγχρονισμού είναι ένας δηλωτικός ορισμός ενός συγχρονισμού: ένας πόρος προέλευσης, μια ενέργεια Brevo, μια αντιστοίχιση πεδίων και ένα φίλτρο. Δεν τον γράφετε με το χέρι. Τον περιγράφετε, ένας πράκτορας τον δημιουργεί και ένας άνθρωπος τον εγκρίνει.

1. Στο Tajo, ανοίξτε το **Agents** και ζητήστε από τον **Brevo Integration Architect** τον συγχρονισμό σε απλή γλώσσα. Για παράδειγμα: «Στείλτε στο Brevo ως επαφές τους πελάτες του Shopify που αποδέχθηκαν το email μάρκετινγκ.»
2. Ο πράκτορας εξετάζει τον connector του Shopify. Το δείγμα του επιστρέφει ονόματα και τύπους πεδίων, ποτέ τιμές πελατών.
3. Προτείνει έναν κανόνα με αντιστοίχιση πεδίων και φίλτρο, στη συνέχεια επικυρώνει την αντιστοίχιση πεδίων έναντι της ενέργειας του Brevo και εκτελεί δοκιμαστικά (dry run) το προσχέδιο. Κανένα από τα δύο βήματα δεν διαβάζει εγγραφές πελατών.
4. Αποθηκεύει τον κανόνα ως προσχέδιο. Μπορείτε επίσης να ξεκινήσετε από ένα πρότυπο στο **Connections > Syncs and mappings > New sync from template**.
5. Το **Request publish approval** εκτελεί μια προεπισκόπηση στο κατάστημά σας. Διαβάζει το πολύ 10 εγγραφές, δεν γράφει τίποτα στο Brevo και δεν μετακινεί τον cursor. Καταγράφει μόνο πλήθη: εγγραφές που ανακτήθηκαν, που είναι επιλέξιμες, που αντιστοιχίστηκαν και που απορρίφθηκαν από το φίλτρο, καθώς και σφάλματα αντιστοίχισης. Αν η προεπισκόπηση αποτύχει, δεν δημιουργείται έγκριση.
6. Ένας άνθρωπος εγκρίνει το αίτημα στη σελίδα **Approvals**, με γραπτή αιτιολόγηση. Η έγκριση είναι δεμένη με ένα digest SHA-256 του κανόνα και λήγει μετά από 30 λεπτά. Στη συνέχεια, η σελίδα του κανόνα εμφανίζει το **Publish approved version**.

Αν επεξεργαστείτε έναν δημοσιευμένο κανόνα, επιστρέφει σε προσχέδιο. Περνά ξανά από προεπισκόπηση και έγκριση πριν εκτελεστεί ξανά.

### Ένας πραγματικός κανόνας

Αυτό είναι το πρότυπο **Shopify customers -> Brevo contacts** όπως το ορίζει το Tajo:

```ts
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 για αγοραστές που αποδέχθηκαν το μάρκετινγκ κατά το checkout.

### Πότε εκτελείται ένας κανόνας

- Οι κανόνες συγχρονισμού επαφών εκτελούνται από προεπιλογή κάθε 15 λεπτά. Κάθε εκτέλεση ξεκινά από τον cursor του κανόνα.
- Η σελίδα ενός ενεργού κανόνα έχει το κουμπί **Test run (1 batch)**.
- Ένας ενεργός, δημοσιευμένος κανόνας **Shopify orders → Brevo orders** εκτελείται επίσης κάθε 15 λεπτά. Η πρώτη προγραμματισμένη εκτέλεσή του ξεκινά λίγα λεπτά πριν από εκείνη τη στιγμή και δεν στέλνει παλαιότερες παραγγελίες. Κάθε επόμενη εκτέλεση στέλνει τις παραγγελίες που ενημερώθηκαν από την προηγούμενη.
- Οι παλαιότερες παραγγελίες φτάνουν στο Brevo μόνο όταν εκτελέσετε τον κανόνα εσείς: με το **Test run (1 batch)** ή ζητώντας από τον πράκτορα **Sync Operator** να τον εκτελέσει.
- Ένας κανόνας παραγγελιών εκτελείται βάσει χρονοδιαγράμματος μόνο με το φίλτρο opt-in μάρκετινγκ του αγοραστή που έχει το πρότυπο. Ένας κανόνας του οποίου το φίλτρο έχει τροποποιηθεί εκτελείται μόνο όταν τον ξεκινήσετε εσείς.
- Μετά από πέντε διαδοχικές αποτυχημένες εκτελέσεις, ο κανόνας τίθεται σε παύση από μόνος του και η σελίδα του εμφανίζει το τελευταίο σφάλμα. Διορθώστε την αιτία και δημοσιεύστε ξανά.

Κάθε εκτέλεση εμφανίζεται στο ιστορικό εκτελέσεων του κανόνα με τις εγγραφές που διαβάστηκαν, γράφτηκαν και απέτυχαν, καθώς και τη διάρκειά της.

## Τι διαβάζει και τι γράφει ο connector του Shopify

Οι κανόνες συγχρονισμού γράφουν μόνο στον προορισμό, εδώ στο Brevo. Δεν γράφουν ποτέ στο Shopify.

Η εφαρμογή Shopify του Tajo ζητά 12 scopes και κάνει μια σύντομη λίστα εγγραφών στο Shopify, όπως ανακλήσεις συναίνεσης και ετικέτες πιστότητας. Το άρθρο [Τα δικαιώματα του Shopify εξηγούνται](https://tajo.io/gr/resources/help/integrations/shopify-permissions-explained/) παραθέτει κάθε scope και κάθε εγγραφή, μαζί με το τι την προκαλεί.

Οι πράκτορες και οι MCP hosts έχουν πρόσβαση στο κατάστημα μέσω του connector του Shopify:

| Διαβάζει | Γράφει |
| --- | --- |
| Στοιχεία καταστήματος, πελάτες (λίστα και αναζήτηση), παραγγελίες, προϊόντα, metafields πελατών, επίπεδα αποθέματος, κατάσταση μαζικής εξαγωγής | Metafields πελατών και ετικέτες πελατών, καθώς και έναρξη μαζικής εξαγωγής. Κάθε εγγραφή προετοιμάζεται ως πρόταση και εκτελείται μόνο αφού εγκριθεί. |

Ο connector δηλώνει επίσης μια προσαρμογή αποθέματος. Αυτή απαιτεί το scope `write_inventory`, το οποίο η εφαρμογή Shopify του Tajo δεν ζητά.

## Βήμα 4: Χρησιμοποιήστε τα εργαλεία Shopify μέσω MCP

Το Tajo προσφέρει τον connector του Shopify ως διακομιστή MCP στη διεύθυνση `https://alto.tajo.io/mcp/connectors/shopify`. Προσθέστε τον στο Claude Code:

```bash
claude mcp add --transport http tajo-shopify https://alto.tajo.io/mcp/connectors/shopify
```

Ο host εντοπίζει τον διακομιστή OAuth του Tajo και ανοίγει τη σύνδεση στο Tajo. Η πρόσβαση περιορίζεται σε λογαριασμούς πρώιμης πρόσβασης. Ο διακομιστής διαθέτει 12 εργαλεία:

| Εργαλείο | Τι κάνει |
| --- | --- |
| `preview_tajo_shopify_app` | Διαδραστική προεπισκόπηση της εφαρμογής Shopify του Tajo, που αποδίδεται ως MCP UI |
| `get_shop` | Τα στοιχεία του καταστήματος |
| `search_customers` | Αναζήτηση πελατών με τη σύνταξη ερωτημάτων του Shopify, όπως `tag:tajo-vip` ή `total_spent:>100` |
| `list_customers` | Λίστα πελατών, με σελιδοποίηση |
| `list_orders` | Λίστα παραγγελιών, με σελιδοποίηση |
| `list_products` | Λίστα προϊόντων με παραλλαγές, εικόνες και απόθεμα |
| `get_customer_metafields` | Ανάγνωση των metafields ενός πελάτη |
| `get_inventory_levels` | Ανάγνωση του αποθέματος μιας παραλλαγής σε όλες τις τοποθεσίες |
| `poll_bulk_export` | Έλεγχος μιας μαζικής εξαγωγής και λήψη του συνδέσμου λήψης όταν ολοκληρωθεί |
| `calculate_rewards_profile` | Υπολογισμός του επιπέδου, των πόντων και του υπολοίπου επιβραβεύσεων ενός πελάτη από συγχρονισμένα εμπορικά δεδομένα |
| `shopify_propose` | Προετοιμασία μίας εγγραφής στο Shopify ως πρότασης. Δεν αποστέλλεται τίποτα. |
| `shopify_apply` | Εκτέλεση μιας εγκεκριμένης πρότασης |

## Αντιμετώπιση προβλημάτων

- Οι επαφές δεν εμφανίζονται στο Brevo: δείτε το άρθρο [επαφές που λείπουν στο Brevo](https://tajo.io/gr/resources/help/troubleshooting/contacts-missing-in-brevo/).
- Ένας κανόνας που δεν εκτελείται ή έχει τεθεί σε παύση: δείτε το άρθρο [τα δεδομένα δεν συγχρονίζονται](https://tajo.io/gr/resources/help/troubleshooting/data-not-syncing/).

## Επόμενα βήματα

- [Κατανόηση του συγχρονισμού δεδομένων](https://tajo.io/gr/resources/help/getting-started/understanding-data-sync/): πώς συμπεριφέρονται οι κανόνες συγχρονισμού
- [Τα δικαιώματα του Shopify εξηγούνται](https://tajo.io/gr/resources/help/integrations/shopify-permissions-explained/): κάθε scope και κάθε εγγραφή
- [Shopify + Brevo](https://tajo.io/gr/docs/integrations/shopify-brevo): ο οδηγός ενσωμάτωσης
- [Επικοινωνήστε με την ομάδα](https://tajo.io/gr/contact) για να ρυθμιστεί
