Skip to content

Sync options reference ​

Every option below lives on a company's Settings page in connect.planapulse.com. Sensible defaults are on, so most teams never change these — but here is the full list, grouped by what it controls. Direction shows which way the data flows: Payhawk → Odoo, Odoo → Payhawk, two-way, or — for a local setting that moves nothing on its own.

Documents ​

OptionWhat it doesDefaultDirection
Import expenses as vendor billsTurns each reviewed Payhawk expense into a vendor bill in Odoo.OnPayhawk → Odoo
Attach receipt documentsAttaches the receipt image/PDF to the Odoo bill.OnPayhawk → Odoo
Back-link to PayhawkAdds a link on the Odoo bill back to the original Payhawk expense.OnPayhawk → Odoo
Auto-post billsPosts imported bills automatically instead of leaving them as drafts.OnIn Odoo
Apply Payhawk corrections to draft billsCopies only what you corrected in Payhawk onto the bill, while it is an unpaid draft, and keeps what your team edited in Odoo. See the note below.OffPayhawk → Odoo
Refresh a draft bill before paying itOnce Payhawk marks an expense paid, rebuilds its unpaid draft bill from the expense, every line included. Replaces anything your team edited on that draft.OffPayhawk → Odoo

Apply Payhawk corrections to draft bills ​

A bill is created once. With this option on, a correction you make in Payhawk afterwards is copied onto the bill, but only the fields you changed:

  • A field you changed in Payhawk, such as the document number, a date, the supplier, an account, a tax, an amount or an analytic choice, is updated on the bill.
  • A field you did not change in Payhawk keeps whatever your team put there in Odoo. So does a line your team added.
  • A line you add in Payhawk is added to the bill. A line you remove in Payhawk is never deleted from the bill: the run log tells you, and your team removes it in Odoo if it should go.
  • Only an unpaid draft is changed. A posted or paid bill is left as it is, and the run log names the expense once for each correction. Reset the bill to draft in Odoo and the correction is copied at the next full sync, within a day.
  • The bill's chatter lists what was copied, and anything that was not.

It works from the day you switch it on. Bills that already differ from Payhawk at that moment keep their values, and only corrections made from then on are copied.

When it is on, Refresh a draft bill before paying it does nothing.

Master data ​

OptionWhat it doesDefaultDirection
Sync suppliersLinks each Payhawk supplier to one Odoo vendor — matched by tax ID then name — and creates whichever side is missing it. Odoo is the master record: later edits to a linked vendor are pushed Odoo → Payhawk, never the other way.OnTwo-way
Suppliers per runHow many vendors one run handles per direction. The rest follow on the next runs, so nothing is skipped. 0 = no limit.200Two-way
Sync tax ratesPublishes your Odoo purchase taxes to Payhawk so reviewers pick the same taxes.OnOdoo → Payhawk
Which taxes to syncOptional pick-list of which purchase taxes to publish.Empty = all active purchase taxesOdoo → Payhawk
Sync chart of accountsPublishes your Odoo expense accounts as Payhawk account codes.OnOdoo → Payhawk
Sync departments / analytics / branches / assetsPublishes analytic accounts, departments, branches and asset models to Payhawk.OnOdoo → Payhawk

Payments ​

OptionWhat it doesDefaultDirection
Import payments / bank movementsBrings settled card and reimbursement payments into a dedicated Payhawk journal.OnPayhawk → Odoo
Group into bank statementsWraps payments into bank statements; off keeps modern bare statement lines.Off (bare lines)Payhawk → Odoo
Set supplier on paymentsFills the supplier/partner on each imported payment.OnPayhawk → Odoo
Update currency ratesKeeps Odoo's exchange rates aligned with the payment currencies.OnPayhawk → Odoo

Behaviour ​

OptionWhat it doesDefaultDirection
Target Odoo companyThe Odoo company bills and payments land in.Required—
Import from dateThe connector does nothing at all before this date. See the note below.Empty—
Max records per runCaps how many records one sync processes.200—
Real-time webhooksTriggers a sync the moment an expense is reviewed, instead of waiting.OnPayhawk → Odoo
User mappingFor reimbursements: maps a Payhawk person to an Odoo user or employee.——

Import from date ​

Leave it empty and the connector considers your whole Payhawk account, which is how every link worked before this setting existed.

Set it and the connector stops at that date, in both directions of the word:

  • An expense Payhawk reviewed or settled earlier is never imported.
  • It is never looked at again either. This is the part that matters. Without a date, the nightly full pass re-reads the whole account, so a bill you delete in Odoo comes back. With one, a deletion before the date is permanent.
  • Bank movements from before the date are left alone, including a movement that would have paid an older bill. If such a bill is still open in Odoo, settle it by hand: the connector will not reach back for it.

The date is per company, because each company is its own link with its own settings.

Set it to the day you went live, and everything your accountant already closed stays closed.

Guards ​

OptionWhat it doesDefaultDirection
Match base currenciesRefuses to sync if the Payhawk entity and Odoo company use different base currencies.On—

Auto-post safety

Auto-post bills is on by default, but it never posts something questionable. A bill whose tax code could not be matched to an Odoo tax is always left as a draft with a warning for you to review — it is never auto-posted. So the worst case is a bill waiting for you, never a wrong posting.

Which taxes to sync

Leave Which taxes to sync empty and PLANA Connect publishes every active purchase tax to Payhawk — this is what most teams want. Use the pick-list only when you want reviewers to see a shorter, curated set of taxes (for example, hiding taxes you keep for reporting but don't use on expenses).

How taxes are handled

For each expense line, PLANA Connect maps Payhawk's tax to the matching Odoo purchase tax by its name and derives the net from Payhawk's gross. It does not compute the tax itself — when the bill is posted, Odoo recomputes the full tax accounting (the accounts behind each tax, VAT-return boxes, reverse-charge, non-deductible, and so on). If a tax can't be matched, the line is left untaxed and the bill stays a draft with a warning, so nothing wrong is ever posted automatically.

Where next

Coming from 8. Go live? These settings are what you fine-tune afterwards. If something isn't behaving as expected, see troubleshooting.

© PLANA Digital Ltd.