Example · Booking calendar

From the booking slot to the invoice.

The customer picks a time, name, email, and service. The booking is reserved. In Xero a contact is matched or created. A draft invoice is raised with the booking ID and emailed to the customer. No retyping.

Back to AI integrations overview

Ten steps

  1. 01Slot. The customer chooses a date and time.
  2. 02Details. Name, email, phone, and any note.
  3. 03Service. A listed service, with its mapped price.
  4. 04Reserve. The booking is held and given a reference.
  5. 05Calendar invite. An invite is prepared for the customer’s email.
  6. 06Xero API. The workflow calls Xero. QuickBooks works the same way.
  7. 07Find the contact. Lookup by email.
  8. 08Create the contact. Only if no contact matches that email.
  9. 09Invoice. A draft invoice, on the mapped service item, with the booking ID on it.
  10. 10Email the invoice. The invoice email is queued. This is not a card payment.

Customer view and Xero

What the customer sees

  • Open times for the next 14 days, in SAST.
  • Name, email, phone, and service.
  • A confirmation, a booking reference, and a calendar invite.
  • An invoice by email. No card payment.

What Xero does

  • Looks up the contact by email.
  • Creates a contact only if none matches.
  • Drafts an invoice from the mapped service item.
  • Puts the booking ID on the invoice.

Guardrails

  • Xero is the system of record. QuickBooks is available when that is the ledger.
  • Contacts are matched on email.
  • The invoice uses a mapped service item, not a typed amount.
  • The booking ID is written on the invoice.
  • If Xero fails after the slot is reserved, the booking is held and an exception is logged.
  • The customer never sees a raw API error.

Sample booking

This form does not call Xero. It shows a sample confirmation only. Times are the next 14 days, SAST. Prices are samples in USD. No payment.

Date and time