Skip to main content
POST
/
locations
/
{locationId}
/
registers
Create a register
curl --request POST \
  --url https://api.openfiskal.com/v1/locations/{locationId}/registers \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "label": "Kasse 1",
  "jurisdiction": "IT",
  "serial_number": "<string>",
  "metadata": {}
}
'
{
  "label": "Kasse 1",
  "jurisdiction": "IT",
  "serial_number": "<string>",
  "metadata": {},
  "id": "reg_01HXYZ",
  "object": "<string>",
  "location_id": "<string>",
  "state": "active",
  "active_fiscal_unit": {
    "id": "fu_01HXYZ",
    "object": "<string>",
    "register_id": "reg_01HXYZ",
    "state": "provisioning",
    "jurisdiction": "IT",
    "fiscal_registration": {
      "regime": "<string>",
      "tse_serial": "abc123def456",
      "client_id": "Kasse 1",
      "signature_algorithm": "ecdsa-plain-SHA384",
      "time_format": "utcTime",
      "registered_at": "2023-11-07T05:31:56Z"
    },
    "reason": "TSE hardware end-of-life",
    "replaces": "fu_00HXYZ",
    "replaced_by": "fu_02HXYZ",
    "provisioned_at": "2023-11-07T05:31:56Z",
    "decommissioned_at": "2023-11-07T05:31:56Z",
    "created_at": "2023-11-07T05:31:56Z"
  },
  "fiscal_state": "pending",
  "fiscal_registration": {
    "regime": "<string>",
    "tse_serial": "abc123def456",
    "client_id": "Kasse 1",
    "signature_algorithm": "ecdsa-plain-SHA384",
    "time_format": "utcTime",
    "registered_at": "2023-11-07T05:31:56Z"
  },
  "created_at": "2023-11-07T05:31:56Z"
}

Authorizations

Authorization
string
header
required

Platform API key sent as Authorization: Bearer ofk_platform_.... Platform integrators also pass OpenFiskal-Organization: org_xxx to act on behalf of a merchant.

Headers

OpenFiskal-Organization
string

Merchant organization ID. Required for platform integrators acting on behalf of a specific merchant. Omit when using an organization-scoped API key directly.

Path Parameters

locationId
string
required

Body

application/json
label
string
required
Example:

"Kasse 1"

jurisdiction
enum<string>
required
Available options:
IT,
DE,
AT
serial_number
string | null
metadata
object

Response

Register created

label
string
required
Example:

"Kasse 1"

jurisdiction
enum<string>
required
Available options:
IT,
DE,
AT
serial_number
string | null
metadata
object
id
string
Example:

"reg_01HXYZ"

object
string
Allowed value: "register"
location_id
string
state
enum<string>
  • active: The register is operational and can accept operations (when it has an active fiscal unit).
  • archived: The register has been permanently retired. Cannot be undone.
Available options:
active,
archived
active_fiscal_unit
object

The currently active fiscal unit, expanded inline. null if no binding has been provisioned yet or if the current binding is not in active state.

fiscal_state
enum<string>
deprecated

Deprecated. Use state on the register and state on the active_fiscal_unit instead. Computed from the register state and active fiscal unit state for backward compatibility.

Available options:
pending,
active,
inactive,
error
fiscal_registration
object
deprecated

Deprecated. Use active_fiscal_unit.fiscal_registration instead. Computed from the active binding for backward compatibility.

created_at
string<date-time>