# Supplier credits, meter replacements and DNS encoding

## Supplier Claim Credit Reconciliation

See which approved supplier claims still need a credit and which posted credits exceed approval or lack a matching claim. Supply sourceRevision, one three-letter uppercase currency code and up to 64 entries each in claims and postedCreditLines. Each claim supplies id, submittedMinor and approvedMinor. Each posted line supplies creditMemoId, lineId, claimId and amountMinor. Use integer minor units from one currency. Submitted and posted amounts are positive, and approved amounts may be zero through the submitted amount. Each amount is at most 1,000,000,000. Claim IDs and credit memo and line ID pairs must be unique. IDs are case-sensitive ASCII labels of 1 to 48 letters, digits, underscores, periods, colons, pipes or hyphens. Credits match by claimId, and each claim has its own balance. The result separates unapproved claim amounts, remaining approved balances, excess posted credits and unmatched lines. Reconciliation uses the posted credit lines you supply. Use authorized, non-sensitive data. The report describes supplied records and does not change external systems.

[Request example](supplier-claim-credit-reconciliation.request.example.json) · [Input schema](supplier-claim-credit-reconciliation.input.schema.json) · [Result schema](supplier-claim-credit-reconciliation.result.schema.json)

## Meter Replacement Lifetime Reconciliation

Reconcile an asset’s lifetime usage across physical meter replacements and see which maintenance thresholds it crossed. Supply sourceRevision, assetId, priorLifetimeTicks as of the startingMeter baseline reading, up to 63 replacements in order, currentReading and up to 64 distinct maintenanceThresholdTicks. Each swap supplies the retired meter ID and closing reading plus the replacement meter ID and opening reading. IDs are case-sensitive ASCII labels of 1 to 48 letters, digits, underscores, periods, colons, pipes or hyphens. Use one tick scale throughout. Readings are whole ticks through 1,000,000,000. Prior lifetime is at most 1,000,000,000,000 ticks, and thresholds are at most 1,064,000,000,000 ticks. Each swap must retire the current meter and open a meter ID unused in the chain. The current reading must belong to the last meter. Each segment adds its ending reading minus its starting reading to the asset lifetime. The result lists thresholds above prior lifetime and through ending lifetime in the order supplied. Decreasing readings are rejected because this calculation requires a continuous reading range within each physical meter segment. Use authorized, non-sensitive data. The report describes supplied records and does not change external systems.

[Request example](meter-replacement-lifetime-reconciliation.request.example.json) · [Input schema](meter-replacement-lifetime-reconciliation.input.schema.json) · [Result schema](meter-replacement-lifetime-reconciliation.result.schema.json)

## DNS MX RDATA Encoder

Encode MX RDATA from an unsigned 16-bit preference and an absolute mail exchange name. End the name with a dot and use ASCII letters, digits or interior hyphens in labels of 1–63 characters. A single dot with preference 0 encodes a Null MX. The encoder preserves letter case and applies the 255-byte uncompressed name limit. The result includes lowercase hexadecimal and the byte length for one record’s RDATA. Use authorized, non-sensitive data. The report describes supplied records and does not change external systems.

[Request example](dns-mx-rdata-encoder.request.example.json) · [Input schema](dns-mx-rdata-encoder.input.schema.json) · [Result schema](dns-mx-rdata-encoder.result.schema.json)

## DNS SRV RDATA Encoder

Encode SRV RDATA from unsigned 16-bit priority, weight and port fields and an absolute target name. End the name with a dot and use ASCII letters, digits or interior hyphens in labels of 1–63 characters. A target of a single dot denotes an unavailable service. The encoder preserves letter case and applies the 255-byte uncompressed name limit. The result includes lowercase hexadecimal and the byte length for one record’s RDATA. Use authorized, non-sensitive data. The report describes supplied records and does not change external systems.

[Request example](dns-srv-rdata-encoder.request.example.json) · [Input schema](dns-srv-rdata-encoder.input.schema.json) · [Result schema](dns-srv-rdata-encoder.result.schema.json)

One-time job. See the exact service price before checkout. Save your private JSON result within its 30-day access period.
Requests accept at most 36,000 UTF-8 input bytes. Send only authorized, non-sensitive records.

For a known hosted offer, read current checkout and wallet availability with `GET https://gatewayinformationgroup.com/api/catalog/v1/search?id=PRODUCT_ID`. Then use the input schema and request example above.

Use the existing [agent checkout guide](https://gatewayinformationgroup.com/developers) to prepare a quote, pay and retrieve the private result.
