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 process 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 process 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 Process for Managing Payment Instruments
Creating or updating SEPA mandate payment instruments requires a process that calls the appropriate Apex class provided by JustOn. When the defined criteria are met, the process 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 process sets the active payment instrument in the Account field
Current SEPA Mandate.
The source object for the process 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 process 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 process setup and the objects to involve will vary.
In Setup, open Process Builder.
In Salesforce Lightning, navigate to Process Automation > Process Builder.
In Salesforce Classic, navigate to Create > Workflow & Approvals > Process Builder.
- Specify a (descriptive) process name.
- Set the process to start when
A record changes.
Configure the process as required.
Step Option Description Add Object Object The original object whose modifications are to create or deactivate a payment instrument, usually
Start the process The type of record change that triggers the process, must be
when a record is created or edited
Add Criteria Criteria for Executing Actions The type of criteria, determines whether to check for specific field values or to evaluate records using a formula Set Conditions | Build Formula The use case-specific criteria, either the filter conditions for evaluating field values or the formula Add Action Action Type The type of action to be executed, must be
Apex Class The Apex class to be executed, must be
Manage Payment Instrument records for SEPA
Set Apex Variables Invocable variables for the Apex class
Account Idspecifies the reference to the ID field of the relevant account
Bank Account Ownerspecifies the reference to the
ON_BankAccountOwnerfield of the account
IBANoptionally specifies the reference to the
ON_BankAccountfield of the account, used to pass a new IBAN value
For help about creating processes, see Lightning Process Builder 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 process when the value is modified, specify:
|The process starts when||A record changes|
|Start the process||when a record is created or edited|
|Criteria for Executing Actions||Conditions are met|
|Apex Class||Manage Payment Instrument records for SEPA|
|Set Apex Variables||
This triggers JustOn to execute the process 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.