Получение переплаты в Quickbooks через веб-коннектор

Я программист для компании, которая продает веб-программный продукт для бизнеса, который позволяет пользователю вести свой бизнес. Он имеет модуль A/R. Наши пользователи используют наше программное обеспечение для ввода платежей от своих клиентов и применяют платежи к своим счетам клиентов в нашей системе.

Наша система также обязана синхронизировать всю финансовую информацию с настольными QuickBoooks нашего пользователя. Мы используем QB Web Connector для этого. Я написал код для отправки ReceivePaymentAdd их QB, когда они вводят платеж в нашей системе, и он работает хорошо. Единственное предупреждение, когда клиент нашего пользователя отправляет им переплату.

Например, их клиент отправляет им чек на 50,00 долларов, но у этого клиента есть только неоплаченный счет на 45,00 долларов.

Теперь я обращаюсь к тому, чтобы уменьшить сумму чека до 45,00 долларов США и создать кредитное авизо в нашей системе на 5 долларов США. Затем импортируйте платеж в размере 45,00 долларов США в свой QB (применительно к счету в 45,00 долларов США), а также импортируйте кредитовое авизо на 5,00 долларов США (в качестве кредитового авизо в QB).

Мы поняли, что этот подход не работает, потому что он сбрасывает их банковский счет (у них в руках чек на 50 долларов, и мы только добавили платеж в размере 45 долларов к их QB).

Я знаю, что могу отправить ReceivePaymentAdd за полные 50 долларов США, и к счетам будет применено только 45 долларов США. Если я сделаю это, их клиент будет иметь кредитный баланс в размере $5,00 в QB. И если я удаляю код, который уменьшает сумму платежа и создает кредитовое авизо в нашей системе, то наша система также будет записывать кредит в размере 5 долларов США для клиента.

Я могу запрограммировать наш экран получения платежей, чтобы позволить нашим пользователям применять такие кредиты клиентов к счетам при вводе нового платежа, но как я могу сказать QB сделать это? Я ничего не вижу в Унифицированном OSR IDN для этого, когда смотрю на запрос ReceivePaymentAdd.

Итак, чтобы продолжить приведенный выше пример, предположим, что наш пользователь сообщает своему клиенту, что у него есть кредит на 5 долларов, и пользователь совершает покупку на 25 долларов и отправляет чек на 20 долларов. Затем у меня будет запрос ReceivePaymentAdd с суммой оплаты чека в размере 20 долларов США и 25,00 доллара США, примененного к счету. Будет ли это работать? Разве QB не выдаст ошибку, что сумма, примененная к счетам, больше, чем заплаченная сумма?

Как мне сказать QB (через веб-коннектор) использовать кредит клиента?

1 ответ

Решение

В этом случае API QuickBooks работает точно так же, как и пользовательский интерфейс. Итак, как бы вы сделали это в пользовательском интерфейсе?

В пользовательском интерфейсе вы изначально добавляете ПОЛУЧЕННУЮ ОПЛАТУ за 50 долларов и применяете только 45 долларов. Это оставляет 5 долларов неиспользованными.

Затем, когда они размещают следующий заказ, вы ДОБАВЛЯЕТЕ ПОЛУЧЕННУЮ ОПЛАТУ в размере 20 долларов США и применяете это к новому счету. Затем вы перейдете к исходному, более старому полученному платежу и ОБНОВИТЕ (измените) ПОЛУЧЕННЫЙ ПЛАТЕЖ, чтобы применить оставшиеся 5 долларов США к новому счету.

Вы будете делать то же самое через API.

Сделать ReceivePaymentMod на первоначальный платеж и примените оставшуюся сумму непримененного платежа к новому счету.

Другие вопросы по тегам