Tajo reads your store to sync it into Brevo, and writes back to Shopify in a few specific cases. Here is every scope it requests and every write it makes.
Permissions Requested
These are the scopes in Tajo’s Shopify app configuration. Shopify shows the same list when you install.
| Scope | What Tajo uses it for |
|---|---|
read_customers | Sync customers and their marketing consent to Brevo |
write_customers | The customer writes listed below: consent opt-outs, metafields and loyalty tier tags |
read_orders | Order metrics and order events for Brevo contacts, and loyalty points |
read_products | Sync your product catalog to Brevo |
read_inventory | Keep product stock current in Brevo |
read_discounts, write_discounts | Create the discount codes listed below |
read_pixels, write_pixels, read_customer_events | Install a sandboxed web pixel for storefront event tracking |
read_companies | Sync B2B companies to Brevo |
read_store_credit_accounts | Sync each customer’s store credit balance to Brevo as a contact attribute |
Tajo has no write access to orders, products or your theme.
What Tajo Writes to Shopify, and When
Each write below happens only in the situation described.
| Write | When it happens |
|---|---|
| A customer’s email or SMS marketing consent changes from subscribed to unsubscribed | The customer unsubscribes or is blocklisted in Brevo. Tajo registers this Brevo webhook after your first contact sync. A Brevo event never subscribes anyone in Shopify. |
Customer metafields in the brevo namespace: last email open and click, last clicked link, bounces, spam complaints, last SMS delivery, and the time and text (first 255 characters) of the last SMS reply | Brevo’s email and SMS event webhooks are registered for your store |
Customer metafields in the brevo_loyalty namespace (points, tier and tier ID, store credit, voucher count, last loyalty event time) and a loyalty:<tier> tag | You run a Brevo loyalty program through Tajo and a member’s balance or tier changes |
| A single-use discount code | A shopper redeems a loyalty reward they already hold and Brevo did not issue its own code |
| A discount code for a campaign | An agent proposes it and a person on your team approves it. The percentage is capped by your agent settings. |
| A shopper’s own SMS marketing consent | The shopper changes their SMS preference from your storefront |
| A web pixel | You choose to install the tracking pixel in the app, during onboarding or from the pixel settings |
In the Tajo web app, an agent can also propose adding tags or metafields to a Shopify customer. Each proposal waits for a person to approve it. A workflow set up by the Tajo team can make the same writes once it is turned on, without asking each time.
Reviewing Access
In Shopify Admin, go to Settings > Apps and sales channels > Tajo to see the granted scopes at any time.
Revoking Access
Uninstalling Tajo from Shopify revokes its access and stops the sync. Tajo deletes the store’s data from its own database. Contacts already synced remain in your Brevo account.
Privacy
Tajo passes data from Shopify to your own Brevo account. It does not sell data. A customer who has not opted in to a channel in Shopify is added to Brevo blocklisted for that channel, so they cannot receive marketing on it. See contacts missing in Brevo for how consent affects which customers appear.
Next: connect Shopify to Brevo.