NEWRATES_Product_Config

This page describes the properties from the Product Config table, their practical use and examples of their use.

Any property marked with an asterisk (*) is a mandatory property. The rest are optional.

Root

Property
Default Value
Description

ProductCode*

Ties the config table back to a specific product from Umbraco. This should be an exact match of the Umbraco property: Product Level Settings > Product > Product Code

Provider*

Passed through to all Premium and Fee Sections.

This will be written into:

  • “Provider” property against each Premium section

  • “FeeOwner” property against each Fee section

It is possible to specify different providers per section, in such instances, a “Provider” property should be populated within the relevant Premium or Fee Section. If such a property is provided and populated, it will take precedence over this one.

The Provider will usually contain the name of the insurer (Fees may have different owners so these are most likely to vary based on specific-section configuration).

PremiumOutputConfigObjecCustomScript

<BLANK>

Contains the name of a custom script which can be called to make any adjustments to the PremiumOutputConfigObject after it’s been created. See PremiumOutputConfigObjectCustom

TechnicalPremiumScript*

Contains the name of the script for generating Technical Premiums.

When considering the output of Technical Premiums we really mean the premium which matches the rater provided by the insurer, before any other adjustments. See Technical Premium Calculator Script

TechnicalPremiumCustomScript

<BLANK>

Contains the name of a custom script which can be called to make any adjustments to the TechnicalPremiums array; once all transactional data has been added.

