Skip to main content

Data quality requirements

info

The “Data quality: description & validation” features are in pilot phase.

To collect payments, FinDock needs a specific set of data. This data may differ per payment method and per processor. To help you make sure the right data is in your org, either through a data migration or another method of data entry, FinDock provides a description of:

  • What data is required
  • Under what circumstances
  • In what format the data is expected

We call these requirements "rules" and a set of requirements for a given payment processor and method a "ruleset."

A description of rules is provided as a spreadsheet here. To get access during the pilot phase, please contact support@findock.com. This data can also be downloaded for analysis.

Key terms

TermDescription
MethodA payment method
ProcessA FinDock related process like collection of payments.
ProcessorA payment processor
RuleA rule against which a record is validated in context of a certain process
RulesetA set of rules against which a record is validated in context of a certain process

How to read a ruleset#

A payment processor ruleset consists of rules that are applicable for a payment method and are applied to a specific object.

The ruleset hierarchy is as follows:

Processor (PaymentHub-SEPA)
|_Process (Collection)
|_ Ruleset = Payment Method (Direct Debit) AND Object (cpm__Installment__c)
|_Rule 1
|_Rule 2
|_Rule 3
|_Rule x

Rule attributes#

AttributeDescriptionExample Rule Description
Field*What field on the object the rule applies to.cpm__Bank_Statement_Description__c
CodeA code that describes the rule that applies to the field.REQUIRED, MAXLENGTH
DescriptionA more user friendly description of the rule. Is it required? Is there a certain formatting the content needs to adhere to?Max. length 144 characters
ErrorWhat error message is shown when a record does not pass the rule.Bank Statement Description is too long
OnlyWhen**If the rule only applies when a certain condition is met, this field shows the condition.cpm__Payment_Profile__r > cpm__IBAN__c STARTS_WITH GB
Reason**If OnlyWhen is applied, a user friendly explanation of the condition.This field is required to collect from British bank accounts with SEPA Direct Debit since Brexit.
Formula**If the Field is a formula field - and thus cannot be edited directly - shows how the Field value is calculated so that you can correct the fields used in the formula.IF ( NOT ( ISBLANK ( cpm__Custom_Payment_Reference__c ) ) , cpm__Custom_Payment_Reference__c , IF ( NOT ( ISBLANK ( cpm__Recurring_Payment_Reference__c ) ) , cpm__Recurring_Payment_Reference__c , cpm__Generated_Payment_Reference__c ) )

*More than one rule can apply to a field.
**Only available when applicable.

Rule types#

CodeExample Rule DescriptionExample Rule Error
REQUIREDRequired fieldBank Statement Description is missing
MAXLENGTHMax. length 144 charactersBank Statement Description is too long
EQMust be equal to 2021-03-30Is not equal to 2021-03-30
GTMust be greater than 0Amount is not greater than 0
INMust have one of these values: {Pending, Pending recollection}Status must have one of these values: {Pending, Pending recollection}
BOOLMust be truecpm__Payment_Profile__c > Active is not true
MATCHESMust match the pattern: [A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}Value does not follow the required pattern.
TARGETType must be PaymentHub-SEPA and subtype SEPATarget must be PaymentHub-SEPA and subtype SEPA

Some very specific validation rules do not fit the above types, for these the code CUSTOM is used and a custom validation, description and error is added.

Validating data quality#

To make sure you do not run into errors when running a FinDock process like collection of payments through a payment schedule, FinDock can validate your current data according to the applicable ruleset. This can be done on an individual record like an installment, as well as on a process record like a payment schedule.

We validate data with the FinDock Data Quality component. If the current record is not a process, it is validated against all possible processes. For details on how to confiugre and use the component, please see Using data quality validation.