ACH Clock

JSON API

The banking calendar for payroll and reconciliation code, without vendoring a holiday table that goes stale.

Endpoints

All responses are JSON. Dates are ISO YYYY-MM-DD; times are Eastern, the timezone the Federal Reserve publishes its deadlines in.

GET /api/v1/holidays?year=2026

Reserve Bank closure days. There is no July entry for 2026 because July 4 falls on a Saturday, so the Reserve Banks never close that week.

{
  "year": 2026,
  "holidays": [
    { "date": "2026-01-01", "name": "New Year's Day", "observed": false },
    { "date": "2026-01-19", "name": "Birthday of Martin Luther King, Jr.", "observed": false }
  ]
}

observed: true means the actual holiday fell on a Sunday and the closure moved to the following Monday.

GET /api/v1/settlement-date?date=2026-11-25&time=10:00&speed=next-day

speed is same-day, next-day, or two-day (default next-day). time defaults to 09:00.

{
  "submitted": { "date": "2026-11-25", "time": "10:00", "speed": "next-day" },
  "settlementDate": "2026-11-27",
  "settlementTime": null,
  "windowLabel": null,
  "bankingDays": 1,
  "notes": []
}

For same-day, settlementTime and windowLabel are populated (for example "5:00 PM ET" and "2:45 PM ET"). notes explains any roll-forward in plain language: a weekend, a named holiday, or a missed Same Day window.

GET /api/v1/business-days?from=2026-01-16&add=2

{ "from": "2026-01-16", "add": 2, "result": "2026-01-21" }

Two other forms are available on the same endpoint:

?from=2026-01-16&to=2026-01-21
  -> { "from": "2026-01-16", "to": "2026-01-21", "bankingDays": 2 }

?from=2026-11-26
  -> { "date": "2026-11-26", "isBankingDay": false, "holiday": "Thanksgiving Day" }

Errors

Invalid input returns 400 with { "error": "..." }. A missing or unrecognised key returns 401; an expired key returns 402.

Authentication

Pass your key as Authorization: Bearer <key>, or as a ?key= query parameter when a header is inconvenient (spreadsheet formulas, calendar tools). Keys are $19 for 365 days and do not auto-renew. See pricing.

curl "https://achclock.com/api/v1/holidays?year=2026"   -H "Authorization: Bearer YOUR_KEY"

Correctness

The date engine is checked on every build against the Federal Reserve's published 2026–2030 holiday schedule, including the Saturday and Sunday observance footnotes. Dates are computed from the rules rather than copied from a table, so future years stay correct.