Preparing invoices and quotes can be time consuming. This plugin helps you speed-up your billing process, from creating invoices or quotes, minimizing any potential errors to getting paid faster.
Create an electronic invoice, a quote or accounting records in just a matter of minutes with the block-based WordPress editor. Invoice numbers are generated automatically in unique and sequential order. For convenience reasons the totals of the table rows are calculated in What You See Is What You Get real-time.
Global settings like your name, your address, the invoice number format, tax rates and the currency can be defined in the Customizer. The billing header can be branded with your logo. Any frontend styles will be inherited from the theme so you please make sure the theme you’ve installed on your site fully supports the Block editor.

Target group?

  • Freelancers and small agencies that need a billing suite which integrates seamlessly into their existing WordPress environment.

Compatible themes?

The plugin should work with any modern WordPress theme that supports the Block editor. Minor style modifications in the theme may be required.
Heads up: Please note that the main content area of the Single/Custom Post Template of your theme needs to be setup in “fullwidth” format. Having a sidebar may narrow the (invoice) table layout too much.

The following WordPress themes have been tested:

What’s included?

  • Invoices
  • Quotes
  • Accounting
  • Custom styles: Compatible with any WordPress theme that supports the Block editor
  • Custom Post types
  • Blocks and Block templates
  • WYSIWYG, Real-time calculation
  • Locale specific number formatting
  • Legally compliant: Unique and sequential invoice numbers
  • PDF-Export
  • Privacy by design: All information published will be made private by default and stays confidential as no data is being shared with third-parties
  • Dashboard widget
  • Multilingual: You can help translate the plugin into your language


  • There are no third-party dependencies required. If you use the latest WordPress version with a block based WordPress theme you are good to go.


PRO Add-on

Please consider purchasing the premium add-on with the following features:

  • Contact Management
  • Address book block
  • Enhanced invoices: Contact selector, Status selector, QR code generator for customized payment codes
  • Enhanced quotes: Contact selector, Status selector
  • Enhanced accounting: Autofilter, Autosync invoices
  • Share Invoices and Quotes via a password protected link
  • Create invoices from WooCommerce orders
  • Address book
  • Upcoming birthdays
  • Admin columns
  • Stats and charts
  • WordPress Export Personal Data tool
  • Compatible with Polylang


  • Custom Post types
  • Global settings via Customizer
  • Dashboard widget
  • Editing an Invoice (Backend, TwentyTwenty theme)
  • Invoice (Frontend, TwentyTwenty theme)
  • Editing an Accounting table (Backend, TwentyTwenty theme)
  • Accounting table (Frontend, TwentyTwenty theme)


This plugin provides 10 blocks.

  • Billy
  • Billy
  • Billy
  • Billy
  • Billy
  • Billy
  • Billy
  • Billy
  • Billy
  • Billy


  1. Upload the Plugin to the /wp-content/plugins/ directory.
  2. Activate it through the ‘Plugins’ menu in WordPress.
  3. (Optional) Activate the PRO add-on.
  4. Open the Customizer: Appearance > Customize > Billy [PRO]
  5. Add global data like your name, an address, currency, tax rates, etc.
  6. If you need to start with a specific invoice number you can modify the invoice number value.
  7. Go back to the Dashboard and customize the global Billy Header by adding your logo.
  8. Congrats. You can create your first invoice or quote now.


Where can I find the developer documentation?

Are there any recommended third-party plugins?

Where can I get help?

The billing templates don’t look good in my theme

  • Please note that we can’t support you in getting individual themes customized. But if your theme supports the Block editor everything should work out of the box. Minor CSS changes may be required.
  • The plugin has been tested with the latest default WordPress themes and with some other major themes.

How can I style the billing templates?

  • This plugin uses core Gutenberg block styles – so your theme needs to support Gutenberg blocks.
  • All Billy templates are inheriting the styles of your theme. If required you can edit the style.css file of your theme or add custom CSS in the Customizer.

