Skip to content
All articles
July 11, 2026·4 min read

Adding CNP/CUI Fields and Company Invoicing at WooCommerce Checkout (Individual vs Business)

How to add proper company fields (tax ID, trade register, registered address) at checkout so you can issue valid B2B invoices and e-invoices.

You run a WooCommerce store and more and more customers are asking for a company invoice. The problem: by default, WooCommerce checkout has nowhere to put the company tax ID (CUI/VAT), the trade register number, or a personal ID for individuals. The result is good orders but incomplete invoices that your accountant rejects.

The good news is you don't need a brand-new store to fix this. You need a few extra fields, shown correctly (some only when the buyer is a business), plus a clean connection to your invoicing and, in Romania, to the e-invoicing system. Below I'll show exactly which fields are required for a valid invoice, how to add them, and the mistakes that leave you with unusable billing data.

What fields you actually need: individual vs business

The first decision is to let the customer say whether they're buying as an individual or a company. Ideally a selector — „Buying as: individual / business” — that shows the right fields.

For a business, a valid invoice needs:

  • Company name (required)
  • Tax ID / VAT number (CUI/CIF, with the country prefix if VAT-registered)
  • Trade register number (e.g. J40/1234/2020 in Romania)
  • Registered office address

For an individual, you only need name, address and contact details. A personal ID number (CNP) is NOT required on a normal invoice, and since it's sensitive personal data, the healthiest approach is not to ask for it at all. If a special document truly requires it, make the field optional and explain why.

How to add the fields in WooCommerce

You have three routes, in the order I'd recommend:

  • A local invoicing plugin. The better invoicing connectors (Oblio, SmartBill, FGO and others in Romania) add the company fields to checkout themselves and push the data straight into the invoice. This is the cleanest option for most stores.
  • A custom checkout-fields plugin, if you want fine control over order and labels.
  • Custom code via WooCommerce hooks (`woocommerce_checkout_fields`), with logic that shows the company fields only when „business” is selected.

Whichever method you use, remember two things: the company fields must be saved on the order (not just displayed), and they must appear in the confirmation email and in the admin panel so your accountant can actually use them.

Validating the tax ID and linking to e-invoicing

Customer-typed data will have errors — stray spaces, missing letters, a misplaced country prefix. A little validation pays off:

  • Check the tax ID format and normalize the prefix.
  • Ideally, validate the ID against the tax authority (services exist that confirm VAT status and return the official name and address).

The important part in Romania: for B2B transactions, e-invoicing through the RO e-Factura system is mandatory. In practice the invoice must reach the tax portal in electronic format. So showing a tax-ID field isn't enough — it must flow all the way into the electronic invoice. The simplest path is an invoicing provider that sends to e-Factura automatically, so you don't key in each order by hand.

Common mistakes I see

  • The tax-ID field shown to everyone, including individuals — it confuses people and hurts conversion. Show it conditionally.
  • Asking for a personal ID with no reason. Under GDPR you don't collect what you don't need. Normal invoices don't require it.
  • Fields exist on checkout but aren't saved on the order and never reach the invoice — wasted effort.
  • No validation, so you end up with wrong tax IDs you fix by hand on every order.
  • Invoicing disconnected from e-invoicing: you generate PDFs but never send them to the portal, and you stay non-compliant on B2B.

Each of these seems small, but together they turn your monthly bookkeeping into a chore.

How we can help

At MPO Web Studio this is exactly the kind of work we do: a clean checkout, company fields shown conditionally, tax-ID validation and a connection to an invoicing provider that submits to RO e-Factura automatically. We work remotely across the country, with transparent pricing, and before you pay anything we can prepare a demo built on your specific case so you see exactly how it looks.

If you like, we'll start with a short audit of your current checkout and tell you honestly what a plugin can solve and what needs code. Message us on WhatsApp with a link to your store and we'll take it from there, no commitment.

Frequently asked questions

Is a personal ID number required on invoices for individuals?+

No. A normal invoice to an individual needs a name and address, not a personal ID number. Since it's sensitive personal data, the recommendation is not to ask for it; if a special case demands it, make the field optional and explain the purpose.

Which fields are strictly required for a company invoice?+

Company name, tax ID (CUI/CIF), trade register number (e.g. J40/1234/2020) and the registered office address. If the company is VAT-registered, the tax ID carries the country prefix.

Do I need a plugin, or can I do it with code?+

Both work. A local invoicing plugin is fastest and pushes data straight into the invoice and e-invoicing. Custom code gives fine control but needs maintenance. The choice depends on your B2B order volume and how much you want automated.

How do I link checkout to e-invoicing?+

You don't link the field directly to the tax portal. You pick an invoicing provider (Oblio, SmartBill, FGO, etc.) that receives the order data from WooCommerce and automatically submits the invoice to the RO e-Factura system. The checkout company fields simply feed that flow.

Can I show company fields only when the customer is a business?+

Yes, and that's the ideal setup. An individual/business selector hides the tax-ID and register fields for regular customers and shows them only to companies, keeping checkout simple and helping conversion.

Free guide

7 mistakes that drive clients away from your website

Leave your email and get the guide right here, instantly. No spam.

By submitting, you agree to the Privacy Policy.
MEchipa MPOWe reply personally

Want to see what your business's website could look like?

Message us on WhatsApp and we'll build you a free demo website with your business name on it. See it first, then decide — no strings attached.

Ask for a free demo websiteWe usually reply within a few minutes