Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Human Resources Payroll
  3. Payroll Export v 17.0
  4. Sales Conditions FAQ

Payroll Export

by ERP Heritage https://www.erpheritage.com.au/
Odoo
v 17.0 Third Party 39
Download for v 17.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Attendances (hr_attendance)
• Discuss (mail)
• Employees (hr)
Community Apps Dependencies Show
• Attendance Suite Base
• EH HR Compatibility
Lines of code 2027
Technical Name eh_hr_attendance_payroll_export
LicenseLGPL-3
Websitehttps://www.erpheritage.com.au/
Versions 16.0 17.0 18.0 19.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Attendances (hr_attendance)
• Discuss (mail)
• Employees (hr)
Community Apps Dependencies Show
• Attendance Suite Base
• EH HR Compatibility
Lines of code 2027
Technical Name eh_hr_attendance_payroll_export
LicenseLGPL-3
Websitehttps://www.erpheritage.com.au/
Versions 16.0 17.0 18.0 19.0
ERP Heritage · HR Platform
Attendance to payroll, vendor-neutral

Payroll Export for Attendance

Turn captured attendance into the exact timesheet CSV your payroll system imports, with a full audit trail of every file you generate.

Free · LGPL-3Odoo 17 CommunityLGPL-3v1.0.0
Generic CSV
Xero Payroll
KeyPay
Employment Hero
MYOB AccountRight

Why this module

Payroll Export for Attendance

Vendor neutral

Five formats, one wizard

Pick Generic, Xero, KeyPay, Employment Hero, or MYOB and the wizard writes the exact header row and column order that vendor's bulk timesheet import expects. The operator uploads the file through the vendor's own portal once per pay cycle.

Preview first

See it before you commit

Dry run is on by default. Run it to see row count, employee count, total hours, and the first lines of the file without saving anything. Turn dry run off only when the numbers look right, and the file is saved and downloadable.

Defensible

Every export is on the record

Each committed export becomes a run record with provider, date range, totals, who generated it and when, plus the file bytes themselves. Re-download a past file at any time. Auditors get read-only access to the full history.

Day in the life

Friday pay run, three minutes

Payroll opens Export payroll, picks Xero and the fortnight's dates, and clicks Run with dry run on. The preview shows 42 rows across 18 employees and 612.5 total hours, with the first lines of the Xero timesheet file. The numbers match the roster, so they switch dry run off, run again, and download payroll_xero_2026-06-01_to_2026-06-14.csv. They upload it through the Xero portal. The run sits in Past exports with their name and timestamp, ready to re-download if Xero rejects a line and they need the source file again.

Edge cases

The cases most modules quietly ignore.

In the shipped code today, each one a place where a cheaper module silently does the wrong thing.

Split shifts

Two or three punches on the same day for one employee aggregate into a single row, with hours summed, the earliest check-in and latest check-out kept. A morning plus afternoon shift becomes one eight-hour line, not two.

Open attendances

Rows with no check-out are excluded by default so a half-finished shift does not skew totals. Turn on Include open attendances and elapsed hours are counted up to the date-to cutoff, never past it.

Inverted range

A date-to earlier than date-from is rejected by a model constraint before any file is written, so you cannot generate a backwards or empty-by-accident export.

Empty result

A range with no matching attendance still emits a valid file with the header row, so the vendor import sees a well-formed file rather than an error.

Multi-company

The wizard scopes attendance to the selected company, and a per-company record rule fences run records so one company's payroll history is never visible to another.

Dry run isolation

A dry run computes the full file and preview but creates no run record and saves no bytes, so previewing repeatedly leaves no trace in the audit log.

What is inside

Built to do the job, end to end.

  • The export wizard. Provider, date range, optional employee filter, an include-open-attendances switch, and a dry-run switch. Defaults to your company's configured provider and a sensible fortnight window. Shows row count, employee count, total hours, and a file preview after each run.
  • Five exporter formats. Generic CSV carries the full neutral column set. Xero writes employee, date, hours, earnings rate, and a tracking column. KeyPay and Employment Hero write email-keyed time-bracket rows with cost centre. MYOB writes Card ID, date, pay item, hours, and job, day by day. All files are UTF-8 with a BOM for clean spreadsheet opening.
  • Export run audit log. Every committed export is an eh.hr.payroll.export.run record carrying provider, date range, totals, generator, timestamp, and the file as an attachment, with mail.thread tracking on the key fields. Re-run the same range and the new run sits beside the old one rather than overwriting it.
  • Settings and roles. Per-company default provider and a retention-days value live in Settings. Three roles ship: managers and admins run exports, auditors get read-only access to the run history. A retention sweep method is provided to trim runs past the horizon.

Honest about the edges

What this does not do, so nothing surprises you.

  • CSV files only. The module does not maintain live API connectors to any payroll vendor. You upload each generated file through the vendor's own portal.
  • Analytic and project carry-through into the file appears only when the separate attendance job-cost module is installed, which adds the analytic field to attendance records. Without it those columns are written empty.
  • MYOB Card ID matches on the employee work email in this build. A dedicated per-employee external payroll reference field is not provided here, so set up your MYOB match on email or map it during the vendor import.
  • Retention is configurable per company and a sweep method ships, but this build does not register a scheduled job to run it automatically. Trim past runs by invoking the sweep or deleting old runs manually.
  • Hours come straight from attendance check-in and check-out durations. The module does not split ordinary versus overtime, apply award interpretation, or compute pay rates. That is the payroll system's job.
  • Requires the ERP Heritage attendance base module and Odoo 17 Community hr_attendance.
Search

payroll export Odoo 17, attendance to payroll CSV, timesheet CSV export, hr_attendance payroll export, Xero timesheet import CSV, KeyPay timesheet export, Employment Hero timesheet CSV, MYOB timesheet import, generic payroll CSV export, pay cycle attendance export, multi-company payroll export, payroll export audit trail, split shift aggregation payroll, Odoo 17 Community payroll

ERP Heritage

Production-grade Odoo accounting, built to an engineering bar and documented honestly. Support: info@erpheritage.com.au
Developed by ERP Heritage - Odoo Implementation

v1.0.0 · LGPL-3 · Odoo 17 Community

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with