canonical: https://jentic.com/apis/bankday.dev/bankday

# Bankday API

The Bankday API answers business-day and settlement-date questions for payment rails, exchanges, and countries. It checks whether a date is a business day on a calendar such as us-fed or eu-target2, adds or counts business days, rolls dates with ISDA-style conventions like modified_following, and lists holidays including early closes on shortened exchange sessions. On top of the calendars it computes FX spot value dates for a currency pair, estimates US ACH settlement for standard and Same Day entries, and generates payroll schedules with a submit_by date for each pay date. It also returns the US and Canadian minimum wage that applies at a place and date, along with a feed of scheduled changes.

## For AI agents

Check business days, add or count them, roll dates, list holidays, and compute FX spot dates, ACH settlement estimates, payroll schedules, and minimum wages on named payment-rail, exchange, and country calendars.

## Scope

Does not move money, hold bank accounts, run payroll, or quote exchange rates. Use for business-day, holiday, and settlement-date calculations on named calendars only.

## Capabilities

- Check whether a date is a business day on one calendar or a joint calendar like us-fed,eu-target2 with GET `/v1/business-day`, including the holiday name and next and previous business days
- Add or subtract business days from a date with GET `/v1/business-days/add` and count business days between start and end with GET `/v1/business-days/count`
- Roll a non-business date with following, preceding, modified_following, or modified_preceding conventions via GET `/v1/business-days/roll`
- List holidays for a year or a date range, with early_closes for shortened exchange sessions, via GET `/v1/holidays`
- Compute the FX spot value date for a pair such as EURUSD on a trade_date with GET `/v1/fx/spot`
- Estimate when a standard or same_day ACH entry settles at the Federal Reserve from its submitted_at time with GET `/v1/ach/settlement`
- Generate a weekly, biweekly, semimonthly, or monthly payroll schedule with a submit_by date per pay date via GET `/v1/payroll/schedule`

## Use cases

### Settlement-aware payment agents through Jentic

A payments or treasury agent that schedules transfers must know when money actually moves. Through Jentic the agent finds the Bankday operation by intent, calls GET `/v1/ach/settlement` with the submitted_at time and type same_day or standard to get the Federal Reserve settlement estimate, and checks GET `/v1/business-day` before promising a date. The bearer token is injected at call time and never sits in the agent's context.

Example prompt: Call GET `/v1/ach/settlement` with submitted_at '2026-11-06T15:00:00-05:00' and type 'same_day', then report the estimated settlement time to the user

### Due-date math on banking calendars

Invoice terms, SLA clocks, and notice periods are often defined in business days on a specific calendar. GET `/v1/business-days/add` moves a date by a number of business days without counting the start date, GET `/v1/business-days/count` counts the days between two dates, and GET `/v1/business-days/roll` applies conventions like modified_following when a date lands on a holiday. Joint calendars such as us-fed,eu-target2 treat a day as open only when every calendar is open.

Example prompt: Call GET `/v1/business-days/add` with calendar 'us-fed,eu-target2', date '2026-12-22', and days 3, then return the resulting due date

### FX spot date calculation

FX desks and treasury tools need the spot value date for a trade. GET `/v1/fx/spot` takes a pair such as EURUSD and a trade_date and returns the spot date: T+2 by default and T+1 for pairs like USD/CAD and USD/TRY, checking that the spot date is a business day for both currencies.

Example prompt: Call GET `/v1/fx/spot` with pair 'USDCAD' and trade_date '2026-11-25' and return the spot value date

### Payroll calendars and minimum wage checks

Payroll teams need pay dates that dodge weekends and holidays and know when the payroll file is due. GET `/v1/payroll/schedule` returns every pay date in a year for a chosen frequency, each with submit_by set lead_days business days earlier. GET `/v1/minimum-wage` returns the governing federal, state, county, or city minimum wage at a location and date, and GET `/v1/minimum-wage/changes` lists scheduled changes ahead of time.

