Posted in

How to Create an Invoice in Salesforce: Invoice Types, E-Invoicing, and Automation

How to Create an Invoice in Salesforce

An Order is ready in Salesforce, and it already contains the customer, products, quantities, and prices. That still does not make the invoice automatic. Before the document goes to the customer, the system needs to know which data belongs on the invoice, what type of invoice applies, whether the output should be a PDF or a structured e-invoice, and which steps can run automatically.

That is the practical challenge of invoicing in Salesforce. There are different ways to implement the process. Whichever approach you use, keep one more point in mind: creating the invoice record and generating the document the customer receives are two separate steps.

How to Create an Invoice in Salesforce: Separate the Invoice Record and Customer File

From a Salesforce perspective, invoice creation usually involves three related operations:

  • creating the Invoice record, 
  • populating its header and line data, and 
  • generating the file that the customer receives. 

Keeping these operations separate helps define what the system should store, validate, and automate.

Salesforce’s first-party billing option is Billing in Agentforce Revenue Management. It can generate invoices for individual Orders or from billing schedules through scheduled or on-demand invoice runs.

Agentforce Revenue Management overview

Companies can also use third-party Salesforce applications from AppExchange (now AgentExchange) to add invoicing capabilities to their existing Salesforce setup.

This can be a practical option when a company needs invoicing without implementing the broader revenue lifecycle capabilities of Agentforce Revenue Management. Packaged apps can provide predefined invoice objects, document-generation features, and workflows that admins configure around existing Salesforce data.

Salesforce invoice management and automation solutions on AppExchange

Finblick is one example. It uses the standard Salesforce Order as a source record, while the Invoice itself is a Finblick custom object. The customer-facing document is then generated from that Invoice. In this article, we will use Finblick as a practical example of how these invoicing decisions can be implemented in Salesforce.

Finblick – Salesforce Accounting, Quote and E-Invoice Management on AppExchange

Salesforce Invoice Generation: Validate the Data before Creation

Before creating an invoice, check that Salesforce contains the data the invoice process will need. The exact fields depend on the implementation, but the main groups are usually:

  • Seller data: the legal entity issuing the invoice, its company details, and the applicable numbering sequence.
  • Customer data: Account details, billing address, and any customer reference required on the document.
  • Transaction data: products or services, quantities, prices, discounts, and the Order lines being billed.
  • Tax and accounting data: the applicable tax treatment and any configured account assignments.
  • Dates and payment information: invoice date, service date or period, due date, and payment terms.

Where possible, these values should come from maintained Salesforce records instead of being entered again during document generation.

Insight: In EY Germany’s 2024 reader survey of about 220 employees in tax and finance departments, 95% rated data quality as important or very important for e-invoice implementation. 

Finblick uses Legal Entities, number sequences, and tax rules for this configuration. Each Legal Entity can have its own company information and numbering setup, while matching rules can select the appropriate tax treatment for invoice lines. Each required invoice value should therefore be mapped to the Salesforce record or configured rule that supplies it before invoice creation. 

Salesforce Invoicing and Accounting: Choose the Invoice Type

Once the source data is ready, the next question is how much of the transaction should be billed now. This depends on the billing situation, not on the document format.

The table below shows how the three invoice types differ:

Invoice Types and When to Use Them
Invoice typeWhen to use itWhat Salesforce needs to track
Final invoiceWhen the relevant goods or services are ready for final settlementThe remaining Order lines or amount that should be billed
Partial invoiceWhen only part of the Order or project should be billed nowWhich lines or amounts have been invoiced and what remains for later billing
Down-payment invoiceWhen the customer should pay part of the total before final settlementThe advance amount already billed so it can be accounted for in later partial or final invoices

Before creation, the system should know which Order lines or amounts are eligible and whether previous billing, including a down payment, changes the amount due.

Finblick provides a practical example of this model. It supports final, partial, and down-payment invoices within its Order-to-Invoice process. For partial billing, selected lines or amounts can be invoiced, while down payments can be offset against later partial or final invoices.

Issued-invoice corrections follow a separate process. For example, Finblick uses cancellation invoices and Credit Notes for those cases.

Create E-Invoices from Salesforce: Choose the Required Output Format

After deciding what to invoice, choose the format the customer or receiving system requires. 

  • A conventional PDF is designed mainly for human reading. 
  • A structured e-invoice contains machine-readable invoice data that accounting or procurement software can process automatically.

The required format depends on the transaction, customer, and applicable jurisdiction.

Finblick adds structured e-invoice generation to its invoice workflow and supports, for example, two formats used in Germany: ZUGFeRD and XRechnung. 

ZUGFeRD, which is technically identical to the French Factur-X format, combines a readable PDF with embedded XML. XRechnung is a German XML-based format without an additional PDF representation.

