What Tariff is Your Customer On?
What Tariff is your customer on?
Tariffs are rate plans for electricity. They describe who the plan applies to, what the rates are, and other information about the plan. Since utilities can have several different tariffs they provide, we capture tariff attributes that can help you find the exact tariff your customer is on.
First, here are some important data fields that will help you narrow the list of tariffs to those relevant to your customer to better find the one they are on.
Service Type
Some utilities serve customers with both natural gas and electricity service. Others focus on one or the other. Arcadia's Signal product is focused on electricity, and while we occasionally have some natural gas and other tariffs in our public database, you should make sure to always explicitly ask for electricity tariffs with your requests.
Customer Class
Utilities publish tariffs for different classes of customers: residential, non-residential, and specialty customers. For this reason, we organize tariffs into three distinct customer classes; residential, general, and special-use:
- Residential - Residential users of electricity
- General - This includes commercial and industrial users.
- Special Use - This category covers agriculture, transport, and lighting.
Types of Tariff
We have four different tariff types:
DEFAULT
- a tariff that is automatically given to this service class. Common for residential customers but rarely used otherwise.ALTERNATIVE
- all tariffs that aren’t the defaultOPTIONAL_EXTRA
- an opt-in extra, such as green power or a smart thermostat program. These aren’t tariffs that a customer can be “on” exclusively, but plans that can “add-on”.RIDER
- a charge or set of charges (rates) that can apply to multiple tariffs. This is often a regulatory-mandated charge.
To find the tariffs that your customer might be on, search with the parameter tariffType=DEFAULT,ALTERNATIVE
to exclude riders but include all the tariffs that customers can enroll on.
Looking for a customer’s tariff
Let’s put this all together. Signal customers use the Tariffs endpoint to search for a set of tariffs.
On this page, we will look for a residential tariff. To retrieve a list of tariffs that may contain your customer's tariff, you will send the following request:
GET /rest/public/tariffs?zipCode=33101&country=US&customerClasses=RESIDENTIAL&tariffTypes=DEFAULT,ALTERNATIVE&serviceTypes=ELECTRICITY&effectiveOn=2017-10-01&sortOn=customerLikelihood,tariffType&sortOrder=DESC,ASC&fields=ext
This is a common example where you retrieve the currently active residential electricity tariffs for a given utility and location. These results are ordered from the most likely to the least likely, meaning the tariffs that are most likely to apply to the location you provide will appear at the top.
Here is the data returned from executing this request:
{
"status": "success",
"count": 2,
"type": "Tariff",
"results": [
{
"tariffId": 3279496,
"masterTariffId": 355,
"tariffCode": "RS-1",
"tariffName": "Residential",
"lseId": 2654,
"lseName": "Florida Power & Light Co",
"priorTariffId": 3279496,
"tariffType": "DEFAULT",
"customerClass": "RESIDENTIAL",
"customerCount": 4000595,
"customerLikelihood": 100.0000,
"territoryId": 3004,
"effectiveDate": "2017-03-01",
"endDate": "2018-01-01",
"timeZone": "US/Eastern",
"billingPeriod": "MONTHLY",
"currency": "USD",
"chargeTypes": "FIXED_PRICE,CONSUMPTION_BASED,MINIMUM",
"chargePeriod": "MONTHLY",
"hasTimeOfUseRates": false,
"hasTieredRates": true,
"hasContractedRates": false,
"hasRateApplicability": false,
"isActive": false
},
{
"tariffId": 3279498,
"masterTariffId": 356,
"tariffCode": "RTR-1",
"tariffName": "Residential - Time of Use",
"lseId": 2654,
"lseName": "Florida Power & Light Co",
"priorTariffId": 3279498,
"tariffType": "ALTERNATIVE",
"customerClass": "RESIDENTIAL",
"customerCount": 196,
"customerLikelihood": 0.0000,
"territoryId": 3004,
"effectiveDate": "2017-03-01",
"endDate": "2018-01-01",
"timeZone": "US/Eastern",
"billingPeriod": "MONTHLY",
"currency": "USD",
"chargeTypes": "FIXED_PRICE,CONSUMPTION_BASED,MINIMUM",
"chargePeriod": "MONTHLY",
"hasTimeOfUseRates": true,
"hasTieredRates": true,
"hasContractedRates": false,
"hasRateApplicability": false,
"isActive": false
}
],
"pageCount": 25,
"pageStart": 0
}
As you can see, the call returned 2 tariffs.
The Tariff endpoint returns a lot of useful data. Let us look at a few key fields and explain why these are important:
customerLikelihood
- The likelihood that a customer is on this tariff compared to all of the other tariffs in the search results. This field is only populated when getting more than one tariff.lseId
- ID of the load-serving entity this tariff belongs to.tariffCode
- The shortcode that the LSE uses as an alternate name for the tariff.tariffName
- Name of the tariff as used by the LSE.masterTariffId
- Tariff data changes periodically. For each revision, we created a new tariff with a uniquetariffId
. Logically, however, each of these new tariffs is just a different version of a single “master” tariff. This family of tariffs is tied together with the masterTariffId property.tariffType
- there are several different tariff types to be mindful of:
Tariff Types | Definition |
---|---|
DEFAULT | A tariff that is automatically given to this service class |
ALTERNATIVE | Opt-in alternate tariff for this service class |
OPTIONAL_EXTRA | Opt-in extra, such as green power or a smart thermostat program |
RIDER | A charge that can apply to multiple tariffs. Often a regulatory-mandated charge. |
Why all those request parameters?
Let’s go over the key parameters we included in our request:
zipCode
andcountry
, ( we do alternatively support anaddressString
but we strongly recommend parsing the address on your side) to filter down to tariffs only available for your customer’s address.customerClasses
, where you will stateRESIDENTIAL
for residential/domestic, and usuallyGENERAL
for commercial and industrial. A third option isSPECIAL_USE
for agriculture or other specialty tariffs.tariffType
ofDEFAULT
, orALTERNATIVE
, which will exclude riders but include all of the tariffs that customers can enroll on.effectiveOn
is important. Setting this ensures only the version of the tariff for the specified date is retrieved. Use the start of the billing range.lseId
if populated, retrieves only the tariffs of a specific utility, or Load Serving Entity(LSE) are retrieved.sortOn
andsortOrder
to sort by the most likely tariff.
There are several defining characteristics of tariffs that you need to understand:
hasTimeOfUseRates
- Indicates whether this tariff contains one or more Time of Use Rates. Many tariffs have pricing that depends on the time of day the energy is being used. We call these times the “time of use” for a tariff. The most common examples are “on-peak” and “off-peak.”hasTariffApplicability
- Indicates that this tariff has additional eligibility criteria, as specified in the TariffProperty collection.hasNetMetering
- Indicates whether this tariff contains one or more net-metered rates.
There you have it, the different methods of finding the tariff your customer is on. In most cases, this information will suffice. However, if you are facing a longer list of tariffs to parse through, there are some additional steps you can take to shorten the list.
Updated 2 months ago