How do I create a PDF version of my invoices/quotes?

  • A PDF-Exporter is included.
  • If you need an exact copy of the screen version you can try the Print to PDF feature built into your operating system.

Why do I see a 404 error page when trying to open an invoice/quote?

  • Billing information is sensitive data! Due to privacy reasons these posts cannot be made public which means that only authorized users have access. You need to be logged in to see private posts.
  • If you would like to share a post with others you need to use the Share Link option in the PRO add-on.

I need more features!


There are no reviews for this plugin.

Contributors & Developers

“Billy” is open source software. The following people have contributed to this plugin.


“Billy” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Billy” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Tested in PHP 7.4 and updated composer.json to prevent a fatal error (Using PHP 8.0+ is still advised!)


  • Bugfix: React warning “Uncaught ReferenceError: editEntityRecord is not defined” in invoice meta
  • Upgrade third-party dependencies


  • Bugfix: React warnings “Cannot update a component while rendering a different component”
  • Deactivate mPDF simpleTables to allow full CSS support for tables (e.g. via manipulating Billy_PDF_Export::$pdfstyles)
  • PDF output: Less opinionated table styles
  • Minor updates in style-editor.css to format Block-Editor specific elements only


  • Refactoring and Code quality
  • Styling updates
  • Bugfix: Retrieve reusable Header block in current locale (Polylang, WPML)
  • New Sidebar panel with settings overview
  • Upgrade third-party dependencies
  • Compatibility with WordPress 6.2


  • Minor style update in style-editor.css
  • Code quality
  • Documentation


  • Add an optional “subject” line in Custom Post type templates
  • CSS updates (Frontend and generated PDF)
  • Upgrade third-party dependencies


  • Improve table markup by replacing labels with and removing classNames
  • CSS updates (Frontend and generated PDF)
  • Minor bugfixes
  • Backwards compatibility


  • Code modernization: Replace Header CPT with a reusable block ensuring backwards compatibility
  • Cleanup
  • Minor style updates and UI improvements
  • Upgrade third-party dependencies
  • Compatibility with WordPress 6.1


  • Code modernization and Cleanup
  • Upgrade third-party dependencies


  • Removed iframe PDF viewer: Use WP native wp-block-file__embed instead
  • Add PDF preview before post content
  • Don’t make pre-header sticky
  • Invoices: Check if required meta data is missing (e.g. after an import) and provide a (hidden) tool to regenerate the meta data on all posts based on the current invoice number
  • Upgrade third-party dependencies


  • Numeric invoice numbers
  • Autoincrement invoice number function has been rewritten using get_previous_post()
  • Upgrade third-party dependencies


  • Enqueue frontend assets only when necessary
  • Upgrade third-party dependencies


  • Coding Standards
  • Compatibility with WordPress 5.8: Fix PHP notice in ‘block_categories’
  • Upgrade third-party dependencies


  • Compatibility with WordPress 5.7
  • Upgrade third-party dependencies


  • Refactoring
  • Minor style updates to improve PDF output
  • Removed PDF.js: Use browser internal PDF viewer via iframe instead
  • Upgrade third-party dependencies


  • Refactored Meta
  • Replaced two wrong Gettext domains


  • Code quality
  • Fixed misaligned label in Editor


  • PDF footer: Use the date on which the post was published instead of the current date


  • Allow more formatting options in descriptions: Replace RichText components with InnerBlocks components.
  • Style improvements to the PDF output
  • Tables: Vertical alignment “top”
  • Upgrade third-party dependencies


  • Minor compatibility update for WordPress 5.5+


  • Compatibility with WordPress 5.5


  • Minor updates: styles


  • Prevent TypeError in main.js


  • Embedded PDF files (PDF.js)
  • Make PDF Export class variables public so they can be modified by third parties
  • Minor style updates to the default PDF output


  • Dynamically set the PDF filename
  • Minor style updates to the PDF output


  • Internationalization
  • Readme updates


  • Minor update to the table row frontend view


  • Initial Release
  • Created a GitHub repository with all development sources