openapi: 3.2.0 info: title: CDR Energy Energy Account Billing API version: 1.36.0 description: Specifications for resource endpoints applicable to data holders in the Energy sector. contact: name: Data Standards Body email: contact@dsb.gov.au url: https://dsb.gov.au/ servers: - description: MTLS url: https://mtls.dh.example.com/cds-au/v1 tags: - name: Energy Account Billing x-shortName: Billing description: Energy Account Billing endpoints paths: /energy/accounts/{accountId}/invoices: get: summary: Get Invoices For Account operationId: getEnergyAccountInvoices description: Obtain the invoices for a specific account. x-scopes: - energy:billing:read tags: - Energy Account Billing x-version: '1' parameters: - $ref: '#/components/parameters/PathAccountId' - $ref: '#/components/parameters/QueryNewestDateInvoices' - $ref: '#/components/parameters/QueryOldestDateInvoices' - $ref: '#/components/parameters/QueryPage' - $ref: '#/components/parameters/QueryPageSize' - $ref: '#/components/parameters/HeaderXV' - $ref: '#/components/parameters/HeaderXMinV' - $ref: '#/components/parameters/HeaderXFAPIInteractionId' - $ref: '#/components/parameters/HeaderXFAPIAuthDate' - $ref: '#/components/parameters/HeaderXFAPICustomerIPAddress' - $ref: '#/components/parameters/HeaderXCDSClientHeaders' responses: '200': $ref: '#/components/responses/GetEnergyAccountInvoices200' '400': $ref: '#/components/responses/GetEnergyAccountInvoices400' '404': $ref: '#/components/responses/GetEnergyAccountInvoices404' '406': $ref: '#/components/responses/GetEnergyAccountInvoices406' '422': $ref: '#/components/responses/GetEnergyAccountInvoices422' /energy/accounts/invoices: get: summary: Get Bulk Invoices operationId: listEnergyAccountInvoicesBulk description: Obtain the invoices for all accounts. x-scopes: - energy:billing:read tags: - Energy Account Billing x-version: '1' parameters: - $ref: '#/components/parameters/QueryNewestDateInvoices' - $ref: '#/components/parameters/QueryOldestDateInvoices' - $ref: '#/components/parameters/QueryPage' - $ref: '#/components/parameters/QueryPageSize' - $ref: '#/components/parameters/HeaderXV' - $ref: '#/components/parameters/HeaderXMinV' - $ref: '#/components/parameters/HeaderXFAPIInteractionId' - $ref: '#/components/parameters/HeaderXFAPIAuthDate' - $ref: '#/components/parameters/HeaderXFAPICustomerIPAddress' - $ref: '#/components/parameters/HeaderXCDSClientHeaders' responses: '200': $ref: '#/components/responses/ListEnergyAccountInvoicesBulk200' '400': $ref: '#/components/responses/ListEnergyAccountInvoicesBulk400' '406': $ref: '#/components/responses/ListEnergyAccountInvoicesBulk406' '422': $ref: '#/components/responses/ListEnergyAccountInvoicesBulk422' post: summary: Get Invoices For Specific Accounts operationId: listEnergyInvoicesForSpecificAccounts description: Obtain invoices for a specified set of accounts. x-scopes: - energy:billing:read tags: - Energy Account Billing x-version: '1' parameters: - $ref: '#/components/parameters/QueryNewestDateInvoices' - $ref: '#/components/parameters/QueryOldestDateInvoices' - $ref: '#/components/parameters/QueryPage' - $ref: '#/components/parameters/QueryPageSize' - $ref: '#/components/parameters/HeaderXV' - $ref: '#/components/parameters/HeaderXMinV' - $ref: '#/components/parameters/HeaderXFAPIInteractionId' - $ref: '#/components/parameters/HeaderXFAPIAuthDate' - $ref: '#/components/parameters/HeaderXFAPICustomerIPAddress' - $ref: '#/components/parameters/HeaderXCDSClientHeaders' requestBody: $ref: '#/components/requestBodies/RequestAccountIds' responses: '200': $ref: '#/components/responses/ListEnergyInvoicesForSpecificAccounts200' '400': $ref: '#/components/responses/ListEnergyInvoicesForSpecificAccounts400' '406': $ref: '#/components/responses/ListEnergyInvoicesForSpecificAccounts406' '422': $ref: '#/components/responses/ListEnergyInvoicesForSpecificAccounts422' /energy/accounts/{accountId}/billing: get: summary: Get Billing For Account operationId: getBillingForEnergyAccount description: "Obtain the billing transactions for a specific account.\n\nDeprecated Versions: \n\n- [v1](includes/obsolete/get-billing-for-account-v1.html) - This version is to be ceased to be called by data recipients by September 9th 2024 and **MAY** be decommissioned by data holders as of that date \n- [v2](includes/obsolete/get-billing-for-account-v2.html) - This version **MAY** be retired by September 9th 2024 if v3 is implemented." x-scopes: - energy:billing:read tags: - Energy Account Billing x-version: '3' parameters: - $ref: '#/components/parameters/PathAccountId' - $ref: '#/components/parameters/QueryNewestTime' - $ref: '#/components/parameters/QueryOldestTime' - $ref: '#/components/parameters/QueryPage' - $ref: '#/components/parameters/QueryPageSize' - $ref: '#/components/parameters/HeaderXV' - $ref: '#/components/parameters/HeaderXMinV' - $ref: '#/components/parameters/HeaderXFAPIInteractionId' - $ref: '#/components/parameters/HeaderXFAPIAuthDate' - $ref: '#/components/parameters/HeaderXFAPICustomerIPAddress' - $ref: '#/components/parameters/HeaderXCDSClientHeaders' responses: '200': $ref: '#/components/responses/GetBillingForEnergyAccount200' '400': $ref: '#/components/responses/GetBillingForEnergyAccount400' '404': $ref: '#/components/responses/GetBillingForEnergyAccount404' '406': $ref: '#/components/responses/GetBillingForEnergyAccount406' '422': $ref: '#/components/responses/GetBillingForEnergyAccount422' /energy/accounts/billing: get: summary: Get Bulk Billing operationId: listEnergyAccountBillingBulk description: "Obtain billing transactions for all accounts.\n\nDeprecated Versions: \n\n- [v1](includes/obsolete/get-bulk-billing-v1.html) - This version is to be ceased to be called by data recipients by September 9th 2024 and **MAY** be decommissioned by data holders as of that date \n- [v2](includes/obsolete/get-bulk-billing-v2.html) - This version **MAY** be retired by September 9th 2024 if v3 is implemented." x-scopes: - energy:billing:read tags: - Energy Account Billing x-version: '3' parameters: - $ref: '#/components/parameters/QueryNewestTime' - $ref: '#/components/parameters/QueryOldestTime' - $ref: '#/components/parameters/QueryPage' - $ref: '#/components/parameters/QueryPageSize' - $ref: '#/components/parameters/HeaderXV' - $ref: '#/components/parameters/HeaderXMinV' - $ref: '#/components/parameters/HeaderXFAPIInteractionId' - $ref: '#/components/parameters/HeaderXFAPIAuthDate' - $ref: '#/components/parameters/HeaderXFAPICustomerIPAddress' - $ref: '#/components/parameters/HeaderXCDSClientHeaders' responses: '200': $ref: '#/components/responses/ListEnergyAccountBillingBulk200' '400': $ref: '#/components/responses/ListEnergyAccountBillingBulk400' '406': $ref: '#/components/responses/ListEnergyAccountBillingBulk406' '422': $ref: '#/components/responses/ListEnergyAccountBillingBulk422' post: summary: Get Billing For Specific Accounts operationId: listEnergyAccountBillingForSpecificAccounts description: "Obtain billing for a specified set of accounts.\n\nDeprecated Versions: \n\n- [v1](includes/obsolete/get-billing-for-specific-accounts-v1.html) - This version is to be ceased to be called by data recipients by September 9th 2024 and **MAY** be decommissioned by data holders as of that date \n- [v2](includes/obsolete/get-billing-for-specific-accounts-v2.html) - This version **MAY** be retired by September 9th 2024 if v3 is implemented." x-scopes: - energy:billing:read tags: - Energy Account Billing x-version: '3' parameters: - $ref: '#/components/parameters/QueryNewestTime' - $ref: '#/components/parameters/QueryOldestTime' - $ref: '#/components/parameters/QueryPage' - $ref: '#/components/parameters/QueryPageSize' - $ref: '#/components/parameters/HeaderXV' - $ref: '#/components/parameters/HeaderXMinV' - $ref: '#/components/parameters/HeaderXFAPIInteractionId' - $ref: '#/components/parameters/HeaderXFAPIAuthDate' - $ref: '#/components/parameters/HeaderXFAPICustomerIPAddress' - $ref: '#/components/parameters/HeaderXCDSClientHeaders' requestBody: $ref: '#/components/requestBodies/RequestAccountIds' responses: '200': $ref: '#/components/responses/ListEnergyAccountBillingForSpecificAccounts200' '400': $ref: '#/components/responses/ListEnergyAccountBillingForSpecificAccounts400' '406': $ref: '#/components/responses/ListEnergyAccountBillingForSpecificAccounts406' '422': $ref: '#/components/responses/ListEnergyAccountBillingForSpecificAccounts422' components: parameters: HeaderXFAPIInteractionId: name: x-fapi-interaction-id description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction. in: header schema: type: string QueryNewestDateInvoices: name: newest-date in: query description: Constrain the request to records with issue date at or before this date. If absent defaults to current date. Format is aligned to DateString common type. schema: type: string x-cds-type: DateString HeaderXV: name: x-v description: Version of the API endpoint requested by the client. Must be set to a positive integer. The endpoint should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers). in: header required: true schema: type: string HeaderXFAPICustomerIPAddress: name: x-fapi-customer-ip-address description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls. in: header schema: type: string QueryOldestTime: name: oldest-time in: query description: Constrain the request to records with effective time at or after this date/time. If absent defaults to _newest-time_ minus 12 months. Format is aligned to DateTimeString common type. schema: type: string x-cds-type: DateTimeString PathAccountId: name: accountId in: path description: The _accountId_ to obtain data for. _accountId_ values are returned by account list endpoints. required: true schema: $ref: '#/components/schemas/EnergyAccountId' HeaderXCDSClientHeaders: name: x-cds-client-headers description: The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User-Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls. Not required for unattended or unauthenticated calls. in: header x-conditional: true schema: type: string x-cds-type: Base64 QueryPageSize: name: page-size description: Page size to request. Default is 25 (standard pagination). in: query schema: type: integer default: '25' x-cds-type: PositiveInteger QueryOldestDateInvoices: name: oldest-date in: query description: Constrain the request to records with issue date at or after this date. If absent defaults to _newest-date_ minus 24 months. Format is aligned to DateString common type. schema: type: string x-cds-type: DateString HeaderXFAPIAuthDate: name: x-fapi-auth-date description: The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls. in: header x-conditional: true schema: type: string QueryPage: name: page description: Page of results to request (standard pagination). in: query schema: type: integer default: '1' x-cds-type: PositiveInteger HeaderXMinV: name: x-min-v description: Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The endpoint should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the endpoint **MUST** respond with a `406 Not Acceptable`. in: header schema: type: string QueryNewestTime: name: newest-time in: query description: Constrain the request to records with effective time at or before this date/time. If absent defaults to current date/time. Format is aligned to DateTimeString common type. schema: type: string x-cds-type: DateTimeString schemas: EnergyBillingUsageTransactionV2: type: object required: - timeOfUseType - startDate - endDate - usage - amount properties: servicePointId: description: Unique identifier for the service point. allOf: - $ref: '#/components/schemas/EnergyServicePointId' invoiceNumber: description: The number of the invoice in which this transaction is included if it has been issued. type: string timeOfUseType: description: The time of use type that the transaction applies to. type: string enum: - PEAK - OFF_PEAK - OFF_PEAK_DEMAND_CHARGE - SHOULDER - SHOULDER1 - SHOULDER2 - CONTROLLED_LOAD - SOLAR - AGGREGATE - ALL_DAY description: description: Optional description of the transaction that can be used for display purposes. type: string isEstimate: description: Flag indicating if the usage is estimated or actual. `true` indicates estimate. `false` or absent indicates actual. default: false type: boolean startDate: description: Date and time when the usage period starts. type: string x-cds-type: DateTimeString endDate: description: Date and time when the usage period ends. type: string x-cds-type: DateTimeString measureUnit: type: string description: The measurement unit of rate. Assumed to be `KWH` if absent. default: KWH allOf: - $ref: '#/components/schemas/MeasureUnitEnum' usage: description: The usage for the period in measure unit. A negative value indicates power generated. type: number amount: description: The amount charged or credited for this transaction prior to any adjustments being applied. A negative value indicates a credit. type: string x-cds-type: AmountString calculationFactors: description: Additional calculation factors that inform the transaction. type: array items: type: object required: - value - type properties: value: description: The value of the calculation factor. type: number type: description: The type of the calculation factor. type: string enum: - DLF - MLF adjustments: description: Optional array of adjustments arising for this transaction. type: array items: type: object required: - amount - description properties: amount: description: The amount of the adjustment. type: string x-cds-type: AmountString description: description: A free text description of the adjustment. type: string LinksPaginated: type: object required: - self x-conditional: - first - prev - next - last properties: self: type: string description: Fully qualified link that generated the current response document. x-cds-type: URIString first: type: string description: URI to the first page of this set. Mandatory if this response is not the first page. x-cds-type: URIString prev: type: string description: URI to the previous page of this set. Mandatory if this response is not the first page. x-cds-type: URIString next: type: string description: URI to the next page of this set. Mandatory if this response is not the last page. x-cds-type: URIString last: type: string description: URI to the last page of this set. Mandatory if this response is not the last page. x-cds-type: URIString EnergyInvoiceGasUsageCharges: type: object required: - totalUsageCharges - totalGenerationCredits - totalOnceOffCharges - totalOnceOffDiscounts properties: totalUsageCharges: description: The aggregate total of usage charges for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString totalGenerationCredits: description: The aggregate total of generation credits for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString totalOnceOffCharges: description: The aggregate total of any once off charges arising from gas usage for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString totalOnceOffDiscounts: description: The aggregate total of any once off discounts or credits arising from gas usage for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString otherCharges: description: Optional array of charges that may be part of the invoice (for e.g., environmental charges for C&I consumers) (exclusive of GST). type: array items: type: object required: - amount - description properties: type: description: Type of charge. Assumed to be `OTHER` if absent. default: OTHER type: string enum: - ENVIRONMENTAL - REGULATED - NETWORK - METERING - RETAIL_SERVICE - RCTI - OTHER amount: description: The aggregate total of charges for this item (exclusive of GST). type: string x-cds-type: AmountString description: description: A free text description of the type of charge. type: string totalGst: description: The total GST for all gas usage charges. If absent then zero is assumed. default: '0.00' type: string x-cds-type: AmountString EnergyBillingTransactionV3: type: object required: - accountId - executionDateTime - transactionUType x-conditional: - usage - onceOff - payment - demand - otherCharges properties: accountId: description: Unique identifier for the account. allOf: - $ref: '#/components/schemas/EnergyAccountId' executionDateTime: description: The date and time that the transaction occurred. type: string x-cds-type: DateTimeString gst: description: The GST incurred in the transaction. Should not be included for credits or payments. If absent then zero is assumed. default: '0.00' type: string x-cds-type: AmountString transactionUType: description: Indicator of the type of transaction object present in this record. type: string enum: - usage - demand - onceOff - otherCharges - payment usage: description: Represents a usage charge or generation credit. Mandatory if _transactionUType_ is equal to `usage`. allOf: - $ref: '#/components/schemas/EnergyBillingUsageTransactionV2' demand: description: Represents a demand charge or generation credit. Mandatory if _transactionUType_ is equal to `demand`. allOf: - $ref: '#/components/schemas/EnergyBillingDemandTransactionV3' onceOff: description: Represents a once off charge or credit. Mandatory if _transactionUType_ is equal to `onceOff`. allOf: - $ref: '#/components/schemas/EnergyBillingOnceOffTransaction' otherCharges: description: Represents charge other than usage and once off. Mandatory if _transactionUType_ is equal to `otherCharges`. allOf: - $ref: '#/components/schemas/EnergyBillingOtherTransaction' payment: description: Represents a payment to the account. Mandatory if _transactionUType_ is equal to `payment`. allOf: - $ref: '#/components/schemas/EnergyBillingPaymentTransaction' EnergyBillingOnceOffTransaction: type: object required: - amount - description properties: servicePointId: description: Unique identifier for the service point. allOf: - $ref: '#/components/schemas/EnergyServicePointId' invoiceNumber: description: The number of the invoice in which this transaction is included if it has been issued. type: string amount: description: The amount of the charge or credit. A positive value indicates a charge and a negative value indicates a credit. type: string x-cds-type: AmountString description: description: A free text description of the item. type: string Meta: type: object MeasureUnitEnum: type: string enum: - KWH - KVA - KVAR - KVARH - KW - DAYS - METER - MONTH EnergyInvoiceAccountCharges: description: Object contains account level charges and credits related to electricity usage. type: object required: - totalCharges - totalDiscounts properties: totalCharges: description: The aggregate total of account level charges for the period covered by the invoice. type: string x-cds-type: AmountString totalDiscounts: description: The aggregate total of account level discounts or credits for the period covered by the invoice. type: string x-cds-type: AmountString totalGst: description: The total GST for all account level charges. If absent then zero is assumed. default: '0.00' type: string x-cds-type: AmountString EnergyServicePointId: type: string description: A unique identifier for an Energy service point, generated according to [CDR ID Permanence](#id-permanence) requirements. x-cds-type: ASCIIString MetaPaginated: type: object required: - totalPages - totalRecords properties: totalRecords: type: integer description: The total number of records in the full set. See [pagination](#pagination). x-cds-type: NaturalNumber totalPages: type: integer description: The total number of pages in the full set. See [pagination](#pagination). x-cds-type: NaturalNumber EnergyBillingOtherTransaction: type: object required: - amount - description properties: servicePointId: description: Unique identifier for the service point. allOf: - $ref: '#/components/schemas/EnergyServicePointId' invoiceNumber: description: The number of the invoice in which this transaction is included if it has been issued. type: string startDate: description: Optional start date for the application of the charge. type: string x-cds-type: DateString endDate: description: Optional end date for the application of the charge. type: string x-cds-type: DateString type: description: Type of charge. Assumed to be `OTHER` if absent. default: OTHER type: string enum: - ENVIRONMENTAL - REGULATED - NETWORK - METERING - RETAIL_SERVICE - RCTI - OTHER amount: description: The amount of the charge. type: string x-cds-type: AmountString description: description: A free text description of the item. type: string calculationFactors: description: Additional calculation factors that inform the transaction. type: array items: type: object required: - value - type properties: value: description: The value of the calculation factor. type: number type: description: The type of the calculation factor. type: string enum: - DLF - MLF adjustments: description: Optional array of adjustments arising for this transaction. type: array items: type: object required: - amount - description properties: amount: description: The amount of the adjustment. type: string x-cds-type: AmountString description: description: A free text description of the adjustment. type: string EnergyInvoice: type: object required: - accountId - invoiceNumber - issueDate - balanceAtIssue - servicePoints - paymentStatus x-conditional: - period properties: accountId: description: Unique identifier for the account. allOf: - $ref: '#/components/schemas/EnergyAccountId' invoiceNumber: description: The number assigned to this invoice by the energy Retailer. type: string issueDate: description: The date that the invoice was actually issued (as opposed to generated or calculated). type: string x-cds-type: DateString dueDate: description: The date that the invoice is due to be paid. type: string x-cds-type: DateString period: description: Object containing the start and end date for the period covered by the invoice. Mandatory if any usage or demand based charges are included in the invoice. type: object required: - startDate - endDate properties: startDate: description: The start date of the period covered by this invoice. type: string x-cds-type: DateString endDate: description: The end date of the period covered by this invoice. type: string x-cds-type: DateString invoiceAmount: description: The net amount due for this invoice regardless of previous balance. type: string x-cds-type: AmountString gstAmount: description: The total GST amount for this invoice. If absent then zero is assumed. default: '0.00' type: string x-cds-type: AmountString payOnTimeDiscount: description: A discount for on time payment. type: object required: - discountAmount - date properties: discountAmount: description: The amount that will be discounted if the invoice is paid by the date specified. type: string x-cds-type: AmountString gstAmount: description: The GST amount that will be discounted if the invoice is paid by the date specified. If absent then zero is assumed. default: '0.00' type: string x-cds-type: AmountString date: description: The date by which the invoice must be paid to receive the pay on time discount. type: string x-cds-type: DateString balanceAtIssue: description: The account balance at the time the invoice was issued. type: string x-cds-type: AmountString servicePoints: description: Array of service point IDs to which this invoice applies. May be empty if the invoice contains no electricity usage related charges. type: array items: type: string gas: description: Object containing charges and credits related to gas usage. allOf: - $ref: '#/components/schemas/EnergyInvoiceGasUsageCharges' electricity: description: Object containing charges and credits related to electricity usage. allOf: - $ref: '#/components/schemas/EnergyInvoiceElectricityUsageCharges' accountCharges: $ref: '#/components/schemas/EnergyInvoiceAccountCharges' paymentStatus: description: Indicator of the payment status for the invoice. type: string enum: - PAID - PARTIALLY_PAID - NOT_PAID EnergyBillingPaymentTransaction: type: object required: - amount - method properties: amount: description: The amount paid. type: string x-cds-type: AmountString method: description: The method of payment. type: string enum: - DIRECT_DEBIT - CARD - TRANSFER - BPAY - CASH - CHEQUE - OTHER EnergyAccountId: type: string description: A unique identifier for an Energy account, generated according to [CDR ID Permanence](#id-permanence) requirements. x-cds-type: ASCIIString RequestAccountIdListV1: type: object required: - data properties: data: type: object required: - accountIds properties: accountIds: type: array description: Array of _accountId_ values to obtain data for. items: $ref: '#/components/schemas/EnergyAccountId' meta: $ref: '#/components/schemas/Meta' ResponseErrorListV2: type: object required: - errors properties: errors: description: List of errors. type: array items: $ref: '#/components/schemas/ErrorV2' EnergyBillingListResponseV3: type: object required: - data - links - meta properties: data: type: object required: - transactions properties: transactions: description: Array of transactions sorted by date and time in descending order. type: array items: $ref: '#/components/schemas/EnergyBillingTransactionV3' links: $ref: '#/components/schemas/LinksPaginated' meta: $ref: '#/components/schemas/MetaPaginated' ErrorV2: type: object required: - code - title - detail x-conditional: - meta properties: code: type: string description: The code of the error encountered. Where the error is specific to the respondent, an application-specific error code, expressed as a string value. If the error is application-specific, the URN code that the specific error extends must be provided in the _meta_ object. Otherwise, the value is the error code URN. title: type: string description: A short, human-readable summary of the problem that **MUST NOT** change from occurrence to occurrence of the problem represented by the error code. detail: type: string description: A human-readable explanation specific to this occurrence of the problem. meta: type: object x-conditional: - urn description: Additional data for customised error codes. properties: urn: type: string description: The CDR error code URN which the application-specific error code extends. Mandatory if the error _code_ is an application-specific error rather than a standardised error code. EnergyInvoiceElectricityUsageCharges: type: object required: - totalUsageCharges - totalGenerationCredits - totalOnceOffCharges - totalOnceOffDiscounts properties: totalUsageCharges: description: The aggregate total of usage charges for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString totalGenerationCredits: description: The aggregate total of generation credits for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString totalOnceOffCharges: description: The aggregate total of any once off charges arising from electricity usage for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString totalOnceOffDiscounts: description: The aggregate total of any once off discounts or credits arising from electricity usage for the period covered by the invoice (exclusive of GST). type: string x-cds-type: AmountString otherCharges: description: Optional array of charges that may be part of the invoice (for e.g., environmental charges for C&I consumers) (exclusive of GST). type: array items: type: object required: - amount - description properties: type: description: Type of charge. Assumed to be `OTHER` if absent. default: OTHER type: string enum: - ENVIRONMENTAL - REGULATED - NETWORK - METERING - RETAIL_SERVICE - RCTI - OTHER amount: description: The aggregate total of charges for this item (exclusive of GST). type: string x-cds-type: AmountString description: description: A free text description of the type of charge. type: string totalGst: description: The total GST for all electricity usage charges. If absent then zero is assumed. default: '0.00' type: string x-cds-type: AmountString EnergyInvoiceListResponse: type: object required: - data - links - meta properties: data: type: object required: - invoices properties: invoices: description: Array of invoices sorted by issue date in descending order. type: array items: $ref: '#/components/schemas/EnergyInvoice' links: $ref: '#/components/schemas/LinksPaginated' meta: $ref: '#/components/schemas/MetaPaginated' EnergyBillingDemandTransactionV3: type: object required: - timeOfUseType - startDate - endDate - rate - amount properties: servicePointId: description: Unique identifier for the service point. allOf: - $ref: '#/components/schemas/EnergyServicePointId' invoiceNumber: description: The number of the invoice in which this transaction is included if it has been issued. type: string timeOfUseType: description: The time of use type that the transaction applies to. type: string enum: - PEAK - OFF_PEAK - OFF_PEAK_DEMAND_CHARGE - SHOULDER - SHOULDER1 - SHOULDER2 - CONTROLLED_LOAD - SOLAR - AGGREGATE - ALL_DAY - EXCESS description: description: Optional description of the transaction that can be used for display purposes. type: string isEstimate: description: Flag indicating if the usage is estimated or actual. `true` indicates estimate. `false` or absent indicates actual. default: false type: boolean startDate: description: Date and time when the demand period starts. type: string x-cds-type: DateTimeString endDate: description: Date and time when the demand period ends. type: string x-cds-type: DateTimeString measureUnit: type: string description: The measurement unit of rate. Assumed to be `KVA` if absent. default: KVA allOf: - $ref: '#/components/schemas/MeasureUnitEnum' rate: description: The rate for the demand charge in _measureUnit_. Assumed to be `KVA` if _measureUnit_ not provided. A negative value indicates power generated. type: number amount: description: The amount charged or credited for this transaction prior to any adjustments being applied. A negative value indicates a credit. type: string x-cds-type: AmountString calculationFactors: description: Additional calculation factors that inform the transaction. type: array items: type: object required: - value - type properties: value: description: The value of the calculation factor. type: number type: description: The type of the calculation factor. type: string enum: - DLF - MLF adjustments: description: Optional array of adjustments arising for this transaction. type: array items: type: object required: - amount - description properties: amount: description: The amount of the adjustment. type: string x-cds-type: AmountString description: description: A free text description of the adjustment. type: string responses: ListEnergyInvoicesForSpecificAccounts406: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyInvoicesForSpecificAccounts200: description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/EnergyInvoiceListResponse' GetEnergyAccountInvoices406: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountInvoicesBulk406: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetEnergyAccountInvoices400: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountBillingForSpecificAccounts406: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountBillingForSpecificAccounts200: description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/EnergyBillingListResponseV3' ListEnergyAccountBillingBulk200: description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/EnergyBillingListResponseV3' ListEnergyAccountInvoicesBulk400: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetBillingForEnergyAccount400: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountBillingBulk400: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountBillingBulk406: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetEnergyAccountInvoices200: description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/EnergyInvoiceListResponse' ListEnergyInvoicesForSpecificAccounts422: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountInvoicesBulk200: description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/EnergyInvoiceListResponse' ListEnergyAccountBillingBulk422: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyInvoicesForSpecificAccounts400: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountBillingForSpecificAccounts422: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetBillingForEnergyAccount200: description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/EnergyBillingListResponseV3' ListEnergyAccountBillingForSpecificAccounts400: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetBillingForEnergyAccount404: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' ListEnergyAccountInvoicesBulk422: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetEnergyAccountInvoices404: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetEnergyAccountInvoices422: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetBillingForEnergyAccount406: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' GetBillingForEnergyAccount422: description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' headers: XV: description: The [payload version](#response-headers) that the endpoint has responded with. required: true schema: type: string XFAPIInteractionId: description: An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder **MUST** play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction. required: true schema: type: string requestBodies: RequestAccountIds: description: Request payload containing a list of _accountId_ values to obtain data for. content: application/json: schema: $ref: '#/components/schemas/RequestAccountIdListV1' required: true