Skip to content

Automation · Customer service and scheduling

Reserve a vehicle over WhatsApp with HQ Rental

An AI agent verifies an existing customer, checks HQ Rental availability, and creates the WhatsApp booking only after explicit confirmation.

How do I reserve a vehicle over WhatsApp using live HQ Rental availability?

A Met connected to HQ Rental serves only an existing customer whose `category_id` and `customer_id` the operation knows, with a verified `vehicle_class_id`, class name, price, currency, brand, and locations. It opens the customer, checks whether HQ reports available cars for the dates and locations, and reads the real additional charges. The public availability contract defines no class or price fields, so it derives neither. It repeats the configured selection, dates, locations, extras, and customer and waits for explicit confirmation. Only then does it create the reservation with the local boolean guard `confirmar: true`, which Meteor consumes without sending it to HQ, and read back the result. A new customer is created in HQ Rental outside the connector. The flow does not charge, sign a contract, assign a plate, or change or cancel reservations.

What starts it

When the customer writes

It starts when an existing customer asks over WhatsApp for a vehicle at specific dates and locations. This is not a scheduled automation: the Met continues the conversation and creates nothing when the person is only asking, operating IDs are missing, or the recap is unconfirmed.

Nothing to set up. The Met assigned to that channel picks up the conversation and runs the procedure inside it.

Who runs it

Vehicle reservation Met

Customer service team

This is the Met already serving the operation's WhatsApp with HQ Rental connected. Its job is to turn a specific request into the same reservation the customer just confirmed, without inventing availability, a customer, class, price, currency, or internal identifiers.

Channels: WhatsApp

What you need connected

5 steps · 5 tools

The procedure, step by step

Each step shows the tool that runs. They belong to the real connector: if one of them stopped existing, this page would not build.

  1. 1

    Verify the customer and configured selection

    Before quoting, the operation must have linked the conversation to an existing `category_id` and `customer_id`. The Met opens that record and checks that `contact.id` matches. It does not search by name, email, or phone and never uses those details as a customer-creation shortcut. If the record is missing, the team creates or updates the customer in HQ Rental and stops this conversation. It also checks the configured `vehicle_class_id`, class name, price, currency, `brand_id`, and locations for this flow.

  2. 2

    Check availability for the dates and locations

    The Met asks for complete pickup and return dates and times and uses the location IDs that the operation configured for this recipe. Times follow the tenant timezone rather than a guessed conversion from the server region. HQ documents that the endpoint returns a list of available cars but publishes no response body. The Met therefore uses only what HQ states literally and never extracts a class list, prices, or `vehicle_class_id` from it. If HQ reports no availability, the flow stops.

  3. 3

    Read the extras that exist in the account

    For the class the operation preselected, the Met queries the real additional-charge catalog and shows only what HQ Rental returns. It does not fill an insurance, GPS, or child-seat list from memory or claim a charge applies to those dates or class unless the response proves it. It keeps the exact ID and selected quantity in HQ's expected format.

  4. 4

    Repeat the recap and wait for explicit confirmation

    The Met repeats local dates and times, locations, class, price and currency verified by the operation, extras, and existing customer. It calls creation only after the person answers yes to that recap. Silence, a new question, or selecting an extra does not count. Only after that reply does it pass the local guard `confirmar: true` as a boolean. If it is missing, `false`, or a string, Meteor blocks creation before calling HQ Rental; the guard is not sent to HQ. It also sends the verified `customer_id`, `vehicle_class_id`, `brand_id`, locations, and charges; it never derives them from a name or an availability response with no published structure.

  5. 5

    Verify the reservation saved by HQ Rental

    When creation returns an ID, the Met opens that reservation and compares dates, locations, class, customer, and charges with the confirmed recap. Its reply uses the number and values returned by HQ Rental. If creation returns 422 for an account field or rule, the team fixes the customer or configuration inside HQ. After a timeout or ambiguous submission error, it does not repeat the mutation blindly because that could duplicate it; the team checks HQ Rental before deciding whether another attempt is appropriate.

Before you start

What you need ready

The Met solves none of these for you. If one is missing, the automation stops there.

The limits

What this automation does NOT solve

Better said here than discovered halfway through the rollout.

FAQ

Questions about this automation

The OTA endpoint exposed by the connector promises available cars, but its documentation publishes no response body. The recipe assumes no fields and uses a class, price, and currency that the operation already verified in HQ Rental.

Not directly. The team first creates the customer in HQ Rental and obtains the `category_id` and `customer_id`. The Met verifies that record before continuing the reservation.

The configured region does not determine currency. The operation verifies the currency and price with the class before enabling the flow; the Met does not infer them from availability.

Not in this recipe. The connector creates the reservation with its charges, but it does not request a payment link or process a transaction. Collection continues in the operation's channel.

It does not automatically submit creation again. Because the tool has no idempotency key, the team first checks HQ Rental to see whether the reservation exists and avoid a duplicate.

Keep going

Other automations built on the same tools

Want this automation running on your own data?

We will show it to you with your accounts connected, not with a canned demo.