Home › Business & Marketing › Cross-Border Business Hours Deadline
Cross-Border Business Hours Deadline
Adds an explicit number of business hours inside a caller-supplied daily window, using either the official mainland China work calendar or a selected GOV.UK division, then returns the deadline in UTC, the calendar zone and a target IANA zone with a complete segment/skip audit trail.
When to use
You need an SLA, support, procurement or order deadline measured in business hours under the published mainland China or UK calendar, and must express the result in another team's IANA time zone with reproducible holiday and DST evidence.
Do not use when: You need calendar hours, an overnight or split shift, lunch breaks, an employer/local/market calendar, a legal filing deadline, actual delivery/arrival prediction, private calendar availability, or a date outside the selected evidence package's coverage.
Example user requests
- A Shanghai support ticket opened at 2026-09-24 15:00 has a 16-business-hour SLA, counted from that day during 09:00-17:00 China official working time. When is it due in London?
- Starting 24 December 2026 at 15:00 London time, add 8 England-and-Wales business hours between 09:00 and 17:00 and show the deadline in Shanghai.
- 按中国官方工作日,从 2026-09-24 15:00(上海)起计算 16 个营业小时,每天 09:00-17:00,起始日计入;给出伦敦时间和跳过日期。
Formula
deadline = consume business_hours only inside [business_day_start, business_day_end) on dates where the selected versioned calendar reports is_working_day=true; convert each local boundary with pinned IANA tzdb
The start wall time is resolved under the caller's explicit DST policy. The start date is either considered or wholly excluded as requested. Calcgrid then walks local calendar dates, skips dates rejected by the selected official calendar, consumes time within the supplied same-day window, and converts the final instant to UTC and the target zone. Every counted segment and skipped date is returned.
Inputs
| Parameter | Type | Unit | Required | Description |
|---|---|---|---|---|
start_local_datetime | string | yes | Start wall-clock date and time without an offset. start_time_zone supplies its IANA zone. | |
start_time_zone | string | yes | IANA zone used for the start time and every daily business window. | |
target_time_zone | string | yes | IANA zone in which the same deadline should also be returned for the receiving team. | |
calendar | enum: china-mainland | uk-england-and-wales | uk-scotland | uk-northern-ireland | yes | Versioned public working-day calendar that determines which local dates may consume business hours. | |
business_hours | number | hours | yes | Positive duration consumed only inside eligible working-date windows. It is rounded to the nearest second. Range: > 0, ≤ 1000 |
business_day_start | string | yes | Local opening time on each eligible working date. Must be earlier than business_day_end; overnight windows are not supported. | |
business_day_end | string | yes | Local closing/cutoff time on each eligible working date. Must be later than business_day_start on the same date. | |
include_start_day | boolean | yes | True counts eligible time remaining on the start local date; false skips that entire local date and starts at the next working opening. | |
resolution_policy | enum: reject | earlier | later | shift_forward | default reject | How to resolve an ambiguous or nonexistent start wall time. reject is safest; earlier/later select a repeated instant; shift_forward moves a gap time by the DST jump. |
Outputs
| Output | Type | Unit | Description |
|---|---|---|---|
calendar | string | Selected versioned working-day calendar. | |
calendar_name | string | Human-readable calendar scope. | |
calendar_version | string | Exact China or GOV.UK evidence-package version used. | |
calendar_coverage | object | First and last dates supported by the selected calendar package. | |
tzdb_version | string | Pinned IANA transition-data version used for every instant. | |
tzdb_package_version | string | Calcgrid package version containing the pinned tzdb release. | |
start_local_datetime | string | Chosen start instant rendered in the calendar zone with UTC offset. | |
start_utc_datetime | string | Chosen start instant in UTC. | |
counting_started_local_datetime | string | First eligible instant after applying the working-day, daily-window and include-start-day rules. | |
deadline_utc_datetime | string | Final deadline instant in UTC. | |
deadline_calendar_zone_datetime | string | Final deadline in start_time_zone with UTC offset. | |
deadline_target_zone_datetime | string | The same final instant in target_time_zone with UTC offset. | |
business_hours_added | number | hours | Business duration actually consumed after nearest-second normalization. |
business_seconds_added | integer | seconds | Integer duration consumed within eligible windows. |
elapsed_calendar_hours | number | hours | Actual elapsed UTC time from the supplied start instant to the deadline. |
working_dates_used | string_list | Ordered unique local dates whose windows contributed business time. | |
business_segment_count | integer | Number of dated working-window segments consumed. | |
skipped_date_count | integer | Number of calendar dates explicitly skipped for a calendar or start-rule reason. | |
business_segments | list | Auditable local/UTC segment boundaries, duration and calendar reason for every counted interval. | |
skipped_dates | list | Dates not counted, with holiday/weekend/start-rule reason. | |
start_adjustments | list | Any move from the supplied instant to the first eligible business instant. | |
calendar_sources_used | list | Deduplicated official notices or snapshot evidence actually consulted for the traversed dates. | |
rules | object | Complete caller-supplied window, calendar, inclusion and time-zone interpretation rules. |
Example
China SLA across Mid-Autumn holiday, rendered in London: {"start_local_datetime":"2026-09-24T15:00:00","start_time_zone":"Asia/Shanghai","target_time_zone":"Europe/London","calendar":"china-mainland","business_hours":16,"business_day_start":"09:00","business_day_end":"17:00","include_start_day":true,"resolution_policy":"reject"} → {"deadline_utc_datetime":"2026-09-29T07:00:00Z","deadline_calendar_zone_datetime":"2026-09-29T15:00:00+08:00","deadline_target_zone_datetime":"2026-09-29T08:00:00+01:00","business_hours_added":16,"elapsed_calendar_hours":120,"working_dates_used":["2026-09-24","2026-09-28","2026-09-29"],"business_segment_count":3,"skipped_date_count":3}
England and Wales Christmas deadline, rendered in Shanghai: {"start_local_datetime":"2026-12-24T15:00:00","start_time_zone":"Europe/London","target_time_zone":"Asia/Shanghai","calendar":"uk-england-and-wales","business_hours":8,"business_day_start":"09:00","business_day_end":"17:00","include_start_day":true,"resolution_policy":"reject"} → {"deadline_utc_datetime":"2026-12-29T15:00:00Z","deadline_calendar_zone_datetime":"2026-12-29T15:00:00+00:00","deadline_target_zone_datetime":"2026-12-29T23:00:00+08:00","business_hours_added":8,"elapsed_calendar_hours":120,"working_dates_used":["2026-12-24","2026-12-29"],"business_segment_count":2,"skipped_date_count":4}
GET https://tttkmbb.com/api/v1/calculate/business-hours-deadline?start_local_datetime=2026-09-24T15%3A00%3A00&start_time_zone=Asia%2FShanghai&target_time_zone=Europe%2FLondon&calendar=china-mainland&business_hours=16&business_day_start=09%3A00&business_day_end=17%3A00&include_start_day=true&resolution_policy=reject
Machine access
- API:
GET https://tttkmbb.com/api/v1/calculate/business-hours-deadline(query parameters) orPOSTwith a JSON body{"inputs": {...}} - Schema: https://tttkmbb.com/api/v1/calculators/business-hours-deadline · Markdown: https://tttkmbb.com/business/business-hours-deadline.md · JSON definition: https://tttkmbb.com/business/business-hours-deadline.json
- MCP: server
https://tttkmbb.com/mcp, toolcalculate_business_deadline - OpenAPI operationId:
calculate_business_deadline - Freshness:
versioned. Authentication: none. Rate limit: fair use (see rate limits).
Sources
- 国务院办公厅关于2024年部分节假日安排的通知 (国办发明电〔2023〕7号) (government)
- 国务院办公厅关于2025年部分节假日安排的通知 (国办发明电〔2024〕12号) (government)
- 国务院办公厅关于2026年部分节假日安排的通知 (国办发明电〔2025〕7号) (government)
- GOV.UK Bank Holidays API (government)
- Open Government Licence v3.0 (licence)
- IANA Time Zone Database 2026d (standard)
- IANA tz database LICENSE (license)
- Moment Timezone 0.6.4 data build (implementation)
FAQ
Why must I provide the daily business window and include_start_day rule?
Those are contract or organisation rules, not facts Calcgrid can safely infer. Requiring them prevents a plausible-looking but wrong SLA deadline.
Does this prove a legal, settlement or delivery deadline?
No. It applies the selected public work calendar and supplied hours only. Sector rules, local closures, breaks, legal service rules and actual logistics require their own authoritative inputs.
Why are all counted and skipped dates returned?
Agents and auditors can verify exactly which dates consumed time, why others were skipped, and which source/data versions controlled the result.
Related calculators
- Mainland China Working Day Checker — Inspect one mainland China date and its official notice.
- UK Working Day Checker — Inspect one UK division date and its GOV.UK event.
- IANA Local Time Resolver — Inspect an ambiguous or nonexistent wall time before choosing a policy.
- Time Zone Converter — Convert one known local time without applying business-hour rules.