Mailchimp
Renta отправляет строки из вашего хранилища данных в аудиторию Mailchimp как контакты с их merge-полями или как теги на контактах, которые уже есть в аудитории.
Пайплайн пишет в одну аудиторию и находит контакты по email. Контакт, который уже есть в аудитории, сохраняет свой статус подписки, если только вы сами не добавите статус в маппинг.
Аутентификация
Renta подключается к Mailchimp через OAuth. Вы входите в свой аккаунт Mailchimp и разрешаете доступ, после чего Renta работает со всеми аудиториями этого аккаунта.
Renta читает аудитории и merge-поля, чтобы заполнить настройки пайплайна, и записывает контакты и теги, которые доставляют пайплайны.
Учётные данные хранятся в зашифрованном виде, а отозвать доступ можно в любой момент в вашем аккаунте Mailchimp.
Подключение назначения Mailchimp
- Перейдите в раздел Connections > Catalog в левом меню и откройте вкладку Destinations.
- Откройте категорию Email marketing и нажмите карточку Mailchimp.

Нажмите Log in to your Mailchimp account. Mailchimp откроется в той же вкладке.

Войдите в аккаунт, которому принадлежат нужные аудитории. Если Mailchimp попросит код подтверждения, введите его. На следующем экране нажмите Allow. Mailchimp вернёт вас в Renta.

Renta подтверждает выданный доступ и показывает подключённый аккаунт. Завершите настройку:
- Destination name.
Renta подставляет название вашего аккаунта Mailchimp. Замените его на любое удобное имя. Оно используется только в интерфейсе Renta.
Нажмите Save, чтобы завершить.

Новое назначение появится в списке Destinations со статусом Active. Теперь его можно использовать в пайплайнах Reverse ETL.

Подготовка модели данных
Пайплайн Reverse ETL читает данные из модели данных: это SQL-запрос, сохранённый в разделе Data models, который решает, какие строки хранилища синхронизировать и что лежит в каждой строке. Создайте её до пайплайна, потому что списки в маппинге заполняются колонками модели.
Добавьте в запрос email контакта и колонку со стабильным идентификатором строки, например идентификатор клиента. Идентификатор станет уникальным ключом модели: по нему Renta отличает изменённую строку от новой.
-- Контакты, подготовленные для Mailchimp. Запрос возвращает строки, таблица не создаётся.
WITH demo_contacts AS (
SELECT
'mc-demo-0001' AS customer_id,
'james.miller@example.com' AS email,
'James' AS first_name,
'Miller' AS last_name,
'Northwind Traders' AS company,
'pro' AS plan
UNION ALL SELECT 'mc-demo-0002','olivia.johnson@example.com','Olivia','Johnson','Contoso Retail','free'
UNION ALL SELECT 'mc-demo-0003','william.davis@example.com','William','Davis','Fabrikam Inc','enterprise'
)
SELECT * FROM demo_contactsСоздание модели данных
В левом меню откройте Data models и нажмите New model. Затем:
- Source.
Выберите подключение хранилища, к которому пойдёт запрос. - Write your model query.
Вставьте свой SQL. Тип запроса оставьте SQL query. - Run preview.
Проверьте строки и названия колонок. Когда результат устраивает, нажмите Next step.

Для модели, которая питает пайплайны, выберите Reverse ETL only. Если та же модель должна отвечать и на вопросы агентов, выберите один из варианто в с AI agents.

Просмотрите колонки, которые Renta прочитала из запроса, и отметьте ту, что опознаёт строку, в примере это customer_id.

Задайте имя и короткое описание, затем нажмите Create model. Именно это имя вы выберете в списке Data model при создании пайплайна.

Модель появится в списке с областью Reverse ETL и готова к использованию в пайплайне.

Создание пайплайна Mailchimp
Назначение и модель данных должны быть готовы до начала.
В левом меню нажмите New pipeline. На шаге Source переключитесь на Reverse ETL, выберите своё хранилище данных, например Google BigQuery, и нажмите Next step.

Выберите подключение хранилища, в котором лежат ваши модели данных, и нажмите Next step.

На шаге Destination выберите Mailchimp в блоке Already connected и нажмите Next step.

Выберите подключение Mailchimp, созданное ранее. На карточке видны название аккаунта и его дата-центр. Нажмите Next step.

Настройка пайплайна
На последнем шаге выберите данные для пайплайна, аудиторию, которую он заполняет, и то, что Renta туда отправляет.
Модель данных и аудитория
Укажите, какие данные отправлять и в какую аудиторию. От этих двух настроек зависят поля, доступные в маппинге ниже.

- Data model.
Выберите модель для синхронизации. Колонки, доступные в маппинге, берутся из неё. - Audience.
Выберите аудиторию Mailchimp, в которую пишет Renta. Список Renta читает из вашего аккаунта и рядом с каждым названием показывает ID аудитории и число подписанных контактов.
Что отправлять
Выберите, чем станут строки: контактами или тегами.

