> ## Documentation Index
> Fetch the complete documentation index at: https://docs.attensira.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Shopify

> Connect your Shopify store and the agent rewrites product and collection copy and adds blog articles as unpublished drafts. Nothing reaches shoppers without your yes or a hygiene change your workspace allows.

If you sell on Shopify, the product and collection pages are where shoppers and AI assistants read about what you sell. Connect your store and the agent can fix the copy on those pages itself, and put new articles into your store's blog, instead of handing you text to paste.

## What we change

On a **product**, a **custom collection** or a **smart collection**, three fields and no others:

| Field | In your Shopify admin |
| - | - |
| Description | The product's or collection's description |
| SEO title | **Search engine listing → Page title** |
| SEO description | **Search engine listing → Meta description** |

And in your store's **blog**: new articles, always created unpublished.

That is the whole of it. We never change a price, a variant, a product title, a handle, an image or a theme, and never touch orders, customers or discounts. We never publish or unpublish anything, never delete anything of yours, and never empty out an SEO title or description. Image alt text and structured data are not changed through Shopify.

**What we read:** your products, collections, blogs and shop details. Never orders or customers.

## Which pages it covers

A change is proposed against a page on your storefront at `/products/<handle>` or `/collections/<handle>`. A language prefix (`/fr/products/…`) is read past, and a product reached through a collection (`/collections/sale/products/…`) counts as the product.

On your store's primary domain or its `myshopify.com` address, a handle is matched to the product or collection exactly. The same path on any other domain is treated as a likely match, and the agent reads the page before proposing a change to it.

## When a change goes live

The same [approval mode](/agent/approval) that governs every outward write decides:

* **Ask or Draft mode.** The proposed change waits in your [Inbox](/agent/inbox). Nothing is written to your store until you approve it.
* **You approve it.** We write the field, and shoppers see the new copy.
* **Act mode, hygiene only.** A change goes live without asking only when it is class **safe** (no price, number with a unit, promise or competitor's name), its page is inside the paths you let act mode change, and the workspace is still in act mode at the moment we write. Changes are classed by the same rules as a repository change. The path list starts at `/docs/**` and `/content/**`, which no product or collection page is under, so until you add `/products/**` or `/collections/**` every change to your store waits for your yes.
* **Act mode, anything else.** The change is saved as a **proposal on the product or collection**, and waits in your Inbox for your yes. Shoppers see nothing.

### Proposals in your Shopify admin

Shopify has no unpublished version of a product's description, so a proposal is kept beside the product instead: a metafield in the `attensira` namespace, one per field (`attensira.proposed_description_html`, `attensira.proposed_seo_title`, `attensira.proposed_seo_description`). You can see what is waiting from your own admin.

The item goes back to your Inbox, and its timeline says **A draft is waiting on your site: Synced to Shopify (draft)**, with the reason it was not put live. When you approve it, the live field is written and the proposal metafield is removed. We only ever remove our own `attensira` metafields; a metafield of yours is never deleted.

### If the copy changed since you approved

Immediately before writing, we read the field again. If it no longer holds what the proposal was made against, because someone on your team edited it in the meantime, we do not write over it.

## New articles

An article the agent wrote for your Shopify blog waits in your Inbox for your yes, as every article does. Approving it adds it to the blog **unpublished**, whatever the workspace's approval mode: publishing it is always yours, from your Shopify admin.

* **Which blog.** If the store has one blog, that one. With several, the one whose handle reads like a blog (`news`, `blog`, `blogs`, `journal`, `articles` or `stories`). If none of them does, or more than one does, or the store has no blog at all, nothing is written, and the item comes back to you saying why.
* **No twins.** Approving the same article twice leaves one article: if the unpublished article an earlier approval created is already in that blog, you get that one back. An article you have already published is yours, and is never reported as our draft.
* Once you have published it, **Mark shipped** in the Inbox with its URL. That books the [re-reads](/measure/before-and-after).

## After it ships

A product or collection change is live once it is written. From then, the tracked prompts attached to it are [re-read](/measure/before-and-after) at +7, +14 and +30 days, and the result appears on the item and in [Deliverables](/agent/deliverables) under **What it did**.

## Connecting

1. Open **Customize → Connectors** in your workspace.
2. Find **Shopify** and press **Connect**.
3. Sign in to your store and approve the connection. The sign-in happens at Shopify; we never see your password.
4. Check the path list under the workspace's [approval settings](/agent/approval). It decides which pages act mode may change on its own, and it starts at `/docs/**` and `/content/**`: add `/products/**` and `/collections/**` if you want act mode to put hygiene changes live on your store.

Disconnect from the same place at any time. Disconnecting does not remove proposals already saved in your admin.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.