1b.app
Скопирована ссылка -

/api/v2/order/set/ Не знаходить Продукт за externalid

/api/v2/order/set/ Не знаходить Продукт за externalid
Такий зовнішній Id точно є, і він правильний, шукав у Продуктах у самій OneBox.
Без масиву "products" процес створюється нормально.

Тут одно з двох:
1) Я не вірно передаю масив. Шість разів перевірив, помилки не бачу. Прохання перевірити вашим оком.
2) Це помилка у API OneBox.

Передаю скріншот з Тулз Хрому, масиву, який я передавав у order/set і Лог з сервера
[2022-07-08 13:50:18]
host: inox-trade.1b.app
url: /api/v2/order/set/
contentID: api-v2-order-set
point: /shop.starter.php
engine_sessionid: 1657277418_1065
data: Array (
[0] => Array (
[workflowid] => 2
[statusid] => 18
[name] => Быстрый заказ: Сергій2
[content] =>
Заказчик: Сергій2
Телефон: 0504131799
Комментарий: Тест!
Товар: Подставка под конвектомат ПП-1
Ссылка на товар: https://inox-trade.com.ua/podstavka-pod-konvektomat-pp-1.html
Цена: 6200.00 грн.
[client] => Array (
[userid] => 604
)
[products] => Array (
[0] => Array (
[productinfo] => Array (
[externalid] => 9454
)
[findbyArray] => Array (
[0] => externalid
)
)
)

)

)

Ответы:

Суханіцький Андрій OneBox CORP
OneBox Corp - Інтегратор
Именная лицензия
Параметры для поиска товара нужно передавать в отдельном массиве
08.07.2022, 17:43

Суханіцький Андрій OneBox CORP
OneBox Corp - Інтегратор
Именная лицензия
Извините, сразу не заметил, у вас заполнено
08.07.2022, 17:43

Суханіцький Андрій OneBox CORP
OneBox Corp - Інтегратор
Именная лицензия
Попробуйте добавить параметр showerrorafterfind - вам покажет найден ли продукт, ну или ошибку
08.07.2022, 17:44

Суханіцький Андрій OneBox CORP
OneBox Corp - Інтегратор
Именная лицензия
И какой ответ вы сейчас получаете при отправке такого запроса?
08.07.2022, 17:47

Суханіцький Андрій OneBox CORP
OneBox Corp - Інтегратор
Именная лицензия
Согласно документации, параметры findbyArray - это параметры того эе продукта.

"id": "id",
"externalid": "externalid",
"articul": "articul",
"findbyArray": [
"externalid",
"articul"
],

В вашем случае как-то вроде закрывается массив сразу после параметра externalid
[productinfo] => Array (
[externalid] => 9454
)
08.07.2022, 17:51

Суханіцький Андрій OneBox CORP
OneBox Corp - Інтегратор
Именная лицензия
То есть массив в вашем случае на 1 товар, должен быть примерно таким:
"productinfo": {
"externalid": "9454",
"findbyArray": [
"externalid",
],
"showerrorafterfind": true, //Это чтобы посмотреть ответ
},
08.07.2022, 17:54

Дякую ) Розібрався.
Масив "findbyArray" мав знаходитися у об'єкті "productinfo". А він в мене знаходився вище.

"products" => [ (object) [
"productinfo" => (object) [
"externalid" => $product_id,
"findbyArray" => [
"externalid"
],
]
]],

Але, тепер повертає помилку:
"Ошибка обновления елемента №0 по счету. Поиск не может вестись по полю externalid. В настройках OneBox отключена настройка Уникальность поля Внешний ID (code1c)".

Що з цим робити?
08.07.2022, 22:49

Суханіцький Андрій OneBox CORP
OneBox Corp - Інтегратор
Именная лицензия

Ралло Сергій Олександрович
Отсутствует писал/а:
Що з цим робити?



В помилці вказана причина "В настройках OneBox отключена настройка Уникальность поля Внешний ID (code1c)"
Вам потрібно увімкнути унікальність поля Зовнішній ID тут

Якщо у вас дублюється значення в цьому полі для деяких продуктів, то при наступному збереженні у вас буде видавати помилку. Або, якщо вам так потрібно, то ви не можете робити оновлення продуктів по цьому полю.
10.07.2022, 16:58

Пожалуйста, присоединяйтесь к диалогу. Если вам есть что сказать - пожалуйста, напишите комментарий. Для входа потребуется мобильный телефон и смс-код для идентификации. Войти и написать комментарий