| Вариант | Описание |
|---|---|
| Audience members | Добавляет контакты в аудиторию и поддерживает их поля в актуальном состоянии. Каждая строка становится одним контактом. |
| Tags | Добавляет тег контактам, которые уже есть в аудитории. Каждая строка ставит один тег одному контакту. |
Статус новых контактов
Эта настройка появляется только для Audience members. Она задаёт статус подписки контактов, которые Renta добавляет в аудиторию.

| Статус | Описание |
|---|---|
| Subscribed | Новые контакты сразу могут получать ваши кампании. Вариант по умолчанию. |
| Pending | Mailchimp отправляет каждому новому контакту письмо со ссылкой подтверждения. Контакт становится подписанным после подтверждения. |
| Unsubscribed | Новые контакты хранятся в аудитории и не получают кампаний. |
| Transactional | Новые контакты получают только транзакционные письма. |
Контакт, который уже есть в аудитории, сохраняет свой статус. Renta меняет его, только если вы добавите в маппинг поле Subscription status.
Поведение при удалении строки
Укажите, что происходит в Mailchimp, когда строка пропадает из модели данных. Renta никогда не удаляет контакт безвозвратно.

| Вариант | Доступен для | Описание |
|---|---|---|
| Ignore | Audience members, Tags | Контакт и его теги остаются как есть. Вариант по умолчанию. |
| Unsubscribe | Audience members | Переводит контакт в статус unsubscribed. Контакт и его данные остаются в аудитории. Контакты, которые уже отписаны, очищены, в архиве или отсутствуют, остаются как есть. |
| Archive | Audience members | Архивирует контакт. Mailchimp сохраняет его данные, и контакт возвращается в аудиторию, когда его строка появляется снова. |
| Remove tag | Tags | Снимает тег с контакта. Контакт остаётся в аудитории. |
Маппинг полей
Свяжите колонки модели данных с полями Mailchimp. Email address всегда стоит первой строкой и не удаляется: по нему Mailchimp находит контакт.

| Тип маппинга | Описание |
|---|---|
| Standard | Берёт значение из колонки модели данных. |
| Static | Записывает одно и то же фиксированное значение в каждый контакт. |
| Variable | Записывает значение самой синхронизации: например, имя модели данных или время старта запуска. |
В правом списке сначала идут поля контакта Mailchimp, затем merge-поля выбранной аудитории. Под каждым полем Renta показывает, какое значение ожидает. Уже замапленное по ле показано серым.

| Поле Mailchimp | Что отправлять |
|---|---|
| Email address | Email контакта. Renta приводит его к нижнему регистру. Строка без email отклоняется. |
| Subscription status | Одно из значений subscribed, unsubscribed, cleaned, pending или transactional. Любое другое значение отклоняет строку. |
| Language | Код языка, например en или fr. |
| VIP | true или false. Также принимаются 1, 0, yes и no. |
| Email format | html или text. |
| Tags | Список имён тегов, JSON-массив или строка через запятую. Теги добавляются к контакту, существующие теги остаются. |
| Текстовые merge-поля, телефон, ZIP, URL и изображение | Любое текстовое значение. |
| Числовые merge-поля | Число. |
| Merge-поля с датой | Дата, например 2024-01-15. Произвольный текст не принимается. |
| Merge-поля с днём рождения | Дата или месяц и день, записанные в порядке месяц/день, например 12/31. Renta записы вает значение в том формате, который задан у поля в Mailchimp. |
| Merge-поля dropdown и radio | Один из вариантов, заданных в Mailchimp. Регистр букв не важен. |
| Merge-поля с адресом | По строке на каждую часть: street address, city, state или province, postal code, address line 2 и country. |
Значение, которое не подходит к типу поля, пропускается для этой строки, а остальная строка всё равно доставляется. Mailchimp сохраняет прежнее значение.
Адресу нужны улица, город, штат или провинция и почтовый индекс. Если в строке пуста хотя бы одна из этих частей, Renta не отправляет адрес из этой строки.
Замапленный Subscription status перезаписывает статус и у существующих контактов, в том числе у отписавшихся. Добавляйте его в маппинг, только если ваше хранилище ведёт учёт согласий контактов. Чтобы задать статус только новым контактам, используйте Status for new contacts.
Пустые значения
У каждой строки маппинга своё правило для пустых значений источника. Откройте его по значку шестерёнки рядом со строкой.

| Вариант | Описание |
|---|---|
| Don’t sync null values | Пропускает поле, когда колонка источника пуста, и Mailchimp сохраняет текущее значение. Вариант по умолчанию. |
| Always sync | Очищает поле Mailchimp, когда колонка источника пуста. Подходит, когда хранилище это единственный источник истины для поля. |
Always sync очищает merge-поля и Language. У VIP, Email format, Tags и Subscription status нет пустого состояния, поэтому пустое значение в них всегда пропускается.
Теги
Когда в What would you like Renta to send to Mailchimp? выбрано Tags, в маппинге две обязательные строки: Email address и Tag name. Каждая строка модели данных добавляет один тег одному контакту.