У меня есть веб-приложение с базой данных MySQL, которое мы поддерживаем в облаке, которое мы пытаемся интегрировать с нашей учетной записью QuickBooks Online. Мы хотим синхронизировать данные между базой данных веб-приложения и QuickBooks онлайн, например имена и адреса клиентов. Если они обновят свой адрес в веб-приложении, его можно легко обновить в QuickBooks онлайн с помощью QuickBooks Online API. Однако, если они сообщают нам свой новый адрес по телефону, а мы изменяем его непосредственно в QuickBooks в Интернете, мы не знаем, как сделать так, чтобы это что-то инициировало, чтобы оно автоматически обновляло наше веб-приложение MySQL. Как нам это сделать или узнать об этом процессе?
Как мне обновить базу данных моего веб-приложения, когда в QuickBooks Online внесены изменения?
comment
Какой язык программирования?
- person Keith Palmer Jr.   schedule 12.09.2015
Ответы (1)
В Intuit / QuickBooks есть API, специально предназначенный для этого варианта использования. Из документов:
Операция отслеживания измененных данных (CDC) возвращает список сущностей, которые изменились с заданного времени. Эта операция предназначена для приложения, которое периодически опрашивает службы данных, а затем обновляет свою локальную копию данных объекта.
Документы здесь:
Обычно вы делаете подписанный OAuth HTTP GET
запрос следующим образом:
И вы получите список объектов, которые изменились с указанной даты / времени.
Ваше приложение может запоминать последний раз, когда вы вызывали это, и периодически вызывать этот API, чтобы получать данные, которые изменились с момента последнего вызова.
Вы получите что-то вроде этого:
<IntuitResponse xmlns="http://schema.intuit.com/finance/v3" time="2013-04-03T10:36:19.393Z">
<CDCResponse>
<QueryResponse>
<Customer>...
</Customer>
<Customer>...
</Customer>
</QueryResponse>
<QueryResponse>
<Invoice>...
</Invoice>
<Invoice>...
</Invoice>
</QueryResponse>
</CDCResponse>
</IntuitResponse>
person
Keith Palmer Jr.
schedule
12.09.2015