Skip to content

Function Cheat Sheet

Quick reference for all 47 Quote Extension functions.

💡 Tip: Function names link to detailed documentation with examples and best practices.


Pricing Matrix Configuration (8 functions)

📖 Full Documentation

Function Parameters Purpose
$SetCurrencyToPricingMatrix currency Set currency code
$SetCommissionRateToPricingMatrix rate Set commission rate
$SetIptRateToPricingMatrix rate Set IPT rate
$SetFeeToPricingMatrix amount Set admin fee
$SetTaxDutyToPricingMatrix config Set tax/duty
$SetPreCalculatedIptToPricingMatrix amount Set fixed IPT amount
$SetPreCalculatedIptToAdjustmentDifferencePricingMatrix amount Set MTA IPT adjustment
$SetMinimumPremiumToPricingMatrix amount Set minimum premium

Pricing Matrix Items (4 functions)

📖 Full Documentation

Function Parameters Purpose
$AddItemToPricingMatrix name, amount, quantity Add premium item
$AddPreCalculatedItemToPricingMatrix name, net, gross, isMTARefundable, isMTAFullPremium Add pre-calculated item
$RemoveItemFromPricingMatrix name Remove item
$ApplyIptToFeeInPricingMatrix none Apply IPT to fees

Pricing Matrix Factors (2 functions)

📖 Full Documentation

Function Parameters Purpose
$AddFactorToPricingMatrix name, rate, accumulative, applicability Add factor (age, risk, etc.)
$AddItemFactorToPricingMatrix itemName, factorName, rate, accumulative Add item-specific factor

Pricing Matrix Discounts (5 functions)

📖 Full Documentation

Function Parameters Purpose
$AddGrossDiscountToPricingMatrix name, amount, isPercentage Add gross discount
$AddNetDiscountToPricingMatrix name, amount, isPercentage Add net discount
$AddInternalDiscountToPricingMatrix name, amount, isPercentage Add internal discount
$AddItemGrossDiscountToPricingMatrix itemName, discountName, amount, isPercentage Add item gross discount
$AddItemNetDiscountToPricingMatrix itemName, discountName, amount, isPercentage Add item net discount

Pricing Matrix Add-Ons (5 functions)

📖 Full Documentation

Function Parameters Purpose
$AddAddOnToPricingMatrix name, netRate, commissionRate, iptRate, isRefundable, discountAllowed, isFullPremiumMTA Add full add-on
$AddPremiumAddOnToPricingMatrix name, premiumRate Add premium-based add-on
$RemoveAddOnFromPricingMatrix name Remove add-on
$AddLeadValueFactorAndCostToPricingMatrix factor, cost Add lead value components
$CalculateLeadValue params... Calculate lead value

Quote Calculations (7 functions)

📖 Full Documentation

Function Parameters Purpose
$CalculatePremiumAdditive quoteType Calculate final premium (main function)
$CalculateMTAPremium mtaFee Calculate mid-term adjustment
$ValidateMTAChanges none Validate MTA changes
$ValidateCameraMTA none Camera-specific MTA validation
$ValidateC4RMTA none C4R-specific MTA validation
$AddTaxDuty taxDutyConfig Add tax and duty
$CalculateAge referenceDate, birthdate, timezone Calculate age

Cancellations (3 functions)

📖 Full Documentation

Function Parameters Purpose
$CalculateFullCancellation cancellationFee, refundAdministrationFee Full refund (cooling-off)
$CalculateProRataCancellation cancellationFee, refundAdministrationFee Pro-rata refund
$CalculateNoRefundCancellation cancellationFee No refund cancellation

Ledger (1 function)

📖 Full Documentation

Function Parameters Purpose
$AddToLedger ledgerType, ledgerSubType, ledgerSection, netAmount, commissionAmount, taxAmount, taxRate, taxType, grossAmount, currency, isRefundable Add ledger entry

Underwriter (7 functions)

📖 Full Documentation

Function Parameters Purpose
$AddUnderwriterDecision decision, code, message, authorityLevel Add any decision
$Decline code, reason Decline quote
$Referral code, reason, authorityLevel Refer for review
$Level1Referral code, reason Level 1 referral
$Level2Referral code, reason Level 2 referral
$Level3Referral code, reason Level 3 referral
$AddEndorsement code, description Add policy endorsement

Time Functions (1 function)

📖 Full Documentation

Function Parameters Purpose
$CalculatePolicyDates none (uses QuotePublicData) Calculate policy dates

Quote Functions (3 functions)

📖 Full Documentation

