Pro Forma Invoices
Certain business use cases require merchants or suppliers to issue statements that specify the value of a sale transaction without being an actual payment request. To this end, JustOn allows for creating pro forma invoices.
Enabling Pro Forma Invoices
Managing Deposit or Pro Forma Invoices
Understanding Pro Forma Invoices
A pro forma invoice is a statement that specifies the value of a sale transaction. It is not an actual invoice, which states a payment request. Therefore, the pro forma invoice is exempt from any accounting or payment-related processing.
Pro forma invoices are commonly used for information purposes:
- as preliminary invoices with a quotation, giving a commitment from the supplier to sell goods at specified prices and terms
- to give an example of the charged prices, for example, to obtain the buyer's final approval for a purchase
- for customs purposes, since customs authorities may require trade values for an export declaration
Pro Forma Invoices in JustOn
JustOn Billing & Invoice Management supports pro forma invoices when billing arbitrary objects.
Basically, the creation of a pro forma invoice is controlled using the ON field ON_Type
on the source object. If this field is set to Proforma
, JustOn generates a pro forma invoice.
As pro forma invoices do usually not constitute a legally binding payment request, they are, by default, exempt from dunnings. If your business, however, requires issuing reminders for pro forma invoices, you can still enable this feature.
Note
When you use pro forma invoicing, be aware that JustOn does not consider order discounts with the pro forma invoices, but only when generating the final invoices.
The following sections describe how to work with pro forma invoices, outlining their life cycle.
Pro Forma Invoice Creation
JustOn generates a pro forma invoice if the field ON_Type
on the source object is set to Proforma
.
Note
Once you have set the field ON_Type
on the source object to Proforma
to trigger the pro forma invoice creation, do not modify this field subsequently to make sure that the pro forma invoicing features operate correctly.
Using a template detail named Proforma
, you can provide appropriate texts for the invoice PDF, like the display type or description (see PDF Contents).
After creating the pro forma invoices, JustOn sets the custom field ON_ProformaInvoice
on the source objects to the pro forma invoices.
Creating a pro forma invoice
Pro Forma Invoice Finalization
When finalizing the pro forma invoice, JustOn creates a balance of the type Proforma
(usually Invoice
). This balance type is excluded from the account balance (rollup summary) and the account statement creation.
Pro Forma Invoice Closure
Before you create the final invoice, you must close the pro forma invoice. There are two ways to do so:
- Using the Close button on an individual invoice
- Using a custom flow to be triggered from a source record
Close button or custom process?
The procedure to close the invoices depends on your business use cases and the corresponding data structure in your org.
If you create invoices from a parent record in a parent-child relation, you most likely use a custom flow to be triggered from the relevant parent record. The process clears the custom fields ON_Invoice
, ON_Type
and ON_LastInvoiceRun
on the parent source record, which allows for creating the final invoice from the same record.
If your invoice run involves multiple source records (for example, using multiple filters or via single source object configurations), the Close button on an individual invoice is the more appropriate approach. It clears the custom fields ON_Invoice
, ON_Type
and ON_LastInvoiceRun
on all source records that are related to the current invoice to allow generating the final invoice. This saves the need for manually clearing these fields on the source records.
Using the Close button on an individual pro forma invoice
- sets the pro forma invoice to the status
Closed
- unregisters any assigned payment balances
- clears the custom fields
ON_Invoice
,ON_Type
andON_LastInvoiceRun
on all related source records to allow generating the final invoice
If appropriate, you can use a custom flow to be triggered from a source record. Applying the specific Apex class that JustOn provides for this purpose, your flow
- sets pro forma invoices to the status
Closed
- clears the custom fields
ON_Invoice
,ON_Type
andON_LastInvoiceRun
on the source record that triggers the process - unregisters any assigned payment balances and sets the balance field
RelatedInvoice
to the pro forma invoice
Closing the pro forma invoice via flow
Info
Be aware of the following specifics:
- Unregistering pro forma payment balances entails an invoice balance that does not equal zero, but the status
Closed
indicates that the paid pro forma invoice does not represent an open receivable. - Usually, JustOn assigns unregistered pro forma payment balances to the corresponding final invoices. Clearing the field
RelatedInvoice
of the unregistered pro forma payment balance will allow to assign the balance to any matching invoice.
Note
After integrating with JustOn Cash Management to manage payment processes, users must cancel the entry produced for the pro forma invoice to "release" any related payments. Using a payment assignment key makes sure that the involved payment will be associated with the entry produced for final invoice.
Final Invoice Creation
After you have closed the pro forma invoice, you create the final invoice the same way and based on the same source records as the pro forma invoice.
Doing so
- registers the balances (if any) that were unregistered from the pro forma invoice by the closing process to the final invoice
- sets the field
RelatedInvoice
on the final invoice to the corresponding pro forma invoice
Creating the final invoice, linked to the pro forma invoice