Negotiated Rates & Company Billing
Keep a partner's contract rates per rate plan, bill their stays to the company window, and let the credit limit and OTA remittance do their work.
A partner record earns its keep in two places: the price its bookings get, and who pays for them. Both are set on the partner and both apply the moment a booking names it, so a corporate stay is priced and billed correctly from its first line rather than after somebody remembers.
Open the partner at /companies/{id} and choose the Negotiated rates tab. The panel's own description says what it does: "Applied automatically to bookings made through this partner; the rate in force on arrival is used."
The contract
A negotiated rate is one row per rate plan. Because a rate plan belongs to a single room type, choosing the room type first narrows the plans you can pick.
| Field | Meaning |
|---|---|
| Room type | Narrows the rate plans below it |
| Rate plan | The plan this rate replaces the price of |
| Basis | Fixed nightly rate or % off the plan |
| Rate per night / Discount (%) | The contracted figure, in the property's currency or as a percentage |
| Valid from / Valid to | Optional. Empty on both sides means Always |
The two bases behave differently, and the difference matters when occupancy varies:
Fixed nightly rate replaces every occupancy option of the plan with one figure. A single and a double on that plan both pay the contracted rate — which is usually what a corporate contract means by "our rate is 180 a night".
% off the plan scales each occupancy option, so the plan's own occupancy differences survive. A 15 % discount gives 15 % off the single rate and 15 % off the double rate.
Either way, the plan still supplies everything else: taxes, fees and stay restrictions are untouched. A negotiated rate changes the price, not the tax treatment.
Add rate
Click Add rate on the Negotiated rates tab, then choose the Room type and the Rate plan.
Set the basis and the figure
Choose the Basis and type the figure. As you do, the panel shows the plan's current prices by occupancy and what this partner would pay instead — "Corporate BB today: 1 adult 150.00 · 2 adults 180.00 (primary) → this partner 153.00".
Set the validity
Valid from and Valid to bound the contract period. Leave both empty for a rate with no end date. A Valid to before the Valid from is refused, as is a discount above 100 %.
Save rate
"Negotiated rate saved" confirms it, and the row joins the table: room type, rate plan, rate and validity (Always, From {date}, Until {date} or a span). The bin button removes a rate ("Negotiated rate removed").
Renewals keep the old row
Saving a rate for a plan with the same Valid from replaces that row. Saving one with a different Valid from creates a new row beside the old one.
That is how a renewal works: last year's rate keeps its dates, this year's sits next to it, and the history of what the partner was charged survives the renegotiation. When two periods overlap, the one that started most recently wins.
How the rate reaches a booking
Name the partner on the booking
On the New Reservation sheet, pick the partner under Company / agent — "Books at the partner's negotiated rates and can bill the company for the stay". The default is None — direct booking, and OTAs are not offered: their stays arrive through the channel manager, not the desk. See Creating reservations.
Check the quote
The quote under the room rows re-prices as soon as a partner is chosen, so the contracted figure is on screen before you save. If the partner has no rate on that plan, the plan's own price stands.
Choose who pays
Who pays appears once a partner is selected, pre-filled from the partner's default. Where it is not Guest pays everything, a line beneath confirms "The company's share opens on a company window billed to {name}" — and adds "and counts against its credit limit" when the partner has one.
The rate in force is judged as at arrival, like taxes: a stay arriving inside the contract period is priced on that contract even if it was booked before the period began.
A group rate beats a negotiated rate
When a booking is both a group pick-up and attached to a partner, and both have a price for the plan, the group rate wins — it was agreed for that block. See Rooming lists.
Billing modes
| Mode | What the company window takes |
|---|---|
| Guest pays everything | Nothing. The stay is an ordinary folio and the guest settles it. |
| Company pays room & tax, guest pays extras | The room charge and tax. The guest's window keeps their incidentals to settle at check-out. |
| Company pays everything | Every charge on the folio, extras included. |
The company window opens on the stay's folio in the same commit as the folio itself and is labelled with the partner's name, so the stay is billed to the company before anybody can look at it. As with group routing, this moves allocations, not charges: the lines stay posted on the stay's folio, where they belong for revenue, and only the question of who pays them changes.
The company's share becomes money owed when the balance on that window is transferred to the city ledger, which raises an invoice on the partner with a due date from its payment terms — see Receivables & city ledger and Invoices.
The credit limit check
A company booking is refused when it would take the partner past its credit limit:
Blue Horizon Travels would exceed its credit limit: 185000 against 150000
Exposure is everything the partner could be asked to pay and has not: the open balance on its invoices, plus the balances sitting on its company windows for stays that have not been invoiced yet. Counting only invoices would let a dozen uninvoiced corporate stays pile up under a limit that looks untouched.
Three things follow:
- A limit of
0means no limit. Nothing is checked. - Guest-pays bookings are never checked. The company carries nothing, so there is nothing to count.
- Cancelled stays drop out of the exposure. Holds, confirmed, in-house and departed stays all count.
Folio transfers are checked against the limit too, so the partner cannot be pushed past it from the accounting side either ("Transfer of … exceeds the account's remaining credit of …"). An inactive partner cannot be billed at all ("Company not found or inactive").
OTA remittance
A channel booking where the guest paid the OTA leaves you with money owed by the channel, not by the guest. The import settles the stay with a prepayment, which puts the amount in the city ledger — but the ledger does not know which channel owes it, or by when.
That is what the Channel name on an OTA partner is for. Give the account the channel name as Channex reports it, and when an OTA-collected stay from that channel is checked out, an invoice is raised on the account for what the channel still owes, with a due date from the account's payment terms and a note reading "Collected by {channel} for {reference}". The money then sits in the city ledger as a receivable with a name on it, where it can be chased, aged and matched against the remittance.
A few details worth knowing:
- Matching is forgiving about spelling — "Booking.com" and "booking_com" find the same account — but the channel has to be the same channel.
- A virtual card the desk already charged nets the prepayment to nothing, so a VCC stay raises no invoice. There is nothing to chase: you took the money yourself.
- The invoice is a record of the receivable only. The journal moved the money when the prepayment posted, so nothing is counted twice.
- When the channel remits, record the receipt and a credit note for its commission like any other account.
- With no OTA account for that channel, nothing is raised and the money stays in the city ledger unattributed.
What is deliberately not built
Three things to know before promising a client
Commission is stored, never posted. A travel agent's Commission (%) sits on the record for reference; no journal entry, invoice or deduction is ever made from it. Agent commission is settled outside Innvera. (Channel commission is a separate mechanism — see the accounting settings.)
There is no monthly batch invoice. A partner is invoiced one stay at a time, when that stay's company-window balance is transferred to the city ledger at check-out. There is no month-end run that rolls a partner's stays into a single document.
Company and billing mode cannot be changed after the booking is created. They are set on the New Reservation sheet and are fixed from then on — the company window opens with the folio and the stay is priced on the contract. If the wrong partner was named, or the stay should not be billed to them, move the charges between windows on the folio, or cancel and re-book.
Common mistakes
- Adding the rate to the wrong plan. A rate belongs to one rate plan, so a partner booked onto a different plan of the same room type pays that plan's public price.
- Expecting a rate to apply retroactively. The rate in force on arrival is used, and a booking is priced when it is created. Changing the contract does not re-price stays already booked.
- Overwriting a contract instead of renewing it. Reusing the same Valid from replaces the old row and loses the history. Give the new period its own start date.
- Leaving the credit limit at zero for a partner on terms. Zero is no limit, not no credit — nothing will ever be refused.
Related
Companies & Agents
Partner records for corporate clients, travel agents and OTAs — one record is the profile, what bookings bill to and what invoices are raised on.
Overview
The product you sell — room types and physical rooms, the rate plans that price them, and the policies, taxes, facilities and photos that go with them.