Function Parameters Purpose
$CheckQuote none Validate and set quote status
$AddFeatureCollectionTitle title Set feature collection title
$AddFeature id, name, description, amount, currency, isKey Add policy feature/benefit

Common Usage Patterns

New Business Quote

$SetCurrencyToPricingMatrix("GBP");
$SetCommissionRateToPricingMatrix(0.15);
$SetIptRateToPricingMatrix(0.12);
$AddItemToPricingMatrix("Base Premium", 500.00, 1.0);
$AddFactorToPricingMatrix("Age Factor", 1.20, true, 0);
$SetFeeToPricingMatrix(25.00);
$CalculatePremiumAdditive("NewBusiness");

Mid-Term Adjustment

let MTADate = $Today();
let MTALedgerHistory = Ledger;
// Rebuild pricing matrix with changes
$CalculateMTAPremium(15.00);

Cancellation

let CancellationDate = $Today();
let CancellationReason = "Customer request";
$CalculateProRataCancellation(25.00, false);

Underwriting

if (age < 18) { $Decline("AGE-MIN", "Age requirement not met"); }
else if (premium > 10000) { $Level2Referral("PREM-HIGH", "High value"); }
else { $AddUnderwriterDecision("Valid", "STD-ACCEPT", "Standard risk", "NoAuthority"); }
$CheckQuote();  // Finalize quote status

Environment Variables

Input Variables

Variable Type Purpose
Customer Object Customer data
Items Array Insured items
Policy Object Policy details (dates, term)
ProductDetails Object Product configuration
HasActiveFinanceAgreement Boolean Finance status

Working Variables

Variable Type Purpose
PricingMatrix Object Pricing structure
Ledger Array Transaction ledger
Output Object Final results
QuotePublicData Object External quote data
MTADate Date MTA effective date
MTALedgerHistory Array Original ledger before MTA
MTAWaivePremium Boolean Waive MTA premium flag
CancellationDate Date Cancellation date
CancellationReason String Cancellation reason
FinanceDetails Object Finance agreement details

Output Variables

Variable Type Purpose
AdditionalPremium Number MTA additional charge
AdjustmentDifferencePricingMatrix Object MTA difference matrix
Cancellation Object Cancellation refund details
UnderwriterDecisions Array Underwriting decisions
Endorsements Array Policy endorsements
QuoteStatus String Final quote status
InceptionDate String Policy inception (ISO 8601)
ExpiryDate String Policy expiry (ISO 8601)
PolicyDurationInDays Number Policy duration in days

Function Categories by Workflow

Premium Build-Up

  1. Set currency/commission/IPT
  2. Add items
  3. Apply factors
  4. Add discounts
  5. Add optional add-ons
  6. Set fees
  7. Calculate

Complete Quote

  1. Calculate policy dates ($CalculatePolicyDates)
  2. Build pricing matrix
  3. Calculate premium ($CalculatePremiumAdditive)
  4. Add features ($AddFeatureCollectionTitle, $AddFeature)
  5. Run underwriting rules
  6. Finalize quote status ($CheckQuote)
  7. Return QuotePublicData

Mid-Term Adjustment

  1. Save original state (MTALedgerHistory)
  2. Set MTADate
  3. Rebuild pricing matrix
  4. Calculate MTA premium
  5. Access AdditionalPremium

Cancellation

  1. Set CancellationDate/Reason
  2. Choose cancellation type
  3. Calculate refund
  4. Access Cancellation.RefundAmount

Underwriting

  1. Check decline conditions (with codes)
  2. Check referral conditions (with codes)
  3. Add endorsements
  4. Call $CheckQuote to finalize status

Quick Tips

Pricing Matrix: Always configure currency, commission, and IPT before adding items.

Calculations: Use $CalculatePremiumAdditive once when all pricing complete.

Policy Dates: Call $CalculatePolicyDates early - it populates InceptionDate, ExpiryDate, and PolicyDurationInDays.

Features: Add features before calling $CheckQuote to ensure they're included in QuotePublicData.

Quote Status: Always call $CheckQuote after underwriting to set the final status.

Underwriter Decisions: Use meaningful codes (e.g., "AGE-MIN", "PREM-HIGH") for tracking and reporting.

MTAs: Save original ledger before recalculating.

Cancellations: Set CancellationDate and CancellationReason environment variables.

Ledger: Automatically populated by calculation functions.

Output: Access Output.Premium, Output.Monthly after calculation; access full quote via QuotePublicData.


Next Steps

Examples

Detailed Function Documentation