Example prompt: Call GET `/v1/payroll/schedule` with calendar 'us-fed', frequency 'biweekly', year 2027, and anchor '2027-01-08', then list each pay date with its submit_by date

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/v1/business-day` | Check whether a date is a business day |
| GET | `/v1/business-days/add` | Add or subtract business days |
| GET | `/v1/business-days/count` | Count business days between two dates |
| GET | `/v1/holidays` | List holidays |
| GET | `/v1/fx/spot` | FX spot value date |
| GET | `/v1/ach/settlement` | US ACH settlement estimate |
| GET | `/v1/payroll/schedule` | Payroll schedule |
| GET | `/v1/calendars` | List calendars |

## Key resources

- **Calendars** — Payment-rail, exchange, and country calendars with weekend days, time zone, and coverage years
- **Business days** — Checks, additions, counts, rolls, and lists of open days on one or more calendars
- **Holidays** — Holidays by year or range, with early closes for shortened exchange sessions
- **Settlement** — FX spot value dates and US ACH settlement estimates
- **Payroll and minimum wage** — Pay date schedules with submission deadlines and minimum wage rates by location and date

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 64 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 74 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 46 / 100
  - Agent Usability: 94 / 100
  - Security: 60 / 100
  - AI Discoverability: 81 / 100
- **View full report:** https://jentic.com/apis/bankday.dev/bankday/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Bankday by hand means handling its bearer token and learning its calendar ids, aliases, and joint-calendar syntax yourself. Through Jentic you install once, import the Bankday API from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** Bankday passes the calendar and dates as query parameters rather than path segments, so rules bound which operations your agent may call, not which calendar it reads. You choose the operations it may call, so account usage or minimum wage lookups are not included unless you add them.
- **Credential handling:** Your Bankday token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'is this date a business day' or 'estimate ACH settlement date', and Jentic returns the matching Bankday operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Calendarific Holiday API** — Public holiday lists by country and year
- **Nager.Date Public Holidays API** — Public holidays by country
- **Gusto Embedded Payroll API** — Runs payroll that the Bankday schedule can time
- **Plaid API** — Bank account and transaction data

## FAQ

### Is there a Bankday MCP server?

You don't need an MCP server to give your agent the Bankday API. Jentic connects it directly from the API Directory: import it, store your bearer token once, and your agent calls it. Operations are discovered on demand, so no extra tool definitions sit in the agent's context.

### What authentication does the Bankday API use?

The Bankday API authenticates with an HTTP bearer token per its OpenAPI spec, sent in the Authorization header on its operations. Through Jentic, the token is stored encrypted by your own Jentic One instance and injected at call time, so it never enters the agent's prompt or logs.

### Can I combine several calendars into one business-day check?

Yes. The calendar parameter accepts up to 10 comma-separated calendar ids, such as us-fed,eu-target2, to form a joint calendar, and aliases such as nyse and ach are accepted. GET `/v1/calendars` lists the available calendars and can be filtered by type rail, exchange, or country.

### Can I limit what my agent is allowed to do with the Bankday API?

Yes. For example, write a rule that allows only GET `/v1/business-day`, GET `/v1/business-days/add`, and GET `/v1/holidays.` Your agent can then check and shift dates and read holidays, but it cannot read your plan and usage from GET `/v1/account` or pull minimum wage data, and every call it makes is logged.

### What are the rate limits for the Bankday API?

The OpenAPI spec does not specify rate limits. GET `/v1/account` returns your plan and usage for the current month and is not counted toward usage; check https://bankday.dev for current plan limits.

### How do I estimate ACH settlement through Jentic?

Search Jentic for 'estimate ACH settlement date', load the Bankday ach operation, and call GET `/v1/ach/settlement` with submitted_at and type set to standard or same_day. Same-day entries over the per-payment limit fall back to standard. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Does the Bankday API cover minimum wage outside the US?

The minimum wage operations accept a two-letter state, territory, or Canadian province code, so they cover US and Canadian jurisdictions. GET `/v1/minimum-wage/jurisdictions` lists every jurisdiction in the data with its level and coverage.