For Salesforce admins, choosing the output format also affects the data that must be available before generation. For example, Finblick’s ZUGFeRD process uses information such as the Account, invoice date, service period, due date, and language. Missing required data should therefore be identified before the document-generation step.

Insight: In a 2025 survey of 800 UK VAT-registered SMEs published by HMRC in 2026, 29% reported using e-invoicing. The research defined e-invoices as structured data for automatic electronic processing and excluded PDFs and emails. 

A Practical Finblick Invoice Workflow on the Order Record

A typical Finblick flow is Quote – Order – Invoice, although implementations can use other starting points. For the Order-based process used here, invoice creation starts from the standard Salesforce Order.

How to Create Invoice in Salesforce with Finblick’s Create Invoice Action

Open the Order that contains the transaction to be billed and check the customer, Legal Entity, Order lines, tax treatment, dates, and payment terms. Then use the Create Invoice quick action on the Order.

Finblick’s Create Invoice action on a Salesforce Order

Next, select the invoice type that matches the billing scenario:

  1. Final invoice to bill the relevant remaining Order lines.
  2. Partial invoice to bill selected lines or amounts.
  3. Down-payment invoice to request an advance payment.
Selecting the invoice type when creating an Invoice from an Order

Confirm the lines or amounts, then create the Finblick Invoice. Review the transferred line data and other invoice information before generating the customer document. Finblick also allows direct Invoice creation when the implementation requires a different starting point. 

Generate the Invoice Document and Preserve the Source Link

On the Invoice record, use Generate Invoice Document after the required data and output format have been selected. 

Generate Invoice Document action on the Finblick Invoice record

Finblick can generate a conventional invoice document or a supported structured e-invoice, and the generated output can be stored in Salesforce as a file and sent manually or through automation.

Previewing the invoice document before generation in Finblick

An accounting app Salesforce teams use for invoicing should preserve the source relationship so users can trace billed lines back to the transaction that supplied them. In Finblick’s Order-based process, the Invoice is created from the Order and its relevant lines, keeping that billing context within the financial-document workflow.

Salesforce Create Invoice Automation: Flow, Apex, and Batch Processing

Automate invoice creation only after the manual process has clear inputs and expected results. The trigger might be an Order reaching a specific status, completion of required billing data, or a scheduled job that processes eligible transactions.

Before automation runs, define the conditions that must be met: the correct Legal Entity, eligible Order lines or amounts, tax data, invoice type, required output-format fields, and approval status where approval is part of the process. For a Salesforce generate invoice process, the automation should stop when required data is missing.

Treat automation as three separate stages:

  1. creating the Invoice record;
  2. generating the customer document;
  3. sending the document.

Teams can automate each stage independently and leave other stages manual.

In Finblick, document generation can run manually or through Salesforce Flow, Apex triggers, or batch processing. Flow or Apex can also populate fields such as the email address, due date, service dates, and document text. Generated files can then be stored in Salesforce and sent manually or through automation.

Salesforce’s Agentforce Revenue Management provides another automation model: invoice schedulers and batch runs can generate invoices from eligible billing schedules either on a schedule or on demand.

Insight: Investment in finance automation does not mean that most processes are already automated. In McKinsey’s 2024 survey of 126 finance leaders, 98% said their finance functions had invested in digitization and automation, while the largest group reported that 25% or less of their processes were currently digitized or automated. 

Correct an Issued Invoice and Keep the Document History

Once an invoice has been issued, use a defined correction process that preserves the original billing history. The method depends on whether the entire invoice or only part of it is affected.

In Finblick, a complete cancellation can be handled with a cancellation invoice. For a partial correction, users can create a Credit Note for the affected invoice lines. For example, if five training places were invoiced but two attendees did not participate, the Credit Note can cover those two places only.

On the Finblick Invoice record, the Create Credit Note and Cancel Invoice actions provide access to these two correction paths.

Credit Note and invoice cancellation options in Finblick

Keep the Document History Traceable

Keep the correction document connected to the Invoice and the Invoice connected to the source Order. This gives users a traceable path from the original transaction to what was billed and, if necessary, what was later corrected. Automated processes should preserve the same relationships when they create or send invoice and correction documents.

Design Invoice Creation as a Controlled Salesforce Process

A reliable Salesforce invoice process starts with defined source data and clear rules for what should be billed, which document format should be generated, and when automation may proceed. Those controls should also remain visible in the record relationships, so users can trace an Invoice to its source transaction and any later correction.

Finblick shows one way to implement these controls around Salesforce Orders, Invoice records, and correction documents. The implementation can vary, but the design principle stays the same: validate the billing logic before creation and preserve the records that explain what was billed and later corrected. 

Leave a Reply

Your email address will not be published. Required fields are marked *

Discover more from Panther Schools

Subscribe now to keep reading and get access to the full archive.

Continue reading