Skip to content
Plugins and integrations7 min read

Salla and Zid

Link a Salla store with the official Agentency app and a connection code, or add the chat to a Zid Vitrin theme with one line in the layout file.

Browse topics

What it is

Salla and Zid are the two big Gulf storefront platforms, and both are in the Plugins gallery.

Salla has an official Agentency app in the Salla App Store. The app adds the chat bubble to every page of your store, and you link it to one of your chatbots with a short connection code from the dashboard. No theme code, no API key, and the store's domain is allowed for you.

Zid has no app. You add one script tag to the main layout of your Vitrin theme (Jinja), publish the theme, and the chat bubble is live across the store. The same snippet route stays available for Salla's Twilight themes (Twig) if you prefer to edit the theme yourself.

When you would use it

Use this for a Salla or Zid store where shoppers ask about availability, delivery to their city, or returns. It works equally well for an Arabic-first store — the widget follows the page's own text direction, so it renders right-to-left on an Arabic storefront without any extra setting.

Where to find it

Open Dashboard → Chatbots → your chatbot → Integrations → Plugins.

Before you start

  • Confirm the chatbot is Active, and set its main language under the chatbot's message settings so greetings match your storefront.
  • For the Salla app: you need to be able to install apps on the store from your Salla dashboard. A live store needs its own domain (for example shop.example.com) connected in Salla. A store that is still on a shared Salla address can only be linked while it is a demo or development store, because linking allows the whole shared address for your chatbot.
  • For a snippet (Zid, or Salla without the app): you need access to the store's theme source — the Salla CLI or theme editor, or Zid's theme tools. Take a copy of the layout file before you edit it, and add every host shoppers can land on to the widget allowlist — your custom domain, its www form, and the platform-provided store address. See Allow the widget on your domains.

Steps

For Salla, with the app:

  1. Open Dashboard → Chatbots → your chatbot → Integrations → Plugins and click the Salla card.
  2. Click Get the app and install the Agentency app on your store from the Salla App Store.
  3. Back on the Salla card, click Generate connection code and copy the code. It works once and expires after a few minutes, so do this when you are ready to paste it.
  4. In your Salla dashboard, open the Agentency app's settings, paste the code into Connection code, and save.
  5. If the Salla card says the store needs its own domain, connect a custom domain to the store in your Salla dashboard, then save the same code in the app's settings again — the card updates on its own.
  6. The Salla card shows Connected with your store's address, and opening it lists the store under Connected websites. Open a live product page and send a test message. Confirm it in Conversations.

If the Salla card shows the theme steps instead of Get the app, the app is not offered on your account yet — use the snippet steps below.

For Salla, with the snippet:

  1. Click the Salla card and click Copy Twig code (under Advanced: add the code manually instead when the app is offered).
  2. Open your Twilight theme project with the Salla CLI or the theme editor.
  3. Open the master layout at src/views/layouts/master.twig.
  4. Paste the snippet inside the <head>, just before the head:start hook.
  5. Save and publish the theme, then test on a live page.

For Zid:

  1. Click the Zid card and copy the code.
  2. Open your Vitrin theme project with Zid's theme tools.
  3. Open the base layout, layout.jinja.
  4. Paste the snippet inside the <head>, right after the vitrin_head tag, so Zid's own head tags load first.
  5. Save and publish the theme, then test on a live page.

What the snippet looks like

Salla — the {# … #} line is a Twig comment telling you where the block belongs:

{# Add inside <head> of src/views/layouts/master.twig, before {% hook 'head:start' %} #}
<script src="https://agentency.com/js/chatbot-widget.js" defer data-widget-token="wt_YOUR_WIDGET_TOKEN" data-api-base-url="https://api.agentency.com" referrerpolicy="strict-origin-when-cross-origin" crossorigin="anonymous"></script>

Zid — the same tag, positioned after the theme's own head output:

{# Add inside <head> of layout.jinja, after {% vitrin_head %} #}
<script src="https://agentency.com/js/chatbot-widget.js" defer data-widget-token="wt_YOUR_WIDGET_TOKEN" data-api-base-url="https://api.agentency.com" referrerpolicy="strict-origin-when-cross-origin" crossorigin="anonymous"></script>

Copy your own from the Plugins drawer; the token above is a placeholder. Where your workflow allows it, prefer adding the tag through the theme's hook rather than editing the core layout directly, so theme updates stay clean.

What you will see

With the Salla app, nothing changes in your theme. Once the code is saved in the app's settings, the chat bubble appears on the home page, category and product pages, and the cart, in the corner set by your chatbot's appearance settings. Uninstalling the app in Salla disconnects the store and removes its domain from the allowlist.

With a snippet, nothing changes in the store's admin — this is a theme change. After you publish, the chat bubble appears in the same places.

On an Arabic storefront the widget mirrors itself: the panel opens from the correct side and text reads right to left, because it follows the direction the page itself declares.

Limits and plan notes

Embedding works on every Agentency plan, Free included, and that includes generating a Salla connection code. Free's message credits still cap how many replies the chat can give each month. You can also put the hosted chatbot link in your store's menu or bio. See Which plans include integrations and the pricing page.

There is no Salla or Zid product sync — not through the app and not through the snippet. They put chat on the store; they do not read your catalogue, stock, or orders. To make the chatbot useful about specific products, crawl your storefront so its pages become knowledge, or connect a Call action that queries a system with live answers, such as the ready-made Salla product and order-status actions.

Zid has no app, so on Zid you add the domain to the allowlist yourself.

Common problems

The connection code expired before I pasted it.

Codes are short-lived and single-use. Click Generate a new code on the Salla card and paste the new one.

I saved the code in Salla but the card still says it is waiting.

Check that you pasted the code into the Agentency app's settings on the store you meant to link, and saved. If the code expired in the meantime, generate a new one and save again.

The snippet is saved but chat is blocked.

The allowlist must contain the host in the shopper's address bar, not the platform's preview or editor address. Add every domain the store answers on. See The widget is blocked.

The layout looks wrong in Arabic.

The widget follows the page direction. If it renders left-to-right on an Arabic store, the storefront page itself is not declaring Arabic — check the theme's language setting. Then set the chatbot's own language so its greeting and buttons match.

I published the theme and the bubble did not change.

Storefront themes are cached at the edge. Hard-refresh, or open the store in a private window.

The chatbot replies in English to an Arabic question.

That is a chatbot setting, not a plugin problem. Set the primary language on the chatbot's message settings.

My theme update wiped the snippet.

You edited the core layout directly. Re-apply it, and where the platform supports it use the theme hook instead so the next update leaves it alone — or, on Salla, switch to the app, which does not live in your theme.

Common questions

Was this article helpful?

Ready to try it on your own content?

Create a free workspace, add a document, and ask the questions your team is tired of answering.