Using the Business Hours API

API OAuth Business Hours Special Days Workable Hours Shifts Android iOS
About this guide
This guide covers how to use ReceiptRoller's Business Hours API (/api/v1/stores/{storeId}/business-hours). You can retrieve and update per-day business hours, special business days (temporary closures and hour changes), and the workable hours that act as the upper bound for shift creation, from a mobile app or an external system.

Using the Business Hours API

Required scopes

ScopePermissions granted
store.business-hours.readRead business hours, special business days, workable hours, and open-status
store.business-hours.writeUpdate business hours, special business days, and workable hours

Check the box in "API scopes" on the app editing screen, and include the scope in the scope parameter of the authorization URL.

Authentication

This follows the same token conventions as the other v1 APIs.

  • A token bound to a business account — call it as-is
  • A user-scoped token (for native mobile apps) — append ?organizationId= to the query

Endpoints

MethodPathDescription
GET/api/v1/stores/{storeId}/business-hoursRetrieve business hours per day of week
PUT/api/v1/stores/{storeId}/business-hoursBulk-update business hours
PUT/api/v1/stores/{storeId}/business-hours/{dayOfWeek}/{shiftIndex}Update a specific day and time slot
DELETE/api/v1/stores/{storeId}/business-hours/{dayOfWeek}/{shiftIndex}Delete a specific day and time slot
GET/api/v1/stores/{storeId}/business-hours/special-daysList special business days (temporary closures and hour changes)
PUT/api/v1/stores/{storeId}/business-hours/special-days/{date}Register or update a special business day
DELETE/api/v1/stores/{storeId}/business-hours/special-days/{date}Delete a special business day
GET/api/v1/stores/{storeId}/business-hours/work-hours-limitRetrieve workable hours (the operating window that bounds shift creation)
PUT/api/v1/stores/{storeId}/business-hours/work-hours-limitUpdate workable hours
GET/api/v1/stores/{storeId}/business-hours/open-statusDetermine whether the store is currently open

Business hours vs. workable hours

  • Business hours — the opening and closing times published to customers. You can register multiple time slots per day of week (for example, a daytime session and an evening session)
  • Workable hours — the operating window that acts as the upper bound for the hours a shift can be created for. Set a range that includes pre-open preparation and post-close cleanup

The shift management feature and the shift creation API can only register shifts within the workable hours range.

Setting workable hours

PUT /api/v1/stores/{storeId}/business-hours/work-hours-limit
Authorization: Bearer {token}
Content-Type: application/json

{
  "standardWorkStartTime": "08:00",
  "standardWorkEndTime": "23:00"
}

Specify times in HH:mm format; the start must be earlier than the end. Setting both to an empty string means no limit (24-hour shifts can be registered).

Registering a special business day

PUT /api/v1/stores/{storeId}/business-hours/special-days/2026-08-13
Authorization: Bearer {token}
Content-Type: application/json

{
  "isClosed": true,
  "note": "Summer closure"
}

Besides temporary closures, you can also register a change to the business hours for a specific date only. The open-status determination evaluates special business days first.

Related guides

Published: 2026-06-10 Updated: 2026-07-05
このトピックについて
開発者API
機能の詳細を見る
Tags
API (22) OAuth (15) Android (10) iOS (9) Webhook (6) Troubleshooting (5) api (5) App registration (4) POS Integration (4) Reference (4)