Я пытаюсь использовать API QuickBooks для синхронизации списка продуктов моей компании со списком элементов рабочей книги.Я получил через систему OAuth возможность отправлять запросы на чтение / запись в API, но всегда получаю сообщение об ошибке при попытке обновить объект.
Ссылка, которую я использовал, здесь , и в той же документации есть ссылка на получение объекта, который я смог использовать очень хорошо.Это XML, который я отправляю .Я несколько часов настраивал XML безрезультатно.
Я получаю сообщение об ошибке: " Имя элемента QB уже существует. ERI = 420962215 ".Этот ERI - мой идентификатор царства.Кажется, что QuickBooks думает, что я пытаюсь добавить новый элемент, когда я пытаюсь изменить существующий.Если я опускаю поле имени или оставляю его пустым, это также выдает мне ошибку.
Элемент, который я пытаюсь изменить, был создан в QuickBooks, а затем синхронизирован с помощью диспетчера синхронизации QuickBook.Затем я подтвердил подлинность своего приложения в этой книге и смог легко читать данные.У меня проблема только при попытке написать.Я до сих пор не пытался создать или удалить объект, так как я затормозил при обновлении.
Я пытаюсь просто установить на сайте моей компании простую форму, которая поразит API и обновит данные при сохранении., но я не могу найти способ обойти эту ошибку.
Любая помощь будет принята с благодарностью.У меня начались проблемы в пятницу, и я чувствую, что сейчас просто кружусь.Я нашел библиотеку QuickBooks / PHP и попытался просмотреть ее, чтобы увидеть, могу ли я найти полезную информацию, но она оказалась слишком большой для того, чтобы найти то, что я искал, так как я думаю, что ошибка - это просто неправильный XML.
Я выполнил все указания в справочнике по обновлениям и просто не могу добиться прогресса.Я дважды и трижды проверил, что моя аутентификация работает, что URL правильный, что я отправляю POST, а не GET, и что мой XML соответствует XML, показанному в этом примере.
ОБНОВЛЕНИЕ 2012-03-15
Кажется, проблема в том, что API не может обновить элемент, созданный с помощью QuickBooks.Каждый элемент имеет идентификатор и идентификатор домена, который указывает, было ли это сделано через API (NG) или Quickbooks (QB).Примером id / idDomain будет 1 / QB или 2556587 / NG.
Всякий раз, когда я делал это, я был в состоянии прекрасно обновить элемент, созданный с помощью API, но не один, созданный с помощью Quickbooks.Посмотрев Список поддерживаемых объектов , я заметил, что обновление / создание сборки элемента указано как бета.