Вычисление налога с продаж в Калифорнии

В одном из веб-приложений, над которыми я работаю, есть довольно маленький веб-магазин/корзина покупок. Поскольку клиентская компания физически находится в ЦС и имеет физическое местоположение там, они должны собирать налог с продаж ЦА на все заказы, отправленные в Калифорнию.

Для тех, кто не знает, у CA есть некоторые довольно сложные правила налоговых сборов, в которых, по существу, любая локальная группа может создать "налоговый район" и использовать дополнительный налог на добавленную стоимость в размере около пятнадцати процентов от общего объема базой 7,25%. (Обычно менее 1% дополнительно). Эти районы не должны сопоставляться с какими-либо другими законодательными границами, поэтому вы можете получить половину города, оплачивая дополнительный налог с продаж на 25%, например.

Технически закон требует только, чтобы вы взимали ставку налога с продаж в своем месте в качестве продавца - поэтому, если у меня есть магазин здесь, в Сакраменто, мне нужно только взимать налоги с продаж Sacramento во всех отправленных заказах.

Однако, по различным причинам учета и налоговой декларации, на самом деле легче взимать налог с продаж в том месте, куда отправляется заказ. (Это означает, что любой налог с продаж, возможно, на каждый заказ.)

Итак - мой вопрос. Кто-нибудь знает о скольких способах рассчитать это? Данные, необходимые для работы на самом деле, доступны в различных полузадачих форматах на веб-сайте Государственного совета выравнивания, и мы сбиваем виджет, который пытается определить налог с продаж, основанный на таких вещах, как название города и почтовый индекс. Но мне было интересно, есть ли у кого-нибудь интересные инструменты для решения этой проблемы. (Или любые инструменты вообще, если на то пошло.)

(Мы используем VB и ASP.net, но меня будут интересовать решения для любого языка, главным образом потому, что я увлечен тем, как другие люди решили это.)

Добавление - ответы на некоторые вопросы ниже:

Тим спрашивает, как это может быть "проще". Мне говорят, что налог с продаж таким образом упрощает заполнение налоговой декларации. Я смущаюсь по деталям, но, как я понимаю, если вы не взимаете плату за место доставки, вы должны обосновать, почему вы не сделали ни одного заказа в конце года, а именно: вы должны подтвердить, что нет, мы живем здесь, а не там, поэтому мы взимаем ставку здесь.

Принимая во внимание, что если вы всегда взимаете тариф за доставку, вы можете (по-видимому) просто отложить общую сумму налога с продаж, которую вы собрали в течение всего года на одной строке, и сказать: "налог с продаж был таким.

Казалось бы, государству все равно, что вы делаете. Таким образом, "проще", я действительно имею в виду "проще для бухгалтеров", что, конечно же, совсем не так просто для нас здесь, в команде разработчиков.

Кроме того, история Schnapple Texas - это потенциальное решение. (На самом деле, я поставил эту идею сегодня утром.) CA действительно не волнует, если вы перегружаете налог с продаж, если вы не подзаряжаете и не сдаете все, что собираетесь собрать. Проблема здесь в том, что, в отличие от Техаса (по-видимому), обширные участки СА не находятся в специальном областном районе. Таким образом, хотя мы можем взимать максимальный уровень для всех (что, на мой взгляд, составляет 8,75 на данный момент), большинство клиентов не возражают против нормальной скорости 7,25. И я думаю, я не могу винить их.

Ответ 1

Техас делает что-то похожее - государственный налог составляет 6,25%, тогда есть локальный налог (например, уездный или что-то еще) 1% и дополнительный налог на "массовый транзит" 1%. Чистый эффект заключается в том, что когда вы отправляетесь куда-нибудь в Техас, вы платите налог с продаж в размере 8,25%. И 8,25% был максимальным. В теории могут быть некоторые районы, которые не взимают локальные налоги, но я никогда не сталкивался с ними. Также теоретически локальный налог может составлять более 1%, а налог на массовый транзит - менее 1%, но опять же я его никогда не видел.

