2012-03-13 6 views
2

Я пытаюсь использовать API QuickBooks для синхронизации списка продуктов моей компании с списком товаров в книге. Я прошел через систему OAuth, чтобы иметь возможность делать запросы на чтение/запись в API, но всегда получаю сообщение об ошибке при попытке обновить объект.Ошибка QuickBooks API при обновлении

Ссылка, которую я использовал, - here, а в рамках той же документации - ссылка на получение объекта, который я смог использовать просто отлично. Это XML that I'm sending. Я несколько раз настраивал XML на несколько часов безрезультатно.

Сообщение об ошибке, которое я получаю, это «Название позиции QB уже существует ERI = 420962215». Это ERI - мой идентификатор моего королевства. Кажется, QuickBooks думает, что я пытаюсь добавить новый элемент, когда я пытаюсь изменить существующий. Если я опускаю поле имени или оставляю его нулевым, это также дает мне ошибку.

Элемент, который я пытаюсь изменить, был создан в QuickBooks, а затем синхронизирован с помощью диспетчера синхронизации QuickBook. Затем я аутентифицировал свое приложение в этой книге и смог легко прочитать данные. У меня проблема только при попытке написать. Мне еще нужно попытаться создать или удалить объект, так как я останавливаюсь при обновлении.

Я пытаюсь просто создать простую форму на сайте моей компании, которая ударит по API и обновит данные при сохранении, но я не могу найти способ этой ошибки.

Любая помощь была бы принята с благодарностью. У меня начались проблемы в пятницу, и я чувствую, что сейчас кружась кругами. Я нашел библиотеку QuickBooks/PHP и попытался просмотреть ее, чтобы узнать, могу ли я найти полезную информацию, но мне было слишком сложно найти то, что я искал, так как я думаю, что ошибка - это просто некорректный XML.

Я следил за всеми направлениями в ссылке обновления и просто не могу добиться прогресса. Я дважды и тройка проверил, что моя проверка подлинности работает, что URL-адрес правильный, что я отправляю POST, а не GET, и что мой XML соответствует XML, показанному в этом примере.

UPDATE 2012-03-15

Кажется, проблема заключается в том, что API не может обновить элемент, который был создан с помощью QuickBooks. Каждый элемент имеет идентификатор и idDomain, который указывает, было ли это сделано через API (NG) или Quickbooks (QB). Пример id/idDomain будет 1/QB или 2556587/NG.

Всякий раз, когда я делал это, я смог полностью обновить элемент, созданный с помощью API, но не через Quickbooks. Изучив Supported Object Reference, я заметил, что обновление/создание сборки элементов указано как бета-версия.

ответ

1

кажется, что то, что я написал в обновлении правильно. Я не могу обновлять элементы, которые были сделаны в quickbooks через API. Я могу читать элементы, созданные в quickbooks, я могу создавать элементы, и я могу редактировать элементы, созданные через API, но редактирование элемента, сделанного в quickbooks через API, возвращает эту ошибку.

0

Несколько вещей:

  • Какой URL вы POSTING к?
  • Можете ли вы показать полный HTTP-ответ, который вы получаете? У IDS есть плохая привычка к возврату сообщений об ошибках/кодов, которые иногда неоднозначны , если вы не смотрите на полный ответ XML.
  • Некоторые из этих полей не обновляемые: QtyOnPurchaseOrder, QtyOnSalesOrder
  • Вы знаете, что вы можете использовать только IDS/Sync Manager для приложений вы собираетесь перепродать другие компании, не так ли? т. е. вы не можете использовать его для внутренних/разовых приложений.
  • Вы собираетесь получить гораздо лучшую поддержку, если вы размещаете эти вопросы на форуме разработчиков Intuit в: https://idnforums.intuit.com/
+0

1) Я отправляю сообщение на https://services.intuit.com/sb/item/v2/ 2) К сожалению, я так сильно изменил и изменил код (и отключил мою книгу на данный момент) что я не могу показать полный HTTP-ответ, но это было в значительной степени именно это сообщение об ошибке, код ошибки -3002 и DBErrorCode, которые я не могу вспомнить. 3) Я только пытаюсь обновить имя, описание и цену. 4) Я этого не знал, но посмотрю. 5) Я посмотрел на их форумы, и вопросы остались без ответа так часто, что я пошел сюда вместо этого. – kingcoyote

0

Вы можете подумать о переходе на QBO V3, это лучше и легко работать. есть очень хороший апи, сделанный для этой цели. который вы можете получить здесь. https://github.com/consolibyte/quickbooks-php (Made By: Keith Palmer)

Я использую это и очень доволен этим.

Смежные вопросы