Ask Flux
Help Center
How can we help?

Charge Detail Record (CDR)

Intro

This article gives a definition of the Charge Detail Record (CDR), a fundamental feature of the GreenFlux Billing Engine, and sketches out how CDRs are created and embedded in the billing and invoicing process.

What is a Charge Detail Record (CDR)?

GreenFlux generates a CDR each time it can successfully calculate a cost based on the received transaction data from an online Charge Station after a charging session.

The CDR is a record of the final transaction's information, including first and foremost billing data that customers need for invoicing.

ℹ️

A CDR is not an invoice. Customers can create a CDR data export or use an API connection to their own system (CPO or EMSP) for their invoicing.

You can think of a CDR as a recorded summary of the relevant important transaction data captured during a successful charging session.

CDR example (.json format from Platform API)

{
  "data": {
    "id": "750466ACFB534ECFB8CE24EE338EC4B9",
    "start_date_time": "2023-05-31T08:52:26.0000000+00:00",
    "stop_date_time": "2023-05-31T10:02:15.0000000+00:00",
    "auth_id": "PT-EDP-CVA052345-1",
    "auth_method": "WHITELIST",
    "location": {
      "id": "39c53572-6c24-437e-953a-6646836c3f9f",
      "type": "OTHER",
      "publish": true,
      "name": "Teste Jorge Ansiao",
      "address": "Avenida Dr Vitor Faveiro 2",
      "city": "Ansiao",
      "postal_code": "3240",
      "country": "PRT",
      "coordinates": {
        "latitude": "39.913401",
        "longitude": "-8.438951"
      },
      "evses": [
        {
          "uid": "PT-EDP-ETest-Charger-GFXOffi-1",
          "evse_id": "PT*EDP*ETest*Charger*GFXOffi*1",
          "status": "CHARGING",
          "status_schedule": [],
          "capabilities": ["REMOTE_START_STOP_CAPABLE", "RFID_READER"],
          "connectors": [
            {
              "id": "1",
              "standard": "IEC_62196_T2",
              "format": "SOCKET",
              "power_type": "AC_1_PHASE",
              "voltage": 230,
              "amperage": 16,
              "max_electric_power": 7400,
              "tariff_id": "Test-ToU-EDP-17Apr",
              "last_updated": "2023-05-26T12:27:38.0000000+00:00"
            }
          ],
          "directions": [],
          "parking_restrictions": [],
          "last_updated": "2023-05-31T08:52:37.0000000+00:00"
        }
      ],
      "directions": [],
      "operator": {
        "name": "EDP Comercial"
      },
      "suboperator": {
        "name": "EDP Comercial"
      },
      "auth_rules": [],
      "owner": {
        "name": "EDP Comercial"
      },
      "facilities": [
        "RESTAURANT",
        "CAFE",
        "SUPERMARKET",
        "NATURE",
        "BUS_STOP",
        "WIFI"
      ],
      "time_zone": "Europe/Lisbon",
      "opening_times": {
        "regular_hours": [
          {
            "weekday": 7,
            "period_begin": "2024-07-22T09:00:00.0000000+02:00",
            "period_end": "2024-07-22T10:00:00.0000000+02:00"
          },
          {
            "weekday": 6,
            "period_begin": "2024-07-22T08:00:00.0000000+02:00",
            "period_end": "2024-07-22T09:00:00.0000000+02:00"
          },
          {
            "weekday": 5,
            "period_begin": "2024-07-22",
            "period_end": "2024-07-22T23:59:00.0000000+02:00"
          },
          {
            "weekday": 4,
            "period_begin": "2024-07-22",
            "period_end": "2024-07-22T23:59:00.0000000+02:00"
          },
          {
            "weekday": 3,
            "period_begin": "2024-07-22",
            "period_end": "2024-07-22T23:59:00.0000000+02:00"
          },
          {
            "weekday": 2,
            "period_begin": "2024-07-22T12:00:00.0000000+02:00",
            "period_end": "2024-07-22T13:59:00.0000000+02:00"
          },
          {
            "weekday": 1,
            "period_begin": "2024-07-22T10:00:00.0000000+02:00",
            "period_end": "2024-07-22T11:59:00.0000000+02:00"
          }
        ],
        "twentyfourseven": false
      },
      "last_updated": "2023-05-31T08:52:37.0000000+00:00"
    },
    "currency": "EUR",
    "charging_periods": [
      {
        "start_date_time": "2023-05-31T09:30:01.0000000+00:00",
        "dimensions": [
          {
            "type": "ENERGY",
            "volume": 0.194
          },
          {
            "type": "TIME",
            "volume": 14.9833
          },
          {
            "type": "ENERGY",
            "volume": 0.194
          },
          {
            "type": "TIME",
            "volume": 14.9833
          }
        ]
      },
      {
        "start_date_time": "2023-05-31T09:45:00.0000000+00:00",
        "dimensions": [
          {
            "type": "ENERGY",
            "volume": 0.261
          },
          {
            "type": "TIME",
            "volume": 15.0167
          },
          {
            "type": "ENERGY",
            "volume": 0.261
          },
          {
            "type": "TIME",
            "volume": 15.0167
          }
        ]
      },
      {
        "start_date_time": "2023-05-31T10:00:01.0000000+00:00",
        "dimensions": [
          {
            "type": "ENERGY",
            "volume": 0.058
          },
          {
            "type": "TIME",
            "volume": 2.2333
          },
          {
            "type": "ENERGY",
            "volume": 0.058
          },
          {
            "type": "TIME",
            "volume": 2.2333
          }
        ]
      },
      {
        "start_date_time": "2023-05-31T08:52:26.0000000+00:00",
        "dimensions": [
          {
            "type": "PARKING_TIME",
            "volume": 7.5833
          },
          {
            "type": "PARKING_TIME",
            "volume": 7.5833
          }
        ]
      },
      {
        "start_date_time": "2023-05-31T09:00:01.0000000+00:00",
        "dimensions": [
          {
            "type": "PARKING_TIME",
            "volume": 15
          },
          {
            "type": "PARKING_TIME",
            "volume": 15
          }
        ]
      },
      {
        "start_date_time": "2023-05-31T09:15:01.0000000+00:00",
        "dimensions": [
          {
            "type": "PARKING_TIME",
            "volume": 15
          },
          {
            "type": "PARKING_TIME",
            "volume": 15
          }
        ]
      }
    ],
    "total_cost": 14.23,
    "total_cost_incl_vat": 17.5,
    "total_vat": 3.27,
    "total_energy": 0.529,
    "total_time": 1.1636,
    "total_parking_time": 0.6264,
    "last_updated": "2023-05-31T10:02:25.0000000+00:00",
    "total_retail_cost": 14.23,
    "total_retail_cost_incl_vat": 17.5,
    "total_retail_vat": 3.27,
    "retail_package_id": "CT_4KBRPNH0BFEV7LB7DMB9AB3KLE",
    "customer_external_id": "PT-EDP-199965854",
    "driver_external_id": "PT-EDP-199965854",
    "emsp_party_id": "EDP",
    "emsp_country_code": "PT",
    "emsp_external_id": "ptedp",
    "vat": 23,
    "retail_vat": 23,
    "charger_type": "Business"
  },
  "status_code": 1000,
  "status_message": "Success",
  "timestamp": "2021-07-15T14:44:31.0000000+00:00"
}

View CDRs in EV Portal

You can keep track of your CDRs in EV Portal.

Go to either:

  • CPO → Billing → Wholesale CDRs.
  • eMSP → Billing → Retail CDRs.
Notion image

In the Charge Detail Records for dropdown, select the CPO you want to see CDRs of.

Notion image

See what columns are available and add/remove them from your CDR view by clicking the downward arrow at the top right of the screen to open the Columns menu (as illustrated above):

You can create a CDR .csv file by clicking the Export CDRs button. Read the article Exporting CDRs to learn more.

From Charge Session to a CDR

A CDR is, in essence, the output of GreenFlux's Billing Engine. For in-depth information, read Wholesale Billing Engine and wholesale tariff configuration and Retail Billing Engine and Retail tariff configuration articles.

CDRs play a crucial role in customers' ability to create invoices based on the transaction information included in the CDR.

How GreenFlux makes a CDR from a Charging Session

 
Notion image

Additional details

  • Meter values are in-session energy measurements (usually in Watt hour).
  • The energy volume used in a session is based on the Start and Stop meter values GreenFlux receives.
  • The duration of the session is based on the Start and Stop timestamps.
 

Additional Resources:

Did this answer your question?
😞
😐
🤩