Несколько лет назад, когда я был совладельцем небольшого бизнеса, и мы продавали его в Интернете (загружаемые файлы данных), я пошел на небольшой семинар, проведенный государством для объяснения налогов для нас. Поскольку это был небольшой городок, в котором я был в то время, локальные телевизионные новости пришли, чтобы освежить это событие (это было скучно городу).

Либо я, либо кто-то еще спросил в какой-то момент: "Знаете, поскольку это сложно определить все эти налоговые вещи, и это, как правило, 8,25%, мы не можем просто взимать с вас всех 8,25% и отправить вам это?"

Человек, проводящий семинар, спросил съемочную группу: "Это снимается?"

Как только съемочная группа сказала "нет", он сказал: "Да, вы можете это сделать, у нас не будет проблем с этим"

Форма отправки налога с продаж в то время не была достаточно конкретной, чтобы расстаться с товарами, находящимися в штате, поэтому мы всего лишь заплатили 8,25% всем в Техасе, ничего для всех за пределами Техаса, и все были счастливы.

Таким образом, вы можете сломать себе спину над чем-то, что в любом случае Калифорния не заботится...

Ответ 2

Я согласен, что это очень сложно. Sabrix - это другой сторонний ресурс, у которого есть управляемая налоговая служба для компаний малого и среднего бизнеса, а также крупное корпоративное решение. Не уверен, что такое ценовая модель.

Ответ 3

Моя привязанность была для розничной точки продажи, однако ее можно было адаптировать к решению на основе zip. Поскольку из-за доходности и возможности возврата из других налоговых районов регистры точек продажи должны были иметь полные определения налоговых правил.

Наша транзакция поддерживала неограниченное количество налоговых юрисдикций. Каждая налоговая юрисдикция обеспечивала способ расчета налога на основе концепции таблицы, как и подоходный налог. Программное обеспечение будет идентифицировать все юрисдикции, которые вступают в игру, и рассчитать соответствующий налог.

Например, у Нью-Йорка есть налог на роскошь, который входит в игру по отдельным предметам, стоимость которых превышает 110 долларов США (это было регрессивное обвинение в ставке на первые 109,99 доллара США), а локальные округа имеют налоги, поэтому мы смогли определить:

Auth  Start$  End$    Rate  Base    
NY    0       109.99  0%    $0.00
NY    110.00  -       4%    $4.40
NYALB 0       -       4%    $0.00

Таким образом, продажа предмета в размере 50 долларов США в Олбани привела к 4% -ному уплате в 2 доллара США - ставка NYALB составила 4%, а ставка NY 0% была в силе. Продажи в размере 120 долларов США дают эффективный 8-процентный налог в размере 9,60 доллара США - курс NYALB в размере 4% и норму NY в размере 4% от суммы в размере или выше 110 + 4,40.

В Колорадо есть один поселок, который имеет налог на ПИФ, который в дополнение к государственному и уездному налогу и сам облагается налогом.

Состояние раундов Айдахо, основанных на правиле .002 - если расчетный налог равен 4.002, тогда налог должен быть 4.01. Некоторые юрисдикции всегда округляются. Для каждой юрисдикции мы применяем правило округления для дальнейшей обработки налога: Up, Down,.005 и .002.

Я нашел, что организация налоговых данных в этом режиме является наиболее гибкой, если вы заинтересованы в поддержании собственных налоговых правил.

Но, как уже упоминалось выше, есть службы, предоставляющие вам налоговые данные. Вам просто нужно выяснить, как его интегрировать.

EDIT: Налоговые каникулы... У нас тоже была поддержка, просто добавлена ​​отдельная таблица с датами начала и окончания отпуска для юрисдикции. В течение этих дат налоговый двигатель просто выплюнул бы нуль.

Ответ 4

Я рассматривал этот вопрос сегодня для своей компании, которая недавно начала продавать онлайн. CA BOE перечисляет налоговые ставки по городу, а не по почтовому индексу. Налоговые округа - это город/уезд, поэтому это имеет смысл.

