Setting up electronic invoicing for an entity
Everything about electronic invoicing hangs off one configuration record per entity. This article walks through creating it, the four things an upgrade will not do for you, and how to prove the whole thing works before real invoices depend on it.
Access you'll need. The Accounting Admin v2 permission set, plus the standard Salesforce Customize Application permission for the layout and field-security steps in section 3. If you cannot see the tab, you are missing the permission set — see Permission Set Assignment.
Before you start
Three things must be true, and it is much quicker to check them now than to debug them later.
| Prerequisite | Why | How to check |
|---|---|---|
| The entity exists and is configured | Setup is per entity — one record for each legal company that files. | Open the Entities tab. See Creating an Entity. |
| An extension for your country is installed | Every authority files differently. The core app supplies the framework and audit trail; the connection to a specific authority comes from an extension package installed alongside it. | Ask whoever performed your implementation. Without it, documents can be prepared but not transmitted. |
| Customers carry valid tax identifiers | The most common rejection by a wide margin is a customer tax identifier the authority cannot match to its own register. | Spot-check the tax identifier on the customer accounts you invoice most. |
1. Create the E-Invoice Setup record
- Go to App Launcher → REDA Financials → E-Invoice Setup and click New.
- Entity — choose the legal company this configuration applies to. One record per entity; do not try to cover several with one.
- Country Code — the country whose rules apply, as its standard two-letter code.
- Environment — Sandbox while you are testing, Production only when you are ready to file for real. Getting this wrong is the difference between a rehearsal and a filing.
- Document Types — which documents are in scope. Select Sales Invoice. A document type you do not select is simply never filed. The list offers other document types too, but whether any of them applies to you depends entirely on the country connection you have installed — ask whoever installed it before selecting one, rather than assuming it is handled.
- Auto Submit On Post — see the next section before deciding.
- Active — leave this unticked until the rest of the setup below is finished. Nothing files while it is off, which is exactly what you want mid-configuration.
- Save.
2. Automatic or manual filing?
Auto Submit On Post decides what happens the moment an invoice is posted. Both settings are legitimate; they suit different businesses.
| Ticked — automatic | Unticked — manual | |
|---|---|---|
| On posting | The invoice is released for filing straight away. | A Trail is created and waits at Draft until someone releases it. |
| Suits | High volume, routine invoicing, confident data quality. | Low volume, high value, or a review step before anything reaches the authority. |
| Watch out for | A data error is filed before anyone notices; correcting it means a credit memo. | Nothing files if no one remembers to release it. Someone must own the queue. |
If you are unsure, start manual. Move to automatic once you have seen a few weeks of clean acceptances.
3. Make the new fields visible — the step that gets missed
| Object | Field | Users should have | Put it in |
|---|---|---|---|
| Sales Invoice | E-Invoice Status | Read only — the system sets it | An E-Invoicing section |
| Sales Invoice | E-Invoice UUID | Read only — the authority issues it | An E-Invoicing section |
| Sales Invoice | Skip E-Invoicing | Editable, for those who may exclude an invoice | An E-Invoicing section |
| E-Invoice Trail | Provider Document ID | Read only | Trail Details |
- Place them on your layouts. Setup → Object Manager → Sales Invoice → Page Layouts → open each layout your users actually use → drag the three fields into an E-Invoicing section (create the section if there is none) → Save. Repeat for every layout and record type in use — a field placed on one layout is invisible on the others. Then do the same on E-Invoice Trail for Provider Document ID.
- Grant field-level security if you do not use REDA's permission sets. Setup → Object Manager → the object → Fields & Relationships → the field → Set Field-Level Security → tick Visible for your own profiles or permission sets. Keep Read-Only ticked for everything except Skip E-Invoicing.
- Grant object and tab access to E-Invoice Setup and E-Invoice Trail for your own permission sets, so the right people can open them.
- Add Skip E-Invoicing to the Interface field set. Setup → Object Manager → Sales Invoice → Field Sets → Interface → drag Skip E-Invoicing into the selected box → Save. The invoice form is a custom screen, so the page layout displays this field but cannot capture it. Without this step the checkbox is visible and unusable.
- Add the Send / Resend action to the E-Invoice Trail layout. Setup → Object Manager → E-Invoice Trail → Page Layouts → open the layout → Mobile & Lightning Actions → drag Send / Resend into the action bar → Save. The action ships with the package, but an upgrade does not add it to a layout your org already has. Without it nobody can file a held Trail or retry a failed one.
4. Schedule the status poll
Tax authorities answer on their own schedule, so a scheduled job collects their verdicts. It is required: a scheduled job cannot be shipped inside an installed package, so every org creates its own. Skip it and your invoices file correctly and then never move off Submitted.
Open App Launcher → REDA Financials Admin → Financial Admin Console → Operations, expand the E-Invoice Status Poll card and click Start. Full detail — including what each count on the card means — is in the E-Invoice Status Poll runbook.
5. Prove it works, then go live
- Tick Active on the E-Invoice Setup record, with Environment still set to Sandbox.
- Post one ordinary test invoice for a customer whose tax identifier you trust.
- Open the E-Invoice Trails tab. A Trail should exist for that invoice within moments of posting.
- Use Run Now on the Operations card rather than waiting for the next cycle.
- Confirm the Trail reaches Accepted and that the invoice now shows an E-Invoice UUID. That is the whole chain proven end to end.
- Deliberately post an invoice for a customer with a wrong tax identifier and confirm it comes back Rejected with a readable reason. Knowing what a failure looks like before it happens for real is worth the ten minutes.
- Only then change Environment to Production.
Troubleshooting
| Symptom | Likely cause | What to do |
|---|---|---|
| No Trail appears when an invoice is posted | No active setup covers that entity or that document type, or the invoice is marked Skip E-Invoicing. | Check Active is ticked, that the invoice's entity matches the Setup, and that its document type is in Document Types. |
| Users cannot see the new fields | Layout or field-level security — usually both, and usually because the org uses its own permission sets. | Work through section 3, then re-test as an ordinary user rather than as an administrator. |
| Skip E-Invoicing is visible but cannot be ticked | It is on the layout but not in the Interface field set. | Section 3, step 4. |
| Trails reach Submitted and stop | The status poll is not scheduled. | Section 4. This is the single most common go-live omission. |
| Everything is Rejected for the same reason | A systematic data problem — most often customer tax identifiers. | Read the reason on one Trail, fix the underlying customer data, then reissue. |
| Trails end in Error rather than a verdict | The document never reached the authority — connection, credentials or environment. | Confirm Environment matches the credentials in use, then check with whoever installed the country extension. |
Where to go next
- Electronic invoicing: how it works — the concepts behind this configuration.
- The E-Invoice Status Poll — the required scheduled job.
- Reading an E-Invoice Trail — resolving rejections and errors.
- Electronic invoicing on the Sales Invoice — what your AR team will see.
Frequently asked questions
No — one record per entity. Each entity is a separate legal filer with its own registration, so they are configured and, if needed, switched off independently.
New invoices stop producing Trails immediately. Existing Trails are untouched and keep their history. It is a safe way to pause filing.
Only if the country connection you have installed handles them — selecting a document type does not by itself make it filable. Confirm with whoever installed your connection which document types it covers, and add only those to Document Types. Anything you leave out is never transmitted.
They were removed from that layout, not from the app. Re-add them in Object Manager — and remember that a future upgrade will not put them back on a customised layout either.
Your Setup records come across, but scheduled jobs do not — they are org data. After every refresh, start the status poll again and confirm Environment is still Sandbox so test invoices are not filed for real.