# 402utils ECB TARGET2 Settlement Calendar

> 402utils ECB TARGET2 Settlement Calendar is a paid API for AI agents from 402utils.com, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-10).

Checks whether a given date is a TARGET2/SEPA settlement day, lists annual closing days, or computes a value date N settlement days away from a given date.

## Facts

- Endpoint: GET https://402utils.com/v1/ecb-calendar?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/402utils-ecb-target2-settlement-calendar-5230d055
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_y-kZ_QyL-79YNC1WGene4

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability 402utils-ecb-target2-settlement-calendar-5230d055
```

Example prompt: Is April 18 2025 a TARGET2 settlement day, and if not, what is the next open settlement day for a SEPA euro transfer?

## When to prefer this

Use this endpoint when you need authoritative TARGET2/SEPA settlement day logic for euro-denominated payments, value date calculations, or financial calendar integrations. Prefer this over generic business-day calculators when the settlement rules must follow ECB TARGET closing days specifically (weekends + six fixed holidays). It complements /v1/business-days which handles general business calendars.

## Known failure modes

- Missing both ?year= and ?date= parameters — returns error or empty response
- Year outside supported range (1999–2100) — validation error
- Invalid date format (not YYYY-MM-DD) — parse error
- addBusinessDays magnitude exceeds 3660 — rejected
- Network timeout or upstream unavailability — HTTP 5xx

## How this service works

TARGET2/T2 settlement calendar — the SEPA banking calendar, to predict when a euro transfer settles. TARGET is closed on weekends + six fixed days (New Year, Good Friday, Easter Monday, 1 May, 25 & 26 Dec). ?year= lists the closing days; ?date= says whether it settles (and the next open day); ?date=&addBusinessDays=N returns the value date N settlement days away. The SEPA counterpart of /v1/business-days.

## Output

Returns a JSON object indicating whether the queried date is a TARGET2 settlement day (isSettlementDay), the reason if closed (weekend or holiday name), the next open settlement day when closed, or — in shift mode — the settlement date N business days away. Year-mode returns an array of the six fixed closing holidays plus the total count of settlement days in the year.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "date": {
       "type": "string",
       "description": "A date YYYY-MM-DD — check whether it is a settlement day."
      },
      "year": {
       "type": "integer",
       "description": "Calendar year (1999-2100) — list its closing days."
      },
      "addBusinessDays": {
       "type": "integer",
       "description": "With ?date=: shift by N TARGET settlement days (sign = direction, |N| ≤ 3660)."
      }
     },
     "description": "Provide ?year= OR ?date= (optionally with ?addBusinessDays=)."
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "asOf": {
       "type": "string",
       "format": "date"
      },
      "date": {
       "type": "string"
      },
      "note": {
       "type": "string"
      },
      "year": {
       "type": "integer"
      },
      "closed": {
       "type": "boolean"
      },
      "reason": {
       "type": "string",
       "description": "When closed: 'weekend' or 'holiday'."
      },
      "result": {
       "type": "string",
       "description": "Shift mode: the settlement date N days from the input."
      },
      "source": {
       "type": "string",
       "format": "uri"
      },
      "holiday": {
       "type": "string",
       "description": "When closed for a holiday: its name."
      },
      "weekday": {
       "type": "string"
      },
      "holidays": {
       "type": "array",
       "items": {
        "type": "object",
        "required": [
         "date",
         "name",
         "weekday"
        ],
        "properties": {
         "date": {
          "type": "string"
         },
         "name": {
          "type": "string"
         },
         "weekday": {
          "type": "string"
         }
        }
       },
       "description": "Year mode: the six fixed TARGET closing days."
      },
      "resultWeekday": {
       "type": "string"
      },
      "settlemen
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/402utils-ecb-target2-settlement-calendar-5230d055/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 402utils.com](https://www.zero.xyz/host/402utils.com/llms.txt)
