Answers · Bookings into your accounts
How do I record Airbnb income paid in a foreign currency?
Short answer
Keep the amount the guest paid in its original currency, convert it once into your accounting currency at a rate you record, and put any difference between that figure and what your bank receives into an exchange gain or loss account. Do not edit the invoice total to make it match the bank. With Airflow, each Airbnb booking-confirmation email becomes a booking that keeps its original currency, and a draft invoice in Xero in your Xero base currency, converted when the invoice is created, with the rate, its source and the time recorded. You review and approve the draft yourself.
Read which exchange rate belongs on the invoice, the payment and the Xero entry →
One booking, more than one exchange rate
A guest pays in euros. Airbnb deducts its host service fee, then converts the payout at its own rate and at its own timing, with a spread that is not shown separately. Your bank may take its own conversion or fee on receipt. The amount that arrives equals neither the guest total nor your invoice, and you do not know the exact rate that was used.
So which number is the income? The booking has a value in the currency it was agreed in, a value in the currency you run the business in, and a value in the base currency of your Xero organisation. Software with a single currency field hides two of those.
One mistake is worse than all the others. When a rate cannot be found, never substitute 1: for Kenyan shillings to US dollars that turns 15,000 into 15,000 dollars. A booking without a rate should wait, not be added to a total.
How to do it with Airflow
- 1
Connect Xero and check its base currency
Airflow reads the base currency from your Xero organisation when you connect. If it is still not known when an invoice is due, Airflow refuses to create the invoice and tells you, with a link to fix it; it does not guess a currency.
- 2
Send Airflow your Airbnb emails
Forward booking-confirmation emails or connect Gmail or Outlook. The booking keeps the amount and currency on the email: a 1,200 euro stay stays 1,200 euros, with no early conversion or rounding.
- 3
A draft invoice in your accounting currency
Airflow creates the draft in Xero in your base currency, with the Airbnb fee on its own line, converting at the time the invoice is created. The rate, where it came from and when it was fetched are recorded with the booking, so your accountant can check it later.
- 4
Match the payout and post the difference
Approve the draft yourself. When the payout arrives, match it in Xero and put the difference between the invoice and the deposit in an exchange gain or loss account. The same process creates draft invoices in QuickBooks Online, Sage or FreshBooks.
A euro booking in pound accounts
A stay paid in euros by a host whose Xero is in pounds. Illustrative figures and an illustrative rate.
| Guest paid, accommodation and cleaning | EUR 1,200.00 |
|---|---|
| Airbnb host service fee | EUR -186.00 |
| Rate recorded when the invoice was created | 1 EUR = 0.85 GBP |
| Draft invoice in Xero, income and fee lines | GBP 1,020.00 and GBP -158.10 |
| Expected from Airbnb at that rate | GBP 861.90 |
| Received in the bank | GBP 850.00 |
| Exchange difference, to its own account | GBP -11.90 |
The 11.90 is an exchange loss, not lower revenue. Income stays at 1,020.00.
One currency for reports
Besides the original and accounting amounts, Airflow holds every booking in US dollars as a standard currency, so income from a euro villa and a pound cottage can be added up and compared. You choose the currency your dashboard displays, and changing it alters no stored figure.
Direct bookings quoted in the guest's currency
When you take a booking yourself, Airflow keeps two amounts: the price the guest agreed, in their currency, and the same booking in the currency you account in. The guest sees the agreed price, the converted amount and the rate between them. What is still owed is tracked in the agreed currency, and the rate is taken when the guest pays and corrected to what was actually received.
Other ways to do this
Airflow is one option. These are the others, and when each is the better choice.
- A spreadsheet with a rate column
- Record each booking's original amount, the rate you used and the date. It works if you are strict about one conversion moment, and becomes heavy with several currencies and rates that change daily.
- Airbnb's own reports
- Your Airbnb earnings export is the record of what was paid out. It shows amounts in one currency with no exchange-rate detail, so the original booking currency has to come from somewhere else.
- A bookkeeper
- A bookkeeper will pick a consistent rate source, post the exchange differences and keep them out of revenue. Give them the booking currency and amount for every stay.
What Airflow does not do
- Airflow does not know the rate Airbnb or your bank applied. It records its own rate; the difference is yours to post in Xero.
- Airflow does not match the payout to the invoice or post exchange gains and losses for you.
- Rates are captured at a point in time. They are not live trading rates and do not change afterwards.
- The standard reporting currency is US dollars and cannot be changed. Your display and accounting currencies can be anything.
Common questions
Which exchange rate should I use for an Airbnb booking?
Pick one defined moment, use a named source and record the rate with the transaction. Airflow converts when the invoice is created and stores the rate, source and time. Multi-currency Airbnb income in Xero →
Why does the deposit not match the converted invoice?
Airbnb deducted its fee, applied its own rate at its own timing, and your bank may have converted again. A difference on every foreign booking is normal. Why multi-currency bookings break a spreadsheet →
Where does the exchange difference go?
In its own realised exchange gain or loss account. If you edit invoice totals to make two numbers agree, the currency movement is hidden inside your revenue. Multi-currency Airbnb income in Xero →
My invoices are not appearing in Xero. Could currency be the cause?
Yes. Check the base currency of your Xero organisation first; a booking sent in a currency Xero is not set up for is rejected. Airflow now reads the base currency from Xero when you connect. Multi-currency Airbnb income in Xero →
Can I quote a direct guest in their own currency?
Yes. The agreed price stays in the guest's currency, your books read the converted figure, and the guest is shown both with the rate. Quote in their currency, bank in yours →
Try it on your own bookings
Forward a few booking emails and look at what Airflow builds from them. A card is needed at sign-up.
Start with Airflow See plans and pricing