С точки зрения программирования я действительно был бы удивлен, если бы какое-либо государство делало свои налоги на основе почтовых индексов, поскольку почтовые индексы могут включать в себя несколько городов/округов и даже штатов. Однако, если вы хотите принять участие в этом вопросе, я бы создал таблицу, в которой перечислены город, графство, штат, почтовый индекс и налоговая ставка. Затем посмотрите на эту таблицу по городу, штату и почтовому индексу. Вероятно, вы получите один результат, но в случае нескольких результатов используйте самый высокий уровень. Укажите необходимые для города, штата и налоговые ставки поля, остальные - необязательные.

Вам также понадобится импортировать файлы данных.

Ответ 5

Существуют сторонние ресурсы, которые практически необходимы для такого рода постоянно меняющихся правил.

Здесь один., что SaaS.

Ответ 6

Я использовал Vertex в предыдущем задании для операции почтового заказа, размещенной на iSeries. Мы подключили его к нашей системе заказов.

Vertex использует geocoding для определения налога с продаж. Пятизначный почтовый индекс не является достаточно точным, чтобы найти налог с продаж в таких местах, как Калифорния. Есть некоторые особые экономические области развития (например, новый торговый центр), которые могут иметь свои собственные налоги. В результате налог может применяться только к одному конкретному адресу (для торгового центра).

Vertex периодически обновляется, когда налоги вводятся или изменяются. Кроме того, если есть налоговый отпуск, вам, возможно, придется зайти в таблицы Vertex, чтобы отключить налоги в течение определенного периода времени.

Alram, компания продала 300 миллионов долларов по всем каналам продаж. Нет подсказки относительно цены.

Ответ 7

"Технически закон требует только, чтобы вы взимали ставку налога с продаж в своем месте в качестве продавца - поэтому, если у меня есть магазин здесь, в Сакраменто, мне нужно только взимать налоги с продаж Sacramento на все отправленные заказы.

Однако, по различным причинам учета и налоговой декларации, на самом деле легче взимать налог с продаж в том месте, куда отправляется заказ. (Это означает, что любой налог с продаж, возможно, на каждый заказ).

Кто-нибудь еще видит здесь противоречие? Для меня тривиально просто использовать местоположение продавца и делать с ним - особенно если это удовлетворяет состояние, в котором вообще беспокоиться. Ваш комментарий о том, "на самом деле легче зарядить...", неверен - если бы это было проще, вы бы не задавали вопрос.

Просто мое мнение

Также - что, если это подарок? Покупатель не является адресом судна и не является местом покупки. Мне кажется, что лучше всего использовать одно известное местоположение, если оно удовлетворяет состоянию.

Ответ 8

efileSalesTax.com - это веб-система для подачи налоговых деклараций Калифорнии. Просто введите валовые продажи и не облагаемые налогом продажи (если есть), и система рассчитает всю форму и электронные файлы на возврат в состояние. Это 6,95 долл. США за подачу, со скидками на подачу заявок на подачу наличных или на сумму 199 долл. США в год для неограниченных заявок/неограниченных налогоплательщиков.

Они также поддерживают налог с продаж в Флориде, Иллинойсе и Колорадо.

Ответ 9

Я собираюсь рассказать о нью-йоркских налогах и о том, как я реализовал свой код для обработки налогов, собранных через POS, и отслеживал налоговую отчетность. Многие принципы будут применяться ко многим государствам.

Сначала существует "налоговая юрисдикция" и угадайте, что это не обязательно означает "графство" или "город", и определенно не "почтовый индекс", но я уверен, что он всегда включает в себя "состояние". Поэтому нам нужна таблица db для "налоговой юрисдикции". Эта налоговая юрисдикция необходима, чтобы сообщить налог с продаж, взимаемый на NYS-100. Итак, вы должны отслеживать это, чтобы понять это правильно. Если у меня есть магазин в Рочестере и в Буффало, мне нужно отслеживать сбор налогов как на местном уровне, так и на государственном уровне, чтобы правильно обрабатывать квартальную налоговую форму. Таким образом, счет-фактура на продажу должен получить идентификатор налоговой юрисдикции.

Например, вот налоговые юрисдикции для нового йорка, это вытащили из nys-100, отчет о налогах с продаж .pdf, но в фактически полезной форме: http://embrasse-moi.com/exampleData/new_york_tax_jurisdictions.csv

