Перейти к содержимому

Добро пожаловать!

Делитесь и обсуждайте лучший контент и новые маркетинговые идеи, повышайте свой профессиональный уровень и становитесь лучшим маркетологом вместе.

Зарегистрироваться

Этот вопрос был отмечен
1 Ответить
85 Просмотры

Схема основных способов интеграции Odoo 19 с внешними системами

Мы переходим на Odoo 19 Enterprise, и у нас есть старый портал заказов на PHP, который создаёт заказы на продажу в Odoo через XML-RPC по имени пользователя и паролю. Мы также хотим, чтобы наш платёжный шлюз автоматически обновлял счета.

Оставить XML-RPC, перейти на новый API или использовать вебхуки? И как избежать дубликатов заказов, когда портал повторяет запросы?

Аватар
Отменить
Автор Лучший ответ

XML-RPC в Odoo 19 пока работает, но объявлен устаревшим, и в официальной документации сказано, что его планируется удалить в Odoo 22. Всё, что вы меняете сейчас, переводите на API JSON-2.

Перевод портала на JSON-2

  • Создайте отдельного пользователя для интеграции только с необходимыми ему правами.
  • В настройках этого пользователя в разделе «Безопасность учётной записи» создайте «Новый ключ API» с понятным описанием и коротким сроком действия. Срок действия ключа не может превышать трёх месяцев, поэтому запланируйте ротацию.
  • Вызывайте POST /json/2/sale.order/ с последующим именем метода, передавая ключ как токен bearer в заголовке Authorization.
  • Каждый вызов — отдельная транзакция, поэтому не разбивайте один заказ на множество вызовов.

Проверьте также свой тариф: в документации указано, что доступ к внешнему API есть только на тарифах «Индивидуальный».

Как избежать дубликатов

  • Храните номер заказа портала в заказе на продажу, например в поле ссылки клиента или в отдельном поле.
  • Перед созданием ищите этот номер и, если он существует, обновляйте запись вместо создания новой.

Платежи

Сначала проверьте, есть ли ваш шлюз в списке в меню «Настройка» → «Платёжные провайдеры». Встроенный провайдер лучше собственного вебхука. Если его нет в списке, создайте правило автоматизации с триггером «При вебхуке», включите «Журналировать вызовы», держите URL в секрете и протестируйте всё на копии базы данных до запуска.

Аватар
Отменить
Похожие посты Ответы Просмотры Активность
1
окт. 26
65
1
окт. 26
42
1
окт. 26
68
1
окт. 26
72
1
окт. 26
55