Context: Once the TechnicalPremiums have been generated in full using the TechnicalPremiumScript property an additional process runs. At New Business and Renewal this process does very little. But for Cancellations and MTAs there are a series of checks carried out based on PrevRates:

  • Cancellation - The main TechnicalPremium array doesn’t run for Cancellations, instead the TechnicalPremiumTransaction function works out how much to refund to each premium section based on PrevRates. This information is then passed forward.

  • MTA - The main TechnicalPremium array runs for sections which are still included in the risk. After this, the TechnicalPremiumTransaction finds out which sections need to be passed into the array as they are being removed on this policy version (and as such, still need to be displayed on screen to allow for the necessary information to be prevented to the user and for overrides and such to be applied.

The idea behind this script is that any custom updates can be made following on from the generic process of TechnicalPremiumTransaction (which runs identically for all products in the rating rebuild).

See TechnicalPremiumsCustom

SummaryOutputCustomScript

<BLANK>

Contains the name of a custom script which can be called to make any adjustments to the PremiumSummary array (i.e. the rows of type “Summary” and “PremiumSummary”) and the PremiumArray (i.e. the rows of type “Premium” and “Fee”). See Building Products in Insureflow

InsuranceType

{}

PolicyDates*

REN*

PremiumSections (Array)*

FeeSections (Array)*

Inspector*

CardPayments

{}

Refunds*

PolicySignedLines

{}

Billing

{}

InsuranceType

This sets the default insurance type for the product, as well as giving the option to elect a question code with which the answer can be overridden by the user if necessary. This is later fed into the tax function to decide which taxes should be applied.

If no value is provided for InsuranceTypeQuestion then InsuranceType will be set as InsuranceTypeDefault with no opportunity for the user to override it.

Property
Default Value
Description
Notes

InsuranceTypeDefault

Direct

Default value for Insurance Type

The value from here is then passed forward to tax calculations (unless overridden by question code using the property below)

InsuranceTypeQuestion

<BLANK>

Question Code for a question to override the value of Insurance Type on a risk-version basis

If a question code has been provided here, the answer to that question (if it exists) will be passed forward to tax calculations

PolicyDates

Associates key date properties within the rating process to question codes within the journey. We follow standard naming conventions for these dates in new products, but we still set this at product-level in case of deviation from that process.

Like the Provider property, SectionPolicyDates can be specified against each PremiumSection and each FeeSection. If they are, then those properties will take precedent, otherwise the rates will fall back and refer back to this top-level instance. The reasoning behind this is to allow more flexibility for products where not all sections share the same question codes for this purpose.

Property
Description
Notes

EffectiveDate

Top-level question code for Effective Date

Top-level setting of Effective Date

ExpiryDate

Top-level question code for Expiry Date

Top-level setting of Expiry Date

InceptionDate

Top-level question code for Inception Date

Top-level setting of Inception Date

MTA (Mid-Term Adjustment)

MTA Root

Property
Default Value
Description
Notes

ClearPremiumProperties

{}

ClearFeeProperties

{}

RiskUpdates

{}

PropertiesCustomScript

<BLANK>

Custom script to make additional updates to premium/fee properties when creating the new transaction

This should be used to make any updates not covered within:

ClearPremiumProperties

ClearFeeProperties

The main updates are set via the:

NEWRATES_MTA_Create_ResetProperties function

QuestionsCustomScript

<BLANK>

This should be used to make any updates not covered within the main

ApplyPrevRunningRatingStrength

true

Determines whether to apply PrevRunningRatingStrength to Premium and Fee values on MTA

MTA ClearPremiumProperties

All properties are assumed to be false if they are not provided or set to anything other than true.

Actual updates occur in the function NEWRATES_MTA_Create_ResetProperties

Property
Default Value
Description

DiscountLoadingPremiumPercentage

False

Determine whether to clear DiscountLoadingPremiumPercentage property against each Premium row in rates

OverridePremium

False

Determine whether to clear OverridePremium property against each Premium row in rates

Adjustment

False

Determine whether to clear Adjustment property against each Premium row in rates

Billing

False

Determine whether to clear Billing property against each Premium row in rates. The Billing information held in Summary will also be cleared

Quoted

False

Determine whether to set the Quoted property to false against each Premium row in rates

Selected

False

Determine whether to set the Selected property to false against each Premium row in rates

Bound

False

Determine whether to set the Bound property to false against each Premium row in rates

MTA ClearFeeProperties

All properties are assumed to be false if they are not provided or set to anything other than true.

Actual updates occur in the function NEWRATES_MTA_Create_ResetProperties

Property
Default Value
Description

DiscountLoadingFeePercentage

False

Determine whether to clear DiscountLoadingPremiumPercentage property against each Fee row in rates

OverrideFeeValue

False

Determine whether to clear OverridePremium property against each Fee row in rates

Adjustment

False

Determine whether to clear Adjustment property against each Fee row in rates

Billing

False

Determine whether to clear Billing property against each Fee row in rates. The Billing information held in Summary will also be cleared

MTA RiskUpdates

Actual updates occur in the function NEWRATES_MTA_Create_ResetQuestions

Property
Default Value
Description

RefreshProduct

False

Determine whether to re-load Product-level information from Umbraco.

If this is set to true, then Risk.Flags.RefreshProduct is set to true.

This will cause the product information to be refreshed next time the user opens a flow.

ClearBinders

False

Determine whether to clear the binder information held against this risk.

If this is set to true, then Risk.Product.SelectedBinder is set to NULL

CANX (Cancellation)

Note: If Cool-off is available and the effective date of the cancellation is within the cool-off boundary, the cancellation will refund the entire risk premium (premium and fees).

CANX Root

Property
Default Value
Description
Notes

ClearPremiumProperties

{}

ClearFeeProperties

{}

RiskUpdates

{}

PropertiesCustomScript

<BLANK>

Custom script to make additional updates to premium/fee properties when creating the new transaction

This should be used to make any updates not covered within:

ClearPremiumProperties

ClearFeeProperties

The main updates are set via the:

NEWRATES_CANCEL_Create_ResetProperties function

QuestionsCustomScript

<BLANK>

This should be used to make any updates not covered within the main

CoolOffAvailable

false

Determines whether Cool-off is available for the product

CoolOffDays

0

If CoolOffAvailable has been set to true, this setting defines the number of days after inception date where Cool Off is applicable

CANX ClearPremiumProperties

All properties are assumed to be false if they are not provided or set to anything other than true.

Actual updates occur in the function NEWRATES_CANCEL_Create_ResetProperties

Property
Default Value
Description

DiscountLoadingPremiumPercentage

False

Determine whether to clear DiscountLoadingPremiumPercentage property against each Premium row in rates

OverridePremium

False

Determine whether to clear OverridePremium property against each Premium row in rates

Adjustment

False

Determine whether to clear Adjustment property against each Premium row in rates

Billing

False

Determine whether to clear Billing property against each Premium row in rates. The Billing information held in Summary will also be cleared

Quoted

False

Determine whether to set the Quoted property to false against each Premium row in rates

Selected

False

Determine whether to set the Selected property to false against each Premium row in rates

Bound

False

Determine whether to set the Bound property to false against each Premium row in rates

CANX ClearFeeProperties

All properties are assumed to be false if they are not provided or set to anything other than true.

Actual updates occur in the function NEWRATES_CANCEL_Create_ResetProperties

Property
Default Value
Description

DiscountLoadingFeePercentage

False

Determine whether to clear DiscountLoadingPremiumPercentage property against each Fee row in rates

OverrideFeeValue

False

Determine whether to clear OverridePremium property against each Fee row in rates

Adjustment

False

Determine whether to clear Adjustment property against each Fee row in rates

Billing

False

Determine whether to clear Billing property against each Fee row in rates. The Billing information held in Summary will also be cleared

CANX RiskUpdates

Actual updates occur in the function NEWRATES_CANCEL_Create_ResetQuestions

Property
Default Value
Description

RefreshProduct

False

Determine whether to re-load Product-level information from Umbraco.

If this is set to true, then Risk.Flags.RefreshProduct is set to true.

This will cause the product information to be refreshed next time the user opens a flow.

ClearBinders

False

Determine whether to clear the binder information held against this risk.

If this is set to true, then Risk.Product.SelectedBinder is set to NULL

REN (Renewal)

REN Root

Property
Default Value
Description
Notes

ClearPremiumProperties

{}

ClearFeeProperties

{}

RiskUpdates

{}

PropertiesCustomScript

<BLANK>

Custom script to make additional updates to premium/fee properties when creating the new transaction

This should be used to make any updates not covered within:

ClearPremiumProperties

ClearFeeProperties

The main updates are set via the:

NEWRATES_RENEWAL_Create_ResetProperties function

QuestionsCustomScript

<BLANK>

This should be used to make any updates not covered within the main

REN ClearPremiumProperties

All properties are assumed to be false if they are not provided or set to anything other than true.

Actual updates occur in the function NEWRATES_RENEWAL_Create_ResetProperties

Property
Default Value
Description

DiscountLoadingPremiumPercentage

False

Determine whether to clear DiscountLoadingPremiumPercentage property against each Premium row in rates

OverridePremium

False

Determine whether to clear OverridePremium property against each Premium row in rates

Adjustment

False

Determine whether to clear Adjustment property against each Premium row in rates

Billing

False

Determine whether to clear Billing property against each Premium row in rates. The Billing information held in Summary will also be cleared

Quoted

False

Determine whether to set the Quoted property to false against each Premium row in rates

Selected

False

Determine whether to set the Selected property to false against each Premium row in rates

Bound

False

Determine whether to set the Bound property to false against each Premium row in rates

REN ClearFeeProperties

All properties are assumed to be false if they are not provided or set to anything other than true.

Actual updates occur in the function NEWRATES_RENEWAL_Create_ResetProperties

Property
Default Value
Description

DiscountLoadingFeePercentage

False

Determine whether to clear DiscountLoadingPremiumPercentage property against each Fee row in rates

OverrideFeeValue

False

Determine whether to clear OverridePremium property against each Fee row in rates

Adjustment

False

Determine whether to clear Adjustment property against each Fee row in rates

Billing

False

Determine whether to clear Billing property against each Fee row in rates. The Billing information held in Summary will also be cleared

REN RiskUpdates

Actual updates occur in the function NEWRATES_RENEWAL_Create_ResetQuestions

Property
Default Value
Description

RefreshProduct

False

Determine whether to re-load Product-level information from Umbraco.

If this is set to true, then Risk.Flags.RefreshProduct is set to true.

This will cause the product information to be refreshed next time the user opens a flow.

ClearBinders

False

Determine whether to clear the binder information held against this risk.

If this is set to true, then Risk.Product.SelectedBinder is set to NULL

PremiumSections

Property
Default Value
Description
Notes

SectionCode*

Unique PascalCase section code per class of business

Use PascalCase and remove any symbols/spaces from ClassOfBusiness

ClassOfBusiness*

String representing class of business

This should be identical to what is configured in Umbraco.

SectionType*

“SingleOption” is for the style of premium where the section is either included or excluded

“MultiOption” is for the style of premium where the user chooses between a number of options to decide which to bind on a class of business (multiple quotes)

If nothing is specified here, then the rates will fall back to “SingleOption” as the default.

SectionOrder*

Integer specifying the order

This property should be populated sequentially across the entirety of the PremiumSections array. It should be an integer starting from 1 and ending with the count of premium sections.

AdditionalProperties (Array)

[]

This is where we specify additional properties (outside of the core field set) which we want to include in PremiumOutput as part of this section

We need to define the properties in the config table, then we populate them in the TechnicalPremium script.

Failing to do both parts of the setup will result in an error and unexpected behaviour.

AdditionalPremiumSectionIdentifiers (Array)

[]

This property is relevant if we expect to see multiple instances of the same class of business added to the same risk. It defines which properties against that premium row make it unique.

If multiple instances of the same section are added for whatever reason (e.g. writing a separate row of Contents insurance for each insured address) then we need a unique property which we can refer to that makes each of them different.

If we follow that same example, we’d add an Additional properties to AdditionalProperties called “LocationName”, we’d then populate this in the Technical Premium function against each Contents instance.

Then we’d specify “LocationName” in the array here to specify that this is something by which we can identify an individual instance of the section.

This mechanism is then used when presenting the information on screen, applying overrides, setting previous rates… and more.

AdditionalPremiumSectionOverrideFields (Array)

[]

This section allows additional override fields to be specified for a premium section.

Binders

{}

This section determines the binder setup to be specified for a premium section.

Provider

Uses top-level provider property

Premium section level setting of “Provider”

As specified above, this is optional here as it would be automatically read-in from top-level if we left this property as blank or not included.

Overrideable

False

Boolean to dictate to the rates whether or not overrides can be applied

Setting this to false means that any overrides (including discounts and loadings) will be prevented by the rates.

It will also disable the override fields in the premium table component.

MaxDiscount

0

Integer representing the Max Discount percentage which can be applied to a section (0 - 100)

This field is significant for the DiscountLoadingPercentage overrides specifying the maximum discount that can be applied.

If the property is left blank or doesn’t exist against a section there will be no cap on discount.

MaxLoading

0

Integer representing the Max Loading percentage which can be applied to a section (0 - 100)

This field is significant for the DiscountLoadingPercentage overrides specifying the maximum loading that can be applied.

If the property is left blank or doesn’t exist against a section there will be no cap on loading.

CalculationMethod

Full

Either contains “Full” or “Change”

This setting is relevant for MTA calculations. It specifies whether we’re passing the Technical Premium through to Premium Output as the new full amount or the change since the last version.

If it’s set to “Full” then a £20 MTA after a £100 New Business premium would be passed through as £120 on the MTA transaction.

If it’s set to “Change” then a £20 MTA after a £100 New Business premium would be passed through as £20 on the MTA transaction.

If nothing is specified here, then the rates will fall back to “Full” as the default.

ExchangeRateMethod

TechnicalPremium

“TechnicalPremium” means the ExchangeRate will be passed in with the Technical Premium record.

“UserCompanyBaseRate” means ExchangeRate will be returned from the currency_rates collection based on the User Company against the risk.

The currency_rates collection holds the latest currency rates, previous versions are written into the currency_rates_archive collection.

These rates can currently be updated via the B2B UI in settings/exchange-rates.

RiskCodesRequired

False

Boolean. If it’s set to true, then RiskCodes are read in from the Technical Premium record.

If it’s set to false then RiskCodes is populated with a default RiskCode of “None” at 100% share

If this has been set to true, but no Risk Codes have been provided with the Technical Premium, then RiskCodes will be populated with an empty array rather than the single element array with the “None” default record.

Currently the responsibility sits outside of rating to ensure that Risk Codes have been properly populated if required.

We can’t really guarantee that every product should follow the same rules in this regard.

SectionPolicySignedLines

{}

Premium section level setting of “PolicySignedLines”

SectionPolicyDates

{}

Premium section level setting of “PolicyDates”

PremiumSections AdditionalPremiumSectionOverrideFields

Property
Default Value
Description
Notes

FieldName*

The name of a property within the rate instance.

Fallback*

What the default value should be set to if the property cannot be found.

ApplyToTechnical*

Boolean which determines whether to apply this to the Technical Premium array.

This is quite an important property as it determines when the override is applied when it’s been specified here.

For example, the property in question here: “Excess” is a property of Technical Premium and if the value changes, it needs to be passed forward correctly for binders at the very least (otherwise overriding them would cause the binders to be out of alignment).

We set ApplyToTechnical to true to make sure that this happens correctly.

There other option is to set ApplyToTechnical to false, in which case the overrides will be applied when the rest of the Premium Output has run.

If this is the case, the override part runs after the logic to decide which Additional Properties to attach to a rate, so it would be possible to first define an additional property and then to attach an override to it and it should work as expected.

PremiumSections Binders

Property
Default Value
Description
Notes

UseBinder

False

Determines whether or not we will calculate and attach the binder properties to the premium.

ClassOfBusiness

<BLANK>

If UseBinder has been set to true, then ClassOfBusiness allows the rates to identify which binder information to attach.

The ClassOfBusiness which we would use here should marry-up with the class of business specified in QuestionPlaceholder against the instance of the Binder question on the journey (Umbraco).

PremiumSections SectionPolicySignedLines

Property
Default Value
Description
Notes

PlacementType*

Premium-section-level question code for Placement Type

Premium-section-level setting of Placement Type

Order*

Premium-section-level question code for Order

Premium-section-level setting of Order

WrittenLine*

Premium-section-level question code Written Line

Premium-section-level setting of Written Line

SignedLine*

Premium-section-level question code for Signed Line

Premium-section-level setting of Signed Line

PremiumSections SectionPolicyDates

Property
Default Value
Description
Notes

EffectiveDate*

Premium-section-level question code for Effective Date

Premium-section-level setting of Effective Date

ExpiryDate*

Premium-section-level question code for Expiry Date

Premium-section-level setting of Expiry Date

InceptionDate*

Premium-section-level question code for Inception Date

Premium-section-level setting of Inception Date

FeeSections

Root

Property
Default Value
Description
Notes

SectionCode*

Unique PascalCase section code per fee name

Use PascalCase and remove any symbols/spaces from FeeName

FeeName*

String representing fee name

This should be identical to what is configured in Umbraco.

SectionOrder*

Integer specifying the order

This property should be populated sequentially across the entirety of the FeeSections array. It should be an integer starting from 1 and ending with the count of fee sections.

AdditionalProperties (Array)

[]

This is where we specify additional properties (outside of the core field set) which we want to include in FeeOutput as part of this section.

We need to define the properties in the config table, then we populate them in the TechnicalPremium script.

Failing to do both parts of the setup will result in an error and unexpected behaviour.

AdditionalFeeSectionIdentifiers (Array)

[]

This property is relevant if we expect to see multiple instances of the same fee name added to the same risk. It defines which properties against that fee row make it unique.

If multiple instances of the same section are added for whatever reason (e.g. writing a separate fee row for each insured address) then we need a unique property which we can refer to that makes each of them different.

If we follow that same example, we’d add an Additional property to AdditionalProperties called “LocationName”, we’d then populate this in the Technical Premium function against each fee instance.

Then we’d specify “LocationName” in the array here to specify that this is something by which we can identify an individual instance of the section.

This mechanism is then used when presenting the information on screen, applying overrides, setting previous rates… and more.

AdditionalFeeSectionOverrideFields (Array)

[]

This section allows additional override fields to be specified for a premium section.

Provider

Uses top level provider property

Fee section level setting of “Provider”

As specified above, this isn’t strictly necessary here as it would be automatically read-in from top-level if we left this property as blank

Overrideable

False

Boolean to dictate to the rates whether or not overrides can be applied

Setting this to false means that any overrides (including discounts and loadings) will be prevented by the rates.

It will also disable the override fields in the premium table component.

MaxDiscount

0

Integer representing the Max Discount percentage which can be applied to a section (0 - 100)

This field is significant for the DiscountLoadingPercentage overrides specifying the maximum discount that can be applied.

If the property is left blank or doesn’t exist against a section there will be no cap on discount.

MaxLoading

0

Integer representing the Max Loading percentage which can be applied to a section (0 - 100)

This field is significant for the DiscountLoadingPercentage overrides specifying the maximum loading that can be applied.

If the property is left blank or doesn’t exist against a section there will be no cap on loading.

ExchangeRateMethod

TechnicalPremium

“TechnicalPremium” means the ExchangeRate will be passed in with the Technical Fee record.

“UserCompanyBaseRate” means ExchangeRate will be returned from the currency_rates collection based on the User Company against the risk.

The currency_rates collection holds the latest currency rates, previous versions are written into the currency_rates_archive collection.

These rates can currently be updated via the B2B UI in settings/exchange-rates.

InstalmentsMethod

Full

When this is set to “Full” it means that for Instalment plans, this fee value will be paid off in full on the first instalment.

If it’s set to “Split” it means the fee value will be included in the overall total to be split by instalments.

The value of any fees where InstalmentsMethod has been set to “Full” appears in the Additional column of the BillingOption component against the first instalment.

SectionPolicyDates

{}

Fee section level setting of “PolicyDates”

Inspector

This is something which exists for quite a specific purpose to tie rates back to the Inspector UI. Each transaction type short code is a property name and the string held against each represents the question code for the Premium Table from Umbraco.

The purpose of this is to display the correct information in the inspector at each transaction type. Within the flows themselves, we simply add the relevant premium table, but the inspector has no concept of this, so uses this information from the config table to present the correct instance of the question.

Property
Description
Notes

PremiumTable*

Holds Inspector PremiumTable settings

Inspector PremiumTable

Property
Description
Notes

QuestionCode*

Holds Premium Table question codes by transaction

Inspector PremiumTable QuestionCode

Property
Description
Notes

NB*

Question Code for Premium Table to be displayed in the Inspector at New Business

This can be comma separated to show multiple in the UI

MTA*

Question Code for Premium Table to be displayed in the Inspector at MTA

This can be comma separated to show multiple in the UI

CANX*

Question Code for Premium Table to be displayed in the Inspector at Cancellation

This can be comma separated to show multiple in the UI

REN*

Question Code for Premium Table to be displayed in the Inspector at Renewal

This can be comma separated to show multiple in the UI

CardPayments

Property
Description
Notes

Type*

Name of the payment provider

Currently we only integrate with “Stripe” as a card-payment provider

PublishableKey*

Stripe publishable key which can be found by logging into the Stripe portal

There is a publishable key and a secret key for each Stripe account.

We store the publishable key in the config table and the secret key is hidden away in the API.

It’s crucial that the keys both match with the same Stripe account for the payment process to work.

For our development environments we use our own Insureflow Stripe instance. UAT and live sites for clients will have their own setup.

AmountElement*

Indicates which element of the rates to look for the value to be charged as the Stripe payment amount

The combination of these properties should point at the location of a property holding the value of the full amount to be paid via card.

The example setup here is what will be followed in a majority of occasions

AmountProperty*

Indicates which property of the element above should be used to look for the value to be charged as the Stripe payment amount

PaymentCurrency*

3-digit currency code for Payment Currency

This has always been set to “GBP” so far as the Stripe accounts have been setup in this currency

Refunds

The combination of these properties should point at the location of a property holding the value of the full amount to be paid via card.

Property
Description
Notes

AmountElement*

Indicates which element of the rates to look for the value to be charged as the Stripe refund amount

AmountProperty*

Indicates which property of the element above should be used to look for the value to be charged as the Stripe refund amount

PolicySignedLines

The combination of the answers to these questions determines the Our Share Multiplier value which is used in binder calculations.

Property
Default Value
Description
Notes

PlacementType

100% Placement

Question code for PlacementType

Order

If PlacementType === “100% Placement” Then Order = 100.

Question code for Order

WrittenLine

Else read in the answer using the question code, if it can’t be found then default to 0

Question code for WrittenLine

SignedLine

If PlacementType === “100% Placement” Then WrittenLine = 100.

Question code for SignedLine

Billing

Root

Property
Default Value
Description
Notes

Options

{}

Contains a series of options used to determine display and validation for the BillingOption component.

TotalToPayProperty*

Holds the name of a property in the “Summary” section which holds the total value to be paid by card.

Perhaps it would be a good idea in future to allow the TotalToPay property to also be applied to other elements of the rates array besides “Summary”.

DefaultTermsOfTrade

Holds the default value for what TermsOfTrade should be set to in the Billing section of “Summary”

This default will be set the first time the BillingOption component loads.

DefaultBillingOption

In Full

Holds the default value for what BillingOption should be set to in the Billing section of “Summary”

This default will be set the first time the BillingOption component loads.

Billing Options

These options are written into the Billing.Options in the “Summary” row where they are then picked up within the BillingOption component.

These values are also referenced in the validation method created specifically for billing "Validate_NEWRATES_Billing" - If you are using the latest automated validation script, it should automatically run billing validation for you if the question exists in the flow.

IMPORTANT: If these options aren’t provided in the “Summary” entry in Billing.Options, then the BillingOption component will look in QuestionOptions for that question instance to extract these values.

If entries cannot be found in here, then we fall back to the “default value if not specified” for each property from the table at the start of this section.

Property
Description
Notes

MinInstalments*

Integer option for Minimum Instalments which can be added to the instalment plan

MaxInstalments*

Integer option for Maximum Instalments which can be added to the instalment plan

MinTermsOfTrade*

Integer option for Minimum Terms of Trade for the instalment plan

MaxTermsOfTrade*

Integer option for Maximum Terms of Trade for the instalment plan

MinSettlementDueDateDays*

Integer option for the adjustment in days which should be applied to the Inception Date to determine the earliest permitted Settlement Due Date within the instalment plan

MaxSettlementDueDateDays*

Integer option for the adjustment in days which should be applied to the Expiry to determine the latest permitted Settlement Due Date within the instalment plan

Last updated