square / square/connect-api-specification

Feature request: real-time location open/closed status (business_hours schedule alone is insufficient)

Open
#233 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Mustache
Stars
76
Forks
36
Avg merge
3h 14m
Merged PRs (30d)
1

Description

The Location object (via the Locations API) exposes a static business_hours schedule (day_of_week, start_local_time, end_local_time), but there is no API surface for whether a location is actually open right now.

In practice, real-world locations deviate from their scheduled hours regularly due to early closures, holiday closures, staffing issues or POS outages. These things happen frequently enough to be a problem and currently we don't have a way to represent this

We've used Square to support our in-venue food delivery service. In general things work well, but the lack of support for dynamic opening hours is a real gap in what is otherwise a decent end-to-end solution. It's enough of a pain point to make us actively consider moving to other providers, and I suspect this would be true of anyone using Square for this type of use case.

We've had to resort to scraping our own public storefront to infer live open/closed status, which is quite fragile and really shouldn't be necessary given that Square support both our web store and our payment provider. It feels this would be a relatively small change to your API that would deliver significant benefits to your consumers.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the Locations API definition and its existing business_hours fields in the OpenAPI specification. Clarify how real-time open/closed status should be represented, including temporary closures and outages, before defining the API surface. Done would mean the specification documents an agreed status model and its expected behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
openapi
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.