Handle Taxes
Introduction to Utility Taxes in Arcadia
Arcadia does not collect local utility tax rates, but it provides a straightforward way to incorporate them into your calculations. Before diving into how to use taxes in the Arcadia API, let's cover some essential points about utility taxes.
Arcadia’s Tax Handling Policy
Our source of truth is a utility’s rate book documentation. We model any taxes that a utility publishes. We do not model taxes that are not listed in a utility’s rate book; many local and municipal taxes are not captured.
Utility Tax Primer
- Utility Tax vs. Sales Tax: It's crucial to distinguish between sales tax applied to purchases (like solar systems or batteries) and utility tax applied to utility bills. In most cases, utility taxes are separate rates that apply only to utility bills.
- Utility Tax Rates and Filings: Unlike tariff rates, which must be filed with state utility commissions, jurisdictions are not required to publish their utility tax rates or exemption rules. However, there are resources available, such as a site listing Utility Users Tax (UUT) rates in California. Not all municipalities in California impose a UUT.
- Overlapping Jurisdictions: Depending on the customer's location, multiple jurisdictions (state, county, city, school district, etc.) may apply utility taxes. Arcadia allows you to set multiple tax rates for a single account to accommodate these scenarios.
- Tax Exemptions/Reductions: Some customers may be eligible for tax exemptions or reductions in each jurisdiction. For instance, in one California city, 60% of customers were exempt from the posted UUT rate.
- Tax Application: Rarely, tax rates apply only to a portion of the bill. When identified, such portions are flagged as "AFTER_TAX" to ensure taxes are applied correctly.
- Accurate Tax Sources: The most reliable source for tax rates is a customer's utility bill. Unlike electricity tariffs, tax rates are determined by various jurisdictions and may not always be applied as defined.
Passing Tax Rates into a Calculation
To perform calculations with manually added tax rates, pass the tax rate(s) as a rate input using the chargeType
set to TAX
. Tax rates are calculated based on the subtotal from the calculated amount. You can use either a rate percentage or a specific dollar amount. Optionally, you can set rateName
and rateGroup
to break out the returned cost items.
Here is a sample request for the On-Demand Cost Calculation endpoint:
POST /rest/v1/ondemand/calculate
{
"masterTariffId": 522,
"fromDateTime": "2016-06-15T00:00:00-07:00",
"toDateTime": "2016-07-15T00:00:00-07:00",
"billingPeriod": true,
"propertyInputs":[
{
"keyName":"consumption",
"dataValue":1000
}],
"rateInputs":[
{
"rateGroupName":"Taxes",
"rateName":"Utility Users Tax",
"chargeType":"TAX",
"rateBands":[
{
"rateAmount": 0.075,
"rateUnit":"PERCENTAGE"
}]
}]
}
Here is a snippet of the response where the item quantity reflects the subtotal amount (response edited for length):
{
"tariffRateId": 0,
"rateSequenceNumber": 10000,
"rateGroupName": "Taxes",
"rateName": "Utility User's Tax",
"fromDateTime": "2016-06-15T00:00:00-07:00",
"toDateTime": "2016-07-15T00:00:00-07:00",
"quantityKey": "percentage",
"rateType": "PERCENTAGE",
"rateAmount": 0.075,
"itemQuantity": 243.92856,
"cost": 18.294642,
"chargeType": "TAX"
}
You can also able to pass the absolute value of the TAX amount in lieu of the percentage by using "COST_PER_UNIT" as the "rateUnit".
{
"masterTariffId": 522,
"fromDateTime": "2016-06-15T00:00:00-07:00",
"toDateTime": "2016-07-15T00:00:00-07:00",
"billingPeriod": true,
"propertyInputs":[
{
"keyName":"consumption",
"dataValue":1000
}],
"rateInputs":[
{
"rateGroupName":"Taxes",
"rateName":"Utility Users Tax",
"chargeType":"TAX",
"rateBands":[
{
"rateAmount": 18.29,
"rateUnit":"COST_PER_UNIT"
}]
}]
}
In the response, the item quantity reflects the subtotal amount and the rate amount will be the percentage computed based on the absolute tax amount passed in the call (response edited for length).
{
"tariffRateId": 0,
"rateSequenceNumber": 10000,
"rateGroupName": "Taxes",
"rateName": "Utility User's Tax",
"fromDateTime": "2016-06-15T00:00:00-07:00",
"toDateTime": "2016-07-15T00:00:00-07:00",
"quantityKey": "percentage",
"rateType": "PERCENTAGE",
"rateAmount": 0.075,
"itemQuantity": 243.92856,
"cost": 18.29,
"chargeType": "TAX"
}
Updated 23 days ago