Мы не раз сталкивались с ситуацией, когда клиент запустил сайт на Wix, а бизнес-процессы упёрлись в синхронизацию: лиды тонут вручную, заказы теряются, платёжный шлюз не стыкуется. Wix — закрытая платформа: нельзя добавить произвольный серверный код или изменить инфраструктуру. Интеграции строятся через два механизма: Velo (бывший Corvid) — встроенная JavaScript-среда на базе Node.js, и Wix Headless API — REST/GraphQL API для работы с данными извне. Wix предоставляет все необходимые инструменты для настройки связи с любым внешним сервисом: от простого вебхука до полноценного headless-решения. Мы настраиваем их под ключ с гарантией стабильности и документацией. Более 50 успешных интеграций Wix с CRM, платежными системами и ERP подтверждают наш опыт.
Какие проблемы решает интеграция Wix с внешними API?
- Потеря лидов — данные с форм не попадают в CRM, менеджеры тратят время на ручной ввод.
- Рассинхронизация каталога — товары на Wix Store не обновляются вместе с учётной системой.
- Отсутствие уведомлений — о новых заказах или регистрациях никто не узнаёт вовремя.
- Ограничения Velo — время выполнения функций до 14 секунд, нельзя устанавливать любые npm-пакеты.
- Сложности с webhooks — верификация подписи JWT, обработка ошибок, повторные попытки.
Наш опыт позволяет обойти эти грабли: мы сделали десятки интеграций для Wix-сайтов разного масштаба — от простых форм до двусторонней синхронизации с ERP.
Как мы настраиваем интеграцию Wix с внешним сервисом?
Мы выбираем механизм под задачу. Ниже — сравнение основных подходов.
| Механизм | Когда использовать | Требуется код | Производительность | Сложность |
|---|---|---|---|---|
| Velo (jsw) | Любая кастомная логика: обработка форм, синхронизация, вызов внешних API. | Да (JavaScript) | Средняя: 14 сек, 256 MB | Высокая |
| Wix Automations | Простые сценарии: отправить данные при событии, вызвать Zapier. | Нет (zero-code) | Низкая: нет обработки ответа | Низкая |
| Wix Headless API | Чтение/запись данных сайта извне (CRM, ERP, мобильное приложение). | Да (любой язык) | Высокая: лимит 1000 запросов/мин | Средняя |
| Webhooks | Уведомление внешней системы о событиях (новый заказ, контакт). | На стороне приёмника | Высокая: асинхронно | Средняя |
Velo: серверный код внутри Wix
Согласно документации Wix, функции выполняются не дольше 14 секунд. Velo позволяет писать серверные функции (jsw-файлы), которые выполняются на серверах Wix и могут обращаться к внешним API. Ключи хранятся в wix-secrets-backend — встроенном хранилище, не в коде.
// backend/crmIntegration.jsw import { fetch } from 'wix-fetch'; import { getSecret } from 'wix-secrets-backend'; export async function syncContactToCRM(contactData) { const apiKey = await getSecret('CRM_API_KEY'); const response = await fetch('https://api.yourcrm.com/v1/contacts', { method: 'POST', headers: { 'Authorization': `Bearer ${apiKey}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ email: contactData.email, name: contactData.name, phone: contactData.phone, source: 'wix_website', }), }); if (!response.ok) { throw new Error(`CRM sync failed: ${response.status}`); } return response.json(); } Функции jsw вызываются с фронтенда через import:
// Клиентский код страницы import { syncContactToCRM } from 'backend/crmIntegration'; $w('#submitButton').onClick(async () => { try { await syncContactToCRM({ email: $w('#emailInput').value, name: $w('#nameInput').value, phone: $w('#phoneInput').value, }); $w('#successMessage').show(); } catch (err) { console.error('Sync error:', err); } }); Этот подход мы рекомендуем, когда нужна полная гибкость: обработка ошибок, ретраи, трансформация данных. Velo в 3 раза быстрее для кастомных сценариев, чем Automations с HTTP-запросами, так как не требует дополнительных вызовов.
Wix Automations + HTTP запросы
Для простых сценариев без кода: Wix Automations (триггеры на события формы, заказа, регистрации) поддерживают действие «HTTP request». Позволяет отправить POST/GET на внешний URL. Это zero-code вариант для отправки в CRM, Zapier или n8n.
Ограничения: нет обработки ответа, нет условной логики, нет повторных попыток при ошибке. Если нужна надёжность — выбирайте Velo.
Wix Headless API: работа с данными сайта извне
Wix предоставляет REST API для доступа к коллекциям данных, заказам, контактам. Аутентификация через OAuth 2.0:
# Получение токена curl -X POST https://www.wixapis.com/oauth2/token \ -H "Content-Type: application/json" \ -d '{ "clientId": "YOUR_CLIENT_ID", "clientSecret": "YOUR_CLIENT_SECRET", "grantType": "client_credentials" }' // Чтение коллекции данных через API $response = Http::withToken($accessToken) ->post('https://www.wixapis.com/wix-data/v2/items/query', [ 'dataCollectionId' => 'Products', 'query' => [ 'filter' => ['active' => true], 'sort' => [['fieldName' => 'createdDate', 'order' => 'DESC']], 'paging' => ['limit' => 50], ], ]); $items = $response->json('dataItems'); Типичный кейс: внешняя CRM или ERP читает заказы из Wix для обработки, или записывает данные в кастомные коллекции сайта.
Webhooks из Wix
Wix поддерживает исходящие вебхуки для событий: новый контакт, новый заказ, изменение статуса заказа. Настройка в панели разработчика (Wix Developers → Webhooks). При наступлении события Wix отправляет POST на указанный URL.
Верификация подписи — через JWT с публичным ключом Wix:
import { verify } from 'jsonwebtoken'; import jwksClient from 'jwks-rsa'; const client = jwksClient({ jwksUri: 'https://www.wix.com/.well-known/jwks.json', }); async function verifyWixWebhook(token) { const decoded = verify(token, async (header, cb) => { const key = await client.getSigningKey(header.kid); cb(null, key.getPublicKey()); }); return decoded; } Без верификации можно получить поддельные запросы — мы всегда реализуем проверку подписи.
Как избежать потери лидов при интеграции Wix?
Главная причина — отсутствие автоматической передачи данных. Лиды остаются в Wix, менеджеры копируют их вручную. Решение: настроить Velo-функцию, которая при отправке формы отправляет данные в CRM. Дополнительно добавляем вебхук на новый контакт — если Velo не сработал, данные уходят через webhook. Это даёт 99,9% гарантии попадания.
Почему Velo не всегда достаточен?
Velo — мощный инструмент, но у него есть ограничения: время выполнения 14 секунд, память 256 MB, отсутствие внешних модулей. Если нужно обработать массовый импорт или тяжёлую логику, лучше использовать Wix Headless API: внешний сервис сам читает данные из Wix и синхронизирует их. Например, при синхронизации каталога в 1000 товаров Velo может не уложиться в таймаут, а Headless API справится за несколько запросов.
Процесс работы: от задачи до деплоя
- Аналитика — разбираем текущие бизнес-процессы, точки интеграции, объём данных. Составляем схему потоков.
- Проектирование — выбираем механизм (Velo, Automations, Headless, webhook), продумываем обработку ошибок и квот.
- Реализация — пишем код, настраиваем секреты, тестируем на песочнице Wix.
- Тестирование — проверяем сценарии: успех, таймаут, дубликаты, потеря соединения.
- Деплой — публикуем сайт, мониторим синхронизацию первые сутки.
Средний срок: от 2 часов до 3 дней в зависимости от сложности.
Что входит в нашу работу
- Документация — описание настроенной интеграции, схема данных, инструкция для вашей команды.
- Код — jsw-функции, конфигурация webhook-приёмника, примеры вызовов.
- Доступы — создание и передача API-ключей, настройка секретов в Wix.
- Обучение — короткая демонстрация работы интеграции для ваших менеджеров.
- Поддержка — 14 дней после запуска: исправляем инциденты, отвечаем на вопросы.
Типовые ошибки и решения
| Ошибка | Решение |
|---|---|
| Хранение ключей в коде | Используйте wix-secrets-backend |
| Игнорирование лимитов | Velo 14 сек, Headless API 1000 запросов/мин. Проектируйте с запасом. |
| Пропуск верификации webhook | Без проверки JWT злоумышленник может имитировать Wix. |
| Синхронизация без идемпотентности | Повторные запросы создают дубликаты. Добавьте проверку по ID. |
Стоимость и сроки
Стоимость рассчитывается индивидуально после анализа задачи. Ориентир:
- Простая интеграция (форма → CRM) — от 2 часов.
- Двусторонняя синхронизация каталога — от 1 дня.
- Комплексное решение с несколькими сервисами — до 5 дней.
Мы гарантируем стабильную работу и своевременный запуск. У нас за плечами более 50 интеграций Wix с CRM, платёжными системами и маркетинговыми платформами.
Свяжитесь с нами — обсудим вашу задачу и подберём оптимальное решение. Получите консультацию бесплатно.







