Chiavistello
Utilities & PersonalConnect AI agents to Chiavistello, an Italian self-check-in and smart-lock platform. Agents issue and revoke door access tied to a booking, request payment from guests through a hosted page, and issue the fiscal receipts Italian hospitality requires.
What This Integration Enables
Chiavistello is what a smart lock looks like when it has to answer to a tax authority. Most access-control APIs stop at the relay. This one models the door, the reservation, the guest's identity documents, the payment request, and the fiscal receipt filed with the Agenzia delle Entrate as a single connected object graph, because that is the actual shape of running short-term rentals in Italy. A property manager there is not solving an access problem, they are solving a compliance problem that happens to have a door in it: guest registration data for police reporting, corrispettivi for the Revenue Agency, and a keyless entry the guest can use at two in the morning without anybody meeting them.
Nineteen actions cover that graph. On the device: Get Device Information returns serial number, name, and online status, Get API Status is a lightweight authentication and availability probe, List Switches enumerates the relays (door locks, gates, lights) with the numeric IDs that Open Switch requires, and List Partitions returns the rooms or apartments with the switch IDs attached to each. Open Switch actuates a relay with a selectable state and an optional hold time. On bookings: List Bookings, Get Booking by ID, and Get Booking by External Reference read reservations with guest name, contact details, partition, status, access PIN, and the open token used for keyless entry, while Create Booking, Update Booking, and Delete Booking write them. List Guests returns the collected identity data, including dates of birth, nationality, document details, and uploaded document photos. On money, one distinction is worth being precise about: this connector creates and manages payment requests, it does not capture funds. Create Payment Request returns a payment object with a token, and the guest pays on a hosted page at chiavistello.it/mypayment/ followed by that token. List Payment Requests and Get Payment Request by ID read back the settlement date, provider channel, and any split, which is how a flow learns a guest actually paid. Update Payment Request and Delete Payment Request adjust or remove the request itself. List Fiscal Receipts and Issue Fiscal Receipt handle corrispettivi. Chiavistello publishes no event subscription, so this service ships no triggers: reservations arriving from a channel manager or property management system are picked up by polling List Bookings on a schedule, or by resolving a PNR the upstream system already handed you.
Without FlowRunner
With FlowRunner
Use Case Scenarios
A reservation that arrives already able to let itself in
A booking lands in the channel manager with a PNR. On its next scheduled run the agent calls Get Booking by External Reference to see whether Chiavistello already knows it, and where it does not, calls List Partitions to resolve the apartment name to a numeric partition ID before calling Create Booking with the guest name, dates, contact details, notification mode, and the external reference. Chiavistello returns the created booking with its generated ID and its keyless open token. The agent posts the arrival details and the access instructions to the guest through WhatsApp and records the booking ID against the PNR in Google Sheets so the two systems stay joined. Nothing here touches a relay. The door opens later, by the guest, using the token the booking carries.
The balance, the deadline, and the guest who is already on a train
Seven days before arrival the agent calls Create Payment Request for the outstanding balance, setting the purpose, the preferred language of the payment page, and the external reference so the request is traceable to the stay. It sends the guest the payment link built from the returned token. Then it waits and re-reads. On a schedule it calls List Payment Requests and checks the settlement fields, because a request that exists is not a request that was paid, and the connector is explicit that settlement details appear only once the request is settled. If payment lands, the agent proceeds. If it has not landed by the deadline, the agent does not act. It assembles the case and escalates, which is the next section.
Corrispettivi issued against the stay they belong to
After checkout the agent calls Get Payment Request by ID for the settled amount and Issue Fiscal Receipt against the booking's external reference, supplying either a single line via description, amount, and VAT, or multiple line items where the stay and a cleaning fee are billed separately. Chiavistello files it with the Agenzia delle Entrate and returns the document identifier (DCW) and issue date. The agent logs that to Google Sheets and posts a summary to Slack. List Fiscal Receipts is then the reconciliation surface at month end, and it also reveals the platform's own correction model: cancellations appear as their own documents flagged as such. A receipt is not edited. It is cancelled by issuing another one with the original's progressive number in the Cancellation field, which means an incorrect amount leaves two permanent records at the Revenue Agency rather than none.
Human-in-Loop Highlight
The gate belongs on Delete Booking, and the specific moment is the unpaid balance the day before arrival. Chiavistello is unambiguous about what that action does: it permanently deletes the booking, revokes the associated keyless access and the PIN, and cannot be undone. Set that next to what the connector actually knows. List Payment Requests tells the agent a request has not settled. It does not tell the agent that a bank transfer is in flight, that the guest paid the host directly, that the channel manager collected at the time of booking, or that the payment page was opened in a language the guest could not read. The failure mode is not abstract. A family lands in Italy in the evening, walks to an apartment, and the code they were sent does not work, because a flow read one field an hour earlier and concluded they had not paid. Nobody is at the property. The recovery is a phone call to a person who has to recreate the booking from scratch, and the token the guest already has is dead. Open Switch carries the mirror image of the same risk, which Chiavistello flags in its own documentation: it drives a physical relay, and it should be triggered only when you intend the device to actuate. An agent that opens a door to resolve a lockout has opened a door, and it has no way to know who is standing on the other side of it. So the agent stops and hands over the decision with the evidence attached. It calls Get Booking by External Reference for the guest name, dates, partition, and status, List Payment Requests for the request, its amount, its creation date, and whether any settlement fields are populated, and Get Device Information to confirm the lock is even online, then posts to the property manager in Slack: "Booking PNR 4471GH, apartment Trastevere 2, check-in tomorrow 15:00, guest Rossi. Payment request 8812 for 340 EUR created 6 days ago, no settlement date, no provider channel. Deleting the booking permanently revokes PIN 4471 and the open token, and cannot be reversed. The device is online. Revoke access, extend the payment deadline, or send the payment link again first?" A person answers, and the agent runs what they chose. Issue Fiscal Receipt sits behind its own version of this gate, because a receipt filed at the Agenzia delle Entrate for the wrong amount is not corrected by an update: it is cancelled by a second permanent document, and both stay on the record. This is the digital andon cord on the two operations here that reach into the physical and the legal world at once.
Agent Capabilities
19 actionsDevice
5- Get Device Information Retrieves basic information about the Chiavistello device linked to the API key, including its serial number, display name, and current online status. Worth calling before anything that depends on the lock being reachable.
- Get API Status Checks the health of the Chiavistello API endpoint and confirms the API key is accepted, returning a simple status string. A lightweight authentication and availability probe.
- List Switches Lists all switches (relays) exposed by the device, such as door locks, gates, or lights, each with a numeric ID and a name. The switch ID is required by Open Switch.
- List Partitions Lists the device partitions (rooms or apartments) configured on the account, each with a numeric ID, a name, and the list of switch IDs associated with it. Partition IDs are what Create Booking and Update Booking expect.
- Open Switch Sends an activation command to a device switch (relay), for example to open a door or gate. Selects the relay state (On or Off), with an optional hold time controlling how many seconds the relay stays in that state before reverting. Requires the numeric switch ID from List Switches, and actuates real hardware.
Bookings
7- List Bookings Retrieves the list of bookings (reservations), optionally filtered by check-in and check-out dates, paginated up to 50 per page. Each result includes the guest name, contact details, partition, status, access PIN, and open token. This is the polling surface, since the platform raises no events.
- Get Booking by ID Retrieves a single booking by its numeric Chiavistello ID, including guest details, partition, status, access PIN, and the open token used for keyless entry.
- Get Booking by External Reference Retrieves a single booking by the external reference (PNR) assigned by a channel manager or property management system, so a flow can work from the identifier the upstream system already has.
- Create Booking Creates a new booking for a partition. Partition, guest name, check-in, and check-out are required; contact details, access PIN, notification mode, status, price, and an external reference are optional. Returns the created booking with its generated ID and keyless open token.
- Update Booking Updates an existing booking identified by its numeric ID. Only the fields you provide are changed and omitted fields are left untouched, which makes it the safe verb for adjusting dates, contact details, the access PIN, status, notification mode, or pricing.
- Delete Booking Permanently deletes a booking identified by its numeric ID, revoking the associated keyless access and PIN. This action cannot be undone, and it is the operation that locks a real person out of a real building.
- List Guests Retrieves the guest registration list, returning bookings together with the collected guest identity data: names, dates of birth, nationality, document details, and uploaded document photos. Paginated up to 50 per page, and the basis for police reporting and guest verification workflows.
Payments
5- List Payment Requests Retrieves the list of payment requests, including the requested amount, purpose, creation date, and guest payment link token, plus the payment date, provider channel, and any split breakdown for settled requests. Paginated up to 50 per page. The presence of settlement fields is how a flow tells a paid request from an unpaid one.
- Get Payment Request by ID Retrieves a single payment request by its numeric ID, including the amount, purpose, guest payment link token, preferred language, and settlement details if it has been paid.
- Create Payment Request Creates a new payment request for a given amount and purpose, returning the payment object with a generated ID and token. The guest-facing payment page is reachable at https://chiavistello.it/mypayment/ followed by that token. An external reference (PNR) and the preferred language of the page can be set. This creates a request; the guest completes payment on the hosted page.
- Update Payment Request Updates an existing payment request identified by its numeric ID. Amount and purpose are required by the API for the update, and the external reference and language can also be adjusted.
- Delete Payment Request Permanently deletes a payment request identified by its numeric ID. This action cannot be undone, and it invalidates the link a guest may already be holding.
Fiscal Receipts
2- List Fiscal Receipts Retrieves the list of fiscal receipts (corrispettivi) already issued to the Italian Revenue Agency through Chiavistello, including the document identifier (DCW), issue date, amount, and whether the document is a cancellation. The reconciliation surface at period end.
- Issue Fiscal Receipt Issues or cancels a fiscal receipt (corrispettivo) at the Italian Revenue Agency for a booking, identified by its external reference (PNR) or Chiavistello booking ID. To issue, provide either a single line via description, amount, and VAT, or multiple line items; a customer tax code is optional. To cancel a previously issued receipt, provide its progressive number in the Cancellation field instead of line items, which files a second permanent document rather than editing the first.
Frequently Asked Questions
What can FlowRunner do with Chiavistello?
FlowRunner agents can run Get Device Information, Get API Status, and List Switches in Chiavistello, plus 16 more actions.
Does connecting Chiavistello to FlowRunner require OAuth?
No. Chiavistello connects to FlowRunner with an API key, no OAuth flow required.
Can Chiavistello trigger a FlowRunner workflow automatically?
Chiavistello doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with Chiavistello
$100 in credits. No card required. Connect in minutes.