Что мы, как сообщество, это те же данные для всех 50 состояний.

Таким образом, продажи в магазине тогда относительно легко, у меня есть государственный налог, а локальный налог - для отслеживания. К сожалению, мы должны собирать налоги в зависимости от пункта назначения доставки в Нью-Йорке, а это означает, что мы, по сути, нуждаемся во всех "налоговых юрисдикциях" в нашей базе данных, чтобы быть правильными. Разница в налоговых ставках обычно не превышает 0,75%, но может увеличиваться при рассмотрении исключений, поэтому, чтобы обойти добавление всех локальных налоговых ставок, которые мы играли бы в азартные игры, и использовать ставку по умолчанию в размере 4%, если аудит входит в комиссию скорее всего, будет меньше, чем стоимость полной реализации налоговой ставки и обслуживания, но это зависит от вашего объема.

Затем ставки могут меняться. Таким образом, вам нужна таблица db, чтобы указать дату начала ставки налога и для какой налоговой юрисдикции.

Далее, есть "Исключения", которые соответствуют категории налогов. Мы продаем одежду, а освобождение обычно предоставляется за "одежду и обувь". Поэтому вам нужна таблица db для категорий налогов. Я поместил идентификатор категории налога по умолчанию в свои категории продуктов, который затем записывает категорию налога по умолчанию в продукт при добавлении новых продуктов.

Теперь вы можете добавить свою ставку налога. У меня есть форма, чтобы добавить ставку состояния и сохранить ее в уникальных столбцах в моей конкретной таблице tax_rate db. У меня есть другая форма, чтобы добавить локальный курс, снова помещенный в ту же таблицу tax_rate. Эта ставка относится к категории налогов.

Итак, например, я добавил ставку в размере 4% для штата Нью-Йорк, начиная с 1-1-1900, применительно ко всем категориям налогов. Затем я добавил все налоговые юрисдикции, которые я сценарий вытащил данные из файла выше, дату начала снова 1-1-1900, со ставками в вышеупомянутом файле. Применимо ко всем категориям.

Затем вам нужно сделать то же самое для категории, освобожденной от налогов, 0% для государственных и всех локальных налоговых юрисдикций.

Затем добавим исключения. На самом деле это сейчас немного легче, потому что освобождение находится на государственном уровне только с несколькими налоговыми органами, которые поддерживают это освобождение. Поэтому я добавил новый йорк, 0%, начиная с апреля 2011 года, для максимальной категории одежды в размере 55 долларов США Затем я добавил новый йорк, 4% начиная с октября 2011 года для категории одежды (это отменяет освобождение) Затем я добавил новый йорк, 0%, начиная с апреля 2012 года, для максимальной категории одежды 110 $.

Теперь я должен сделать это и для каждой местной налоговой юрисдикции, но, как я уже сказал, лишь немногие из них предложили освобождение, но функциональность есть.

НАКОНЕЦ при отправке вам необходимо обратиться в налоговую юрисдикцию. Здесь происходит невозможность, однако для моей системы POS я должен попросить "графство", поскольку это будет самый понятный вариант. В Нью-Йорке.. конечно.. Нью-Йорк - это налоговая юрисдикция для графства Бронкс, округа Квинс, Бруклина (иногда называемого кем-то еще), округа и других кутиров, поэтому вы должны знать, когда кто-то упоминает один из Берроуза, который налоговая юрисдикция является "городом Нью-Йорка" или добавляет еще одну таблицу db для поиска округа в налоговую юрисдикцию, которая является честно более правильной, и я, вероятно, должен был это сделать.

Итак, когда вы затем рассчитываете налог на продукт, вы принимаете отпускную цену, категорию налога на продукт, идентификатор состояния и идентификатор налоговой юрисдикции (и дату, если предположить, что это не сейчас). Вы запрашиваете данные налоговой ставки, перечислите ее по дате, а затем опустите каждый элемент и найдите первый, который работает. И если ничего не найдено, я установил ставку по умолчанию, опять же, если местная налоговая юрисдикция не была введена. Будет сделано много утверждений, чтобы сделать это.