Мы не раз сталкивались с ситуацией, когда клиент запустил сайт на 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, платёжными системами и маркетинговыми платформами.
Свяжитесь с нами — обсудим вашу задачу и подберём оптимальное решение. Получите консультацию бесплатно.







