← Billing Automation ← Invoice Management

Installments represent staged payment plans in sale models where the money due is payable in a series of individual payments.

JustOn implements installment support using either the custom setting Installment or, for greater variability, a custom JSON configuration.

Enabling Installments
Using Installments

Understanding Payment Plans and Installments

Sellers may want to support sale models where buyers commit to multiple split payments over a period of time instead of one single payment. These models are known as installment sale or hire purchase. Seller and buyer agree on a staged payment plan that defines the number of individual installment payments, the intervals between them, and the individual payment amounts.

Installment sales can allow businesses to defer the recognition of revenue for tax purposes.

Installments Support in JustOn

To support staged payment plans for invoices, JustOn allows for setting up installments, which represent models for intended payment plans.

JustOn enables installments using either the custom setting Installment or, for greater variability, a custom JSON configuration (see Installments Usage). Either way, you basically configure the number of installments as well as their interval, and optionally specific amounts or rates (see Installment Information).

Installments Concepts

Installments split an open invoice amount into smaller parts and spread the payments due over a larger period.

Applying staged payment plan with installments

Once applied, installments impact the creation of SEPA Direct Debit orders and dunning reminders. In both cases, JustOn takes the relevant amount due only:

  • If at the time of exporting SEPA Direct Debit orders only one installment of a payment plan is due, only this part will be subject to a corresponding bank transfer order.
  • If, for example, at the time of a dunning run only the second and third installments of a payment plan are overdue, only this portion will be subject to the produced reminder.
Operation example

This example illustrates this behavior:

There is an invoice of 100,00 with four equally distributed monthly installments of 25,00, like

Title Date Amount
Installment 1 2020-12-05 25,00
Installment 2 2021-01-05 25,00
Installment 3 2021-02-05 25,00
Installment 4 2021-03-05 25,00

Now think of the following sequence of events:

1) You have JustOn create SEPA direct debit orders on December, 1st. Consequently, it will produce an order of 25,00, due on 2020-12-05. Assume the payment succeeds, so the remaining open invoice amount will be 75,00, with the next payment of another 25,00, due on 2021-01-05 – according to the payment plan.

2) You have JustOn create SEPA direct debit orders on January, 1st, which produces a direct debit order of 25,00, due on 2021-01-05. Now this payment fails. It becomes overdue in accordance with your dunning configuration, like after 14 days.

3) You have JustOn create SEPA direct debit orders on February, 1st, which again produces a direct debit order of 25,00, due on 2021-02-05. Assume this payment also fails, becoming overdue after another 14 days.

4) You execute a dunning run on February, 20th. The two overdue installment payments of 25,00 each will be subject to the dunning – producing a total dunning amount of 50,00.

The remaining installment payment of 25,00 will not immediately become due with the dunning. It will be subject to the next payment cycle when creating SEPA direct debit orders on March, 1st.

Installments Usage

JustOn supports several use cases that rely on installments:

Fixed payment plans
You can calculate the payment plan based on a configurable number of installment payments and a configurable interval. Optionally, you can set fixed amounts or rates, otherwise JustOn distributes the amount equally to the installments. Once defined and set, this invariable model is applied to all accordingly produced invoices.
Service period-based payment plans

You may need to create installments that correspond to the service periods of invoice line items. So instead of configuring a model to be applied, you directly relate the payment plan to the service period months (or quarters). The resulting installment amounts for each invoice line item are evenly distributed across their respective service period fractions spanned by its total service period (as defined by the Invoice Line Item fields Service Period Start and Service Period End).

This provides for easily modeling recurring billing with "permanent" invoices.

For both fixed and service period-based payment plans, you can use the custom setting Installment.

Variable payment plans

You may have to cover individually negotiated conditions, like, for example, account-specific initial amounts. In this case, you also define a calculation model to be applied but allow for variable data (as individually retrieved from specific fields) as the input.

To support such scenarios, you apply custom installments using a JSON configuration.


The support for variable installment configurations is available as of JustOn 2.68.1.

The support for service period-based installments is available as of JustOn 2.70.

If this feature is enabled, you can configure an installment for a subscription. When executing an invoice run, JustOn consequently produces an invoice with the payment plan (installments) set up.

Depending on your business requirements, you can also make the installment settings available for use with accounts or objects based on which you create invoices using the generic invoice run. When defining an installment on the account or the accordingly configured source object, JustOn copies it to the invoice when creating an invoice for this account or from this object.

In addition, you can apply installments manually to draft or open invoices. This allows, for example, to help customers who have failed to pay an invoice: You retroactively provide a payment plan for an invoice that has already produced a dunning reminder. Remember that installments are not allowed for canceled invoices.


Staged payment plans (installments) do not imply revenue deferral by default. If not specifically set otherwise, JustOn consequently applies the Default revenue recognition rule when generating bookkeeping data for invoices with installments.

You can, however, combine the Permanent Month and Permanent Quarter revenue recognition rules with service period-based installments (Service Month or Service Quarter, respectively) to model "permanent" invoices. This will involve deferred revenue if a period spans multiple months.

Installment Dates

Installments use the Payment Due Date of the invoice as the base for the payment plan. If not configured otherwise (using Date Reference, see Installment Information), the Payment Due Date of the invoice will be the date of the first installment payment. With each subsequent installment payment, JustOn adjusts the Next Payment Due Date of the invoice.

When exporting SEPA-compliant bank transfer orders, the Next Payment Due Date of the invoice is relevant: It must be in the past or within the next 14 days from today. For invoices whose Next Payment Due Date is in the past, JustOn corrects the SEPA order payment date to TODAY + 2.

Installments and Received Payments

Installments keep track of received payments. The behavior differs depending on whether your JustOn Billing & Invoice Management instance integrates with JustOn Cash Management or not.

When using JustOn Billing & Invoice Management without the JustOn Cash Management integration, the received payment amount is determined from all balances that affect the open payment amount, as produced in the course of payment registrations, settlements, partial credits, write-offs, etc. – like, for example, Payment, Clearing, Write-Off, Refund or Chargeback.

Balances of the types Chargeback Fee, Dunning Fee and Dunning Income are ignored.

When assigning a relevant payment balance to an invoice, JustOn Billing & Invoice Management saves the resulting amount to the Received Payment Amount field. Be aware of the following behavior:

  • If the value of Received Payment Amount is equal to the installment's Amount, then JustOn Billing & Invoice Management sets the Payment Status field to Paid.
  • If Received Payment Amount is larger than the installment amount, JustOn Billing & Invoice Management distributes the amount over the subsequent installments, sorted by date.
  • If Received Payment Amount is smaller than the installment amount, the Open Payment Amount field will show the remaining amount to be paid. The Payment Status field is set Open in this case.

Generally, installments ignore overpayments and do not track the overpaid amount.

The payment functionality shipped with JustOn Cash Management is centered around entries. Integrating JustOn Billing & Invoice Management with JustOn Cash Management means that there will be a dedicated entry for every installment (see Integration Concepts).

Now, the received payment amount of the installment is determined from the related entries. On settlement – that is, when a payment is registered for an entry and the Assigned Amount is set –, the integration makes that the Received Payment Amount of the related installment is adjusted accordingly. Where applicable, the Payment Status field is set to Paid.

If there are no related entries for installments – for example, because they were created before integrating with JustOn Cash Management –, installment updates are still subject to the balance-based payment tracking.

Manual Installment Application

When users manually create or modify installments on invoices, JustOn Billing & Invoice Management calls the batch chain ChangeInstallmentsChain. Depending on whether JustOn Billing & Invoice Management integrates with JustOn Cash Management or not, its execution scope differs:

When using JustOn Billing & Invoice Management with JustOn Cash Management integration, changing installments involves multiple steps:

  • Cancels the related entry records applying the cancellation reason Changed Installment Plan.

    Any defined credit balance strategy for the business entity will be ignored in this case.

  • Deletes existing and creates new installment records (ONB2__Payment__c records of the type Installment)

  • Creates new entry records for the new installments
  • Settles the new entry records using the payments that were used to settle the canceled entry records
  • Updates the payment page links for the new installments and the InvoiceEmailQueueChain
Example: Modifying installments with existing payments in JustOn Cash Management

Assume there is an invoice with a grand total of 1200 and 4 installments. After collecting two payments of 300 each, there are the following records:

Installment Amount Entry Payment Entry Item Assigned Amount Payment Balance
I1 300 E1 P1 P1, E1 -300 -300
I2 300 E2 P2 P2, E2 -300 -300
I3 E3
I4 E4

Changing the payment plan to 6 installments will result in:

Installment Amount Entry Payment Entry Item Assigned Amount Payment Balance
I5 200 E5 P1 P1, E5 -200 -200
I6 200 E6 P1 P1, E6 -100 -100
P2 P2, E6 -100 -100
I7 200 E7 P2 P2, E7 -200 -200
I8 E8
I9 E9
I10 E10

When using JustOn Billing & Invoice Management without the JustOn Cash Management integration, only one step is executed: the software checks for an existing installment configuration, and, consequently, deletes any existing and creates new installment records (ONB2__Payment__c records of the type Installment).