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 a number of 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 in order 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. Genability’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:

  1. Residential - Residential users of electricity
  2. General - This includes commercial and industrial users.
  3. Special Use - This category covers agriculture, transport, and lighting.

Types of Tariff

We have four different tariff types:

  1. DEFAULT - a tariff that is automatically given to this service class. Common for residential customers but rarely used otherwise.
  2. ALTERNATE - all tariffs that aren’t the default
  3. OPTIONAL_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”.
  4. RIDER - a charge or set of charges (rates) that can apply to multiple tariffs. This is often a regulatory mandated charge.

For the purpose of finding 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 which may contain you customer, 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:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
{
    "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 unique tariffId. 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
ALTERNATE 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 and country, ( we do alternatively support an addressString 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 state RESIDENTIAL for residential/domestic, and usually GENERAL for commercial and industrial. A third option is SPECIAL_USE for agriculture or other specialty tariffs.
  • tariffType of DEFAULT, or ALTERNATIVE, which will exclude riders but include all of the tariffs that customers can enroll on.
  • effectiveOn is important. Setting this makes sure 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 and sortOrder 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. For 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.


Previous: Step 1 - Find your customer’s utility

Next: Step 3 - When the list of tariffs is longer