HomeGuidesAPI ReferenceChangelog
Log In
Guides

Adjustments & Provider Statement Versioning

Observations

Utility providers frequently issue multiple versions of the same bill or post adjustments to correct historical data. These updates present two distinct challenges for data management:

Identifier Volatility

Because Arcadia treats the Statement ID as a unique digital fingerprint of the source file, even minor formatting changes or re-publications by the provider will trigger a new, unique hexadecimal Statement ID.

Adjustment Ambiguity

When an invoice is marked as an "Adjustment," it indicates a correction to previously invoiced usage or charges. However, these adjustments are not always uniform; they may be additive (adding to or subtracting from a previous total) or replacements (completely overwriting a previous total).

Policy

To ensure data continuity and accuracy in the face of provider updates, Arcadia follows these identification and versioning policies:

Statement ID as Fingerprint

Every unique source file is assigned a hexadecimal Statement ID. Customers should treat this as a file-specific identifier rather than a permanent record key.

De-duplication Logic

To manage versioning, Arcadia suggests that customers utilize a composite key of Account Number, Provider Name, and Statement Date as additional identifiers. If multiple Statement IDs exist for the same combination of these data points, the data from the latest iteration published should be prioritized as the source of truth.

Adjustment Flagging

Arcadia identifies corrected bills by setting the Type data point in the Account array to ADJUSTMENT.

Correction Methodology

Full Statement Adjustments

Arcadia recommends overwriting the previous data entirely with the newly published adjusted data. These are more common for certain utilities.

Line-Item Adjustments

If a single adjustment line item corrects a prior period, customers should programmatically or manually apply that correction to the corresponding period in their own systems.

FAQs

Why did a bill I already processed receive a new Statement ID?

Providers often re-issue bills with subtle changes (such as a corrected mailing address or a minor fee update). Because the Statement ID is a unique fingerprint of the document, any change in the source file generates a new ID to ensure full auditability.

How can I programmatically identify the most recent version of a bill?

We suggest grouping your data by Account Number, Provider, and Statement Date. From that group, always select the entry with the most recent "Published" timestamp. These fields are available in the Account array via the "List Detailed Statements" endpoint.

How do I know what exactly was changed on an Adjustment statement?

The system flags the statement Type as ADJUSTMENT. To find the specific correction, review the measurement periods for the meter and usage items within the statement to identify which items are the adjustment elements.

Should I always overwrite my data when I see the ADJUSTMENT flag?

If the adjustment represents a full replacement of the statement, overwriting is the best approach. However, if it is a single line item correcting a prior month, you may need to conduct a manual investigation to determine if the amount is additive or a replacement.

Conclusion

Managing utility data requires a strategy for handling the inevitable "versioning" that occurs at the provider level. By using Statement IDs for document tracking and composite keys (Account, Provider, Date) for data reconciliation, customers can maintain a consistent record. Monitoring for the ADJUSTMENT flag allows for timely intervention and reconciliation of corrected usage and charges.