Enabling SEPA Mandate Payment Instruments
JustOn makes use of Payment Instrument records to hold the SEPA Direct Debit Mandate information for accounts. This is useful, in particular, with large customers who successively use multiple SEPA mandates, and allows for managing the SEPA mandate information.
If there is an active payment instrument set for an account (in the field
Current SEPA Mandate), JustOn uses the customer's SEPA-relevant data from the payment instrument when exporting SEPA orders – irrespective of whether SEPA Direct Debit or SEPA Credit from invoices, or SEPA Credit from balances. In this case, any SEPA-specific data on the account or the invoice will be ignored.
Managing SEPA mandate information using a payment instrument
The SEPA export involves the following payment instrument fields:
Direct Debit Mandate Granted and
Direct Debit Mandate Reference.
If there is no active payment instrument, the SEPA-relevant information is taken from the invoice or, when exporting SEPA orders from balances, from the account.
You can create and update account-specific payment instruments based on the SEPA-related information available on the account (or, if set up accordingly, on another custom object) using a dedicated process. Once created, the payment instruments are accessible via the corresponding related list on the account detail page.
Enabling SEPA Direct Debit Mandates as payment instruments involves
- Configuring SEPA mandate reference counter
- Creating a flow for managing SEPA payment instruments
- Optionally, using placeholders on invoice PDF generation
Configuring SEPA Mandate Reference Counter
JustOn requires the specific invoice counter MandateReferencePaymentInstrument to act as the SEPA mandate reference counter. Once set up, the SEPA mandate reference for the payment instrument is set automatically by the flow on creation or update.
In Setup, open Custom Settings.
In Salesforce Lightning, navigate to Custom Code > Custom Settings.
In Salesforce Classic, navigate to Develop > Custom Settings.
Click Manage in the row of Counters.
- Click New.
Specify the details as necessary.
Template: Specify the pattern as necessary.
The resulting mandate string can contain up to 35 characters. The allowed characters include the alphanumeric characters
a-z A-Z 0-9, the punctuation and symbol characters
+?/-:().,'and the space character.
Note that there is no support for custom placeholders with SEPA mandate reference counters.
Creating Flow for Managing Payment Instruments
Creating or updating SEPA mandate payment instruments requires a flow that calls the appropriate Apex class provided by JustOn. When the defined criteria are met, the flow can, generally
- Create a new Payment Instrument record with the
Direct Debit Mandate Granted,
Direct Debit Mandate Referenceand
Masked PANfields populated, which will be used on SEPA XML export,
- Deactivate an existing payment instrument and create a new one if a new IBAN value is available,
- Deactivate all payment instruments if the IBAN value is empty.
If applicable, the flow sets the active payment instrument in the Account field
Current SEPA Mandate.
The source object for the flow depends on the object to be monitored for changes to the SEPA-related information – usually Account or, if set up accordingly, on another custom object. Generally, the input data include (and must therefore be available on the source object):
|Bank Account Owner|
|Bank Account||Providing an IBAN either creates a new or updates an existing payment instrument for an account.
Executing the flow with an empty IBAN value deactivates existing payment instruments.
|Bank Code||With an IBAN as bank account number, the bank code (BIC) is not required.|
|Direct Debit Mandate Granted||Can specify a specific date, falls back to
Depending on your use cases, the flow setup and the objects to involve will vary.
- In Setup, navigate to Process Automation > Flows.
- Click New Flow.
Record-Triggered Flowand click Create.
Configure the Start element.
Option Description Object The object whose record modifications are to create or deactivate a payment instrument, usually
Trigger The type of record change that triggers the flow, must be
A record is created or updated
Conditions The use case-specific trigger conditions, one or more filter criteria for evaluating certain field values or a formula for evaluating records Optimize for
Actions and Related Records
Click and add the following Action element.
Option Description Action The Apex class to call, must be
Manage Payment Instrument records for SEPA
Input Values Invocable variables for the Apex class
Account Id: specifies the reference to the ID field of the relevant account
Bank Account Owner: specifies the reference to the
ON_BankAccountOwnerfield of the account
IBAN: specifies the reference to the
ON_BankAccountfield of the account, used to pass a new IBAN value
BIC: optionally specifies the reference to the
ON_BankCodefield of the account
Mandate Date: optionally specifies a specific date
Specify a label and an API name as required.
Specify a label and an API name as required.
When the defined conditions are met, JustOn triggers the flow. It deactivates the existing payment instrument and creates a new one with the new IBAN.
For help about creating flows, see Flows in the Salesforce Help.
Example use case: IBAN of an account is modified
The IBAN of an account is kept in
BankAccount__c. To trigger the flow when the value is modified, specify:
|Input Values||Account Id:
Bank Account Owner:
This triggers JustOn to execute the flow when the
ON_BankAccount__c field of an account modified: It deactivates the existing payment instrument and creates a new one with the new IBAN.
Using Payment Instrument Placeholders
When using direct debits, an invoice PDF must usually show the relevant SEPA mandate information. To this end, JustOn provides a set of custom placeholders for payment instruments that can be used for the invoice PDF generation.
If enabled and set, the active payment instrument is kept in the field
Current SEPA Mandate on the account. For the placeholder support, JustOn sets the active payment instrument also in the invoice field
Last Payment Instrument on invoice creation and finalization if the current payment method is
Direct Debit or
Bank Transfer. If the conditions are not met or if the current SEPA mandate is not active, the
Last Payment Instrument field is cleared.
A successful SEPA Direct Debit export also updates the invoice field
Last Payment Instrument. But at this stage, any new data have no further influence on the invoice PDF.
The following payment instrument-related placeholders are available by default:
||The type of the payment, for example,
||The name of the card holder or bank account owner.|
||The masked account number (like credit card, IBAN) as provided by the payment provider.|
||The International Bank Account Number.|
||The Bank Identifier Code.|
||The date on which the direct debit mandate has been granted.|
||The unique mandate reference assigned by the creditor.|
||The date until which the payment instrument is valid and can be captured.|
||The name of the bank (only useful for the type
||The payment provider that handles this payment instrument.|
You can also define your own custom placeholders with
PaymentInstrument set as
Source. For details, see Defining Custom Placeholder.