> For the complete documentation index, see [llms.txt](https://docs.samita.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.samita.io/sa-request-a-quote/integrations/omnisend.md).

# Omnisend

Push quote requesters into Omnisend for ecommerce email and SMS automation.

Connecting Omnisend means every quote request also becomes a contact you can follow up with, without anyone copying details by hand.

{% hint style="info" %}
Omnisend is the simplest of the marketing integrations: one API key, and a mapping table that is on screen from the start. If you are looking for a list dropdown like the other providers have, there isn't one — the key alone decides where contacts go.
{% endhint %}

{% hint style="info" %}
Omnisend is listed under the **PRO** plan. Klaviyo, Mailchimp and Shopify are the integrations listed under **FREE**. See [Plan comparison](/sa-request-a-quote/reference/plan-comparison.md).

If your plan does not include it, the **Third-party integration** list shows a disabled **Upgrade** button instead of the settings icon, with a padlock beside it. Selecting the padlock explains which plan the feature needs and links to **Pricing plans** in the app. That is your plan, not a fault.
{% endhint %}

## Step 1 — Get your API key

In your Omnisend account, generate an API key. Omnisend's own guide walks through it: [Generating an API key](https://support.omnisend.com/en/articles/1061890-generating-api-key). The same link sits under the field in the app as the **Find your API key** help text.

Keep the key somewhere safe while you finish the setup.

{% hint style="info" %}
If your quote form collects a phone number, match that field too — Omnisend can follow up by SMS, which often lands better than email with trade buyers. See [Customer information fields](/sa-request-a-quote/quote-form/customer-info-fields.md) for adding the field.
{% endhint %}

## Step 2 — Connect it in the app

{% stepper %}
{% step %}

### Open the Integrations tab

In your Shopify admin, open **SA Request a Quote**, select **Advanced settings**, then open the **Integrations** tab.
{% endstep %}

{% step %}

### Select Omnisend

Under **Third-party integration**, select **Omnisend** — described in the app as "Turn your submissions into your Omnisend customers".

The Omnisend page opens, with a **Third-party** breadcrumb to take you back to the list.

<figure><img src="https://2993310686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIvNtDAMNVIdy5nl9kiOU%2Fuploads%2Fgit-blob-ee4e94f9bbbb3742cb312e69ef436d6b80c75149%2FScreenshot%202026-09-30%20at%2000-25-53.png?alt=media" alt="The Integrations tab of Advanced settings with Omnisend outlined in red"><figcaption><p>Pick the service, then open its settings.</p></figcaption></figure>
{% endstep %}

{% step %}

### Turn on Enable

Switch on **Enable**, the first control on the page. Nothing is sent to Omnisend until you do.
{% endstep %}

{% step %}

### Paste your API key

Paste the key from Step 1 into the **API key** field, the only credential on the page.
{% endstep %}

{% step %}

### Match your form fields

The mapping rows sit straight under the API key field — there is no list to pick first and no button to open them. Read each row left to right:

* **On the left** — the Omnisend field, greyed out because you cannot rename it: **Email**, **First Name**, **Last Name**, **Status**, **Country**, **State**, **City**, **Phone**, **Postal Code**, **Gender**, **Birthdate** and **Tags**.
* **In the middle** — how the value is supplied: **has no value**, **is dynamic value by** (take it from the quote form) or **is fixed value by** (send the same text on every quote).
* **On the right** — the quote form field you are sending, or the fixed text you typed.

So you pick the quote form value on the right to fill the Omnisend field named on the left, never the other way round.

What to watch:

* **Email** is the row you cannot skip, and **is dynamic value by** is the only option its dropdown offers. Its value list shows only email fields from your form, so if it is empty, add an email field to the quote form first.
* **Status** is the one row whose dropdown does not offer **has no value**, so it expects a value like the others. **is fixed value by** is the usual choice, so every quote lead arrives in the same subscription state.
* **Phone** is the row that makes SMS possible. Match it to the phone number your form collects if you plan to use it.
* Everything else is optional. **Tags** works well as **is fixed value by**, so every quote lead arrives tagged the same way.

<figure><img src="https://2993310686-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIvNtDAMNVIdy5nl9kiOU%2Fuploads%2Fgit-blob-5f9ad9ad58a3a62f29817ddad95724faa0caa3e0%2FScreenshot%202026-09-30%20at%2000-26-31.png?alt=media" alt="The Omnisend settings with the field mapping rows outlined in red"><figcaption><p>The mapping runs left to right: your form field on the left, theirs on the right.</p></figcaption></figure>
{% endstep %}

{% step %}

### Save

Changing anything opens the save bar at the top of the page, with **Save** and **Discard changes**. Select **Save** — nothing is stored until you do, and an unsaved page sends nothing. **Discard changes** throws away everything you have typed. A **Changes saved** message confirms the save.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
[Mailchimp](/sa-request-a-quote/integrations/mailchimp.md) shows the same field-mapping table in close-up. Follow it for the mapping only — Mailchimp asks you to pick an audience first, while Omnisend has no list step at all.
{% endhint %}

## Step 3 — Test it

Submit a real quote request from your storefront, then check Omnisend for the new contact. Confirm the fields you matched actually arrived — not just the email address.

{% hint style="warning" %}
Do not skip the test. A connection can look active and still deliver nothing useful if the fields are matched wrongly, and you will not notice until you try to use the data.
{% endhint %}

## Is this the right tool?

Good for stores already running Omnisend automations alongside their catalogue, especially if you want to reach buyers by SMS as well as email.

If you do not already use Omnisend, do not adopt it just for this — [Zapier](/sa-request-a-quote/integrations/zapier.md) connects quote data to almost anything, and [Create a Shopify customer after submit](/sa-request-a-quote/integrations/create-shopify-customer.md) keeps everything inside Shopify on the **FREE** plan.

## If contacts are not arriving

* **Check Enable is still on.** Nothing is sent while it is off.
* **Check the key is still valid.** Regenerating a key in Omnisend breaks the connection until you paste the new one in. Saved keys are shown masked, so paste a fresh one if in doubt.
* **Check the email row is matched.** Without it there is no contact to create.
* **Check Status is set.** Its dropdown does not offer **has no value**, so it is easy to scroll past and save it empty.
* **Check you actually saved.** Omnisend has no Save button in the page header — the save bar only appears once you change something, so it is easy to leave the page with the key typed and nothing stored.

Still stuck? Email <support@samita.io>.

## Next steps

* [Integrations overview](/sa-request-a-quote/integrations/overview.md) — the other tools you can connect
* [Customer information fields](/sa-request-a-quote/quote-form/customer-info-fields.md) — collect the phone number Omnisend needs for SMS
* [Plan comparison](/sa-request-a-quote/reference/plan-comparison.md) — what the PRO plan includes


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.samita.io/sa-request-a-quote/integrations/omnisend.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
