В одном из веб-приложений, над которыми я работаю, есть довольно маленький веб-магазин/корзина покупок. Поскольку клиентская компания физически находится в ЦС и имеет физическое местоположение там, они должны собирать налог с продаж ЦА на все заказы, отправленные в Калифорнию.
Для тех, кто не знает, у CA есть некоторые довольно сложные правила налоговых сборов, в которых, по существу, любая локальная группа может создать "налоговый район" и использовать дополнительный налог на добавленную стоимость в размере около пятнадцати процентов от общего объема базой 7,25%. (Обычно менее 1% дополнительно). Эти районы не должны сопоставляться с какими-либо другими законодательными границами, поэтому вы можете получить половину города, оплачивая дополнительный налог с продаж на 25%, например.
Технически закон требует только, чтобы вы взимали ставку налога с продаж в своем месте в качестве продавца - поэтому, если у меня есть магазин здесь, в Сакраменто, мне нужно только взимать налоги с продаж Sacramento во всех отправленных заказах.
Однако, по различным причинам учета и налоговой декларации, на самом деле легче взимать налог с продаж в том месте, куда отправляется заказ. (Это означает, что любой налог с продаж, возможно, на каждый заказ.)
Итак - мой вопрос. Кто-нибудь знает о скольких способах рассчитать это? Данные, необходимые для работы на самом деле, доступны в различных полузадачих форматах на веб-сайте Государственного совета выравнивания, и мы сбиваем виджет, который пытается определить налог с продаж, основанный на таких вещах, как название города и почтовый индекс. Но мне было интересно, есть ли у кого-нибудь интересные инструменты для решения этой проблемы. (Или любые инструменты вообще, если на то пошло.)
(Мы используем VB и ASP.net, но меня будут интересовать решения для любого языка, главным образом потому, что я увлечен тем, как другие люди решили это.)
Добавление - ответы на некоторые вопросы ниже:
Тим спрашивает, как это может быть "проще". Мне говорят, что налог с продаж таким образом упрощает заполнение налоговой декларации. Я смущаюсь по деталям, но, как я понимаю, если вы не взимаете плату за место доставки, вы должны обосновать, почему вы не сделали ни одного заказа в конце года, а именно: вы должны подтвердить, что нет, мы живем здесь, а не там, поэтому мы взимаем ставку здесь.
Принимая во внимание, что если вы всегда взимаете тариф за доставку, вы можете (по-видимому) просто отложить общую сумму налога с продаж, которую вы собрали в течение всего года на одной строке, и сказать: "налог с продаж был таким.
Казалось бы, государству все равно, что вы делаете. Таким образом, "проще", я действительно имею в виду "проще для бухгалтеров", что, конечно же, совсем не так просто для нас здесь, в команде разработчиков.
Кроме того, история Schnapple Texas - это потенциальное решение. (На самом деле, я поставил эту идею сегодня утром.) CA действительно не волнует, если вы перегружаете налог с продаж, если вы не подзаряжаете и не сдаете все, что собираетесь собрать. Проблема здесь в том, что, в отличие от Техаса (по-видимому), обширные участки СА не находятся в специальном областном районе. Таким образом, хотя мы можем взимать максимальный уровень для всех (что, на мой взгляд, составляет 8,75 на данный момент), большинство клиентов не возражают против нормальной скорости 7,25. И я думаю, я не могу винить их.