/v1/next_settlement_date

Finds the next valid settlement date.

Description

This endpoint determines the very next valid settlement date immediately following the provided base date. It ensures that the returned date is a business day according to the specified calendar, effectively skipping any non-settlement days.

Endpoint

GET https://fincalapi.com/v1/next_settlement_date

Parameters

Name Type Required Description
date string ✅ Yes Base date in `YYYY-MM-DD` format (e.g., `2025-01-01`).
calendar string ✅ Yes Holiday calendar to use (e.g., `SIFMA-US`, `NYSE`).
format string No (Default: `json`) Response format: `json`, `text`, `plain`, `html`, `csv`.

Usage Examples

🧮 Excel Formula

Get the next settlement date for a date in cell `A2` on the `SIFMA-US` calendar:

=WEBSERVICE("https://fincalapi.com/v1/next_settlement_date?date="&TEXT(A2,"YYYY-MM-DD")&"&calendar=SIFMA-US")

💻 VBA Macro

Automate finding the next settlement date:

Function GetNextSettlementDate(targetDate As String, calendarName As String) As String
    Dim http As Object
    Set http = CreateObject("MSXML2.XMLHTTP")
    Dim url As String
    url = "https://fincalapi.com/v1/next_settlement_date?date=" & targetDate & "&calendar=" & calendarName
    http.Open "GET", url, False
    http.Send
    GetNextSettlementDate = http.responseText
End Function

' Example: MsgBox GetNextSettlementDate("2025-12-25", "NYSE")

📊 Google Sheets

Import the next settlement date into your Google Sheet:

=IMPORTDATA("https://fincalapi.com/v1/next_settlement_date?date=2025-12-25&calendar=SIFMA-US")

🐍 Python

Find the next settlement date programmatically:

import requests
import json

base_url = "https://fincalapi.com/v1/next_settlement_date"
params = {
    "date": "2025-12-25", # Christmas Day, a holiday
    "calendar": "SIFMA-US"
}

response = requests.get(base_url, params=params)

if response.status_code == 200:
    data = response.json()
    print(json.dumps(data, indent=2))
    # Expected output (assuming Dec 26, 2025 is a business day):
    # {
    #   "input_date": "2025-12-25",
    #   "calendar": "SIFMA-US",
    #   "next_settlement_date": "2025-12-26"
    # }
else:
    print(f"Error: {response.status_code} - {response.text}")

🖥️ cURL / Terminal

Get the next settlement date from the command line:

curl "https://fincalapi.com/v1/next_settlement_date?date=2025-01-01&calendar=NYSE"

🌐 Browser

View the result directly in your browser:

https://fincalapi.com/v1/next_settlement_date?date=2025-01-01&calendar=SIFMA-US