Skip to main content

Data Standards

This section defines the data formats and conventions used throughout the API.

Monetary Amounts

All monetary values are represented in cents as integers.

AmountRepresentation
$1.00100
$157.5015750
$0.055

Fields Using Cents

  • amount_due_in_cents - Balance amount due
  • amount_in_cents - Payment amount or line item amount

Date and Time Formats

Date Only

Use yyyy-mm-dd format (ISO 8601 date).

{
"due_date": "2025-12-01",
"date_posted": "2025-11-14"
}

Date and Time

Use ISO 8601 format with timezone.

{
"last_updated_at": "2025-11-14T12:34:56.000Z",
"initiated_at": "2025-11-15T14:22:10Z",
"posted_at": "2025-11-15T14:25:30Z"
}
  • Always include timezone (use Z for UTC or offset like -05:00)
  • Milliseconds are optional but supported

Address Format

Addresses follow US postal standards.

{
"address_line_1": "3384 Montgomery Way",
"address_line_2": "#2",
"city": "Bowling Green",
"state": "KY",
"zip": "42104"
}

Field Requirements

FieldRequiredFormat
address_line_1YesStreet address
address_line_2NoApartment, suite, unit, etc.
cityYesCity name
stateYesTwo-letter state code (e.g., KY, CA)
zipYes5-digit ZIP code

Account Status

Accounts have one of the following statuses:

StatusDescription
activeAccount is in good standing and can receive payments
inactiveAccount exists but is not currently active
blockedAccount is blocked from receiving payments

Payment Status

See Payment Processing for detailed status information.

StatusDescription
processingPayment is being processed
succeededPayment completed successfully
failedPayment failed
canceledPayment was canceled

String Encoding

  • All strings must be UTF-8 encoded
  • JSON responses must use Content-Type: application/json; charset=utf-8

Null Values

  • Optional fields may be omitted or set to null
  • Required fields must always be present and non-null
  • Empty strings ("") are not equivalent to null
{
"memo": "November payment",
"failure_reason": null
}

Error Responses

Error responses follow a standard format:

{
"code": "ACCOUNT_NOT_FOUND",
"message": "The specified account does not exist",
"details": {
"account_id": "ACCT-123456"
}
}
FieldRequiredDescription
codeNoMachine-readable error code
messageNoHuman-readable error message
detailsNoAdditional context for debugging