> ## Documentation Index
> Fetch the complete documentation index at: https://docs.roomdoo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Planning colours: what each reservation state means

> Meaning of each colour on the Roomdoo reservation calendar and how to read payment and check-in/check-out status at a glance.

## Reading the planning at a glance

Each reservation on the calendar has a colour that combines two things: **where the guest is** (future, in-house, checked out) and **payment status** (pending, paid, overpaid). Learning the legend saves you from opening every reservation to know what's going on.

<div style={{display: "flex", justifyContent: "center"}}>
  <img src="https://mintcdn.com/roomdoo/PEDQmEgPfSMQhi5P/images/reservas/leyenda-planning.png?fit=max&auto=format&n=PEDQmEgPfSMQhi5P&q=85&s=328318ba737b7a9a50e7d8447cc2c8ec" alt="Roomdoo planning colour legend with every reservation state" style={{ maxWidth: "900px", width: "100%" }} width="1869" height="1004" data-path="images/reservas/leyenda-planning.png" />
</div>

## The most common states

These are the ones you'll see daily:

<div style={{ display: 'flex', flexDirection: 'column', gap: '8px' }}>
  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#29A8E0', display: 'inline-block', flexShrink: 0 }} />

    <span>**Future reservation, managed**: confirmed and pending arrival. The **€** symbol means it isn't paid yet.</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#E07820', display: 'inline-block', flexShrink: 0 }} />

    <span>**OTA reservation to assign**: new OTA booking, pending review and room assignment.</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#7EC820', display: 'inline-block', flexShrink: 0 }} />

    <span>**Check-in, paid**: guest in-house and the reservation is paid.</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#4B3B8C', display: 'inline-block', flexShrink: 0 }} />

    <span>**Check-out, payment pending**: guest checked out but the reservation isn't paid (full or partial).</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#8C8C8C', display: 'inline-block', flexShrink: 0 }} />

    <span>**Closed reservation**: guest checked out and paid. Normal final state.</span>
  </div>
</div>

## Other states

These show up less often:

<div style={{ display: 'flex', flexDirection: 'column', gap: '8px' }}>
  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#E63030', display: 'inline-block', flexShrink: 0 }} />

    <span>**Check-in, payment pending**: guest in-house but the reservation isn't paid yet (full or partial).</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#9B2580', display: 'inline-block', flexShrink: 0 }} />

    <span>**Pre-reservation (quote)**: saved as a quote. Holds availability but isn't confirmed.</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#1A7A8C', display: 'inline-block', flexShrink: 0 }} />

    <span>**Overpayment**: more has been charged than the service amount.</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#C030A0', display: 'inline-block', flexShrink: 0 }} />

    <span>**Reservation pending payment**: confirmed but not yet paid.</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#C49A9A', display: 'inline-block', flexShrink: 0 }} />

    <span>**Staff reservation**: when property staff are staying.</span>
  </div>

  <div style={{ display: 'flex', alignItems: 'center', gap: '10px' }}>
    <span style={{ width: '12px', height: '12px', borderRadius: '50%', backgroundColor: '#7B3060', display: 'inline-block', flexShrink: 0 }} />

    <span>**Check-out, invoice pending**: guest checked out and paid, but the invoice is still pending.</span>
  </div>
</div>

## Blocks and other indicators

These aren't reservations, but marks on the calendar:

* **Maintenance block**: striped cell labelled **CERRADO** (closed). The room isn't available to sell.
* **Direct-sales block**: striped cell labelled **VENTA DIRECTA**. Held to sell through the direct channel only.
* **Minimum stay**: hovering over a date shows the minimum number of nights required for that date.

## How they're used day to day

* **In the morning** review the **oranges** (OTAs to assign) and the **reds** (check-ins with payment pending).
* **Before check-out** look at the **purples** (check-out with payment or invoice pending).
* By end of day, everything should move toward **grey** (closed) — green if guests are still in-house.
* **Dark teal** (overpayment) needs attention: confirm whether it's a real overpayment or a duplicate. See [Overbookings and overpayments](/en/payments/overbooking-overpayments).

<Tip>
  To scroll faster through the calendar, hold **Shift** and use the mouse wheel.
</Tip>

## When to contact support

* A reservation shows a **colour that isn't in this legend**.
* The colour **doesn't refresh** after charging, checking in or invoicing — it should update within seconds.
* The same state shows with **different colours** on different reservations (data inconsistency).
