Glossary
This glossary defines key terms and concepts used throughout the Underwriting Service API documentation and codebase. Keep this page up to date as terminology evolves.
Products
- Float Check
-
API endpoint that evaluates user eligibility for a float advance.
- Loan Check
-
API endpoint that evaluates user eligibility for a loan product.
Lambda Functions
- Rule Runner
-
Lambda function that executes business rules against user data. Triggered by SQS messages from the API Lambda.
- Result Runner
-
Lambda function that aggregates rule outcomes into final eligibility decisions. Triggered after all rules have been evaluated.
- Float Created Handler
-
Lambda function that creates historical evaluation records when a float is successfully disbursed.
- Profile Handler
-
Lambda function that manages default FloatProfile creation for new users.
Rule Engine
- Rule
-
A single business logic check that evaluates one aspect of user eligibility (e.g., account age, deposit frequency, balance requirements).
- Rule Interface
-
Go interface (
Rule) that all business rules must implement, definingExecute()andName()methods. - Rulebook
-
A YAML-defined collection of rules with a priority level and configuration. Multiple rulebooks can exist for A/B testing or different user segments.
- Rule Outcome
-
The result of executing a single rule, stored in DynamoDB with pass/fail status and reasoning.
- Evaluation Result
-
The final aggregated outcome of all rule executions for a given eligibility check, including approved/denied status and the deciding rulebook.
- Superseding Logic
-
Rulebook logic where certain mandatory rules must pass regardless of other rule outcomes. Used to enforce critical eligibility requirements.
- Custom Properties
-
Rule-specific configuration values defined in rulebook YAML files (e.g., minimum account age in days, required deposit count).
CFI (Continuous Float Increase)
- CFI
-
Continuous Float Increase - a system that automatically increases user float limits based on positive repayment and subscription history.
- Float Rank
-
A score from 0-8 based on the user’s history of successful float repayments. Higher ranks qualify for larger float amounts.
- Subscription Rank
-
A score from 0-8 based on the user’s history of completed subscription payments. Used in combination with Float Rank for CFI eligibility.
- IncreaseChecks
-
A table of criteria that determines CFI eligibility. Each row specifies minimum Float Rank, Subscription Rank, balance, and previous float requirements for a given tier.
- CFI Enabled
-
Boolean flag on FloatProfile indicating whether the user is enrolled in the Continuous Float Increase program.
DynamoDB Entities
- FloatProfile
-
DynamoDB entity storing user float eligibility configuration, CFI status, ranks, and limit information. Primary key:
PROFILE#{userId}. - EvaluationResult
-
DynamoDB entity representing the outcome of a complete rules evaluation. Includes approval status, deciding rulebook, and timestamp. TTL: 32 days.
- RuleOutcome
-
DynamoDB entity storing the result of a single rule execution. Includes pass/fail status, rule name, and detailed message. TTL: 32 days.
- TemporaryFloatProfile
-
DynamoDB entity that temporarily overrides a user’s FloatProfile settings for testing or special cases. Has a configurable TTL.
- CachedRulebook
-
DynamoDB entity caching rulebook configurations to reduce load times. TTL: 60 minutes.
Architecture Patterns
- Async Evaluation
-
Pattern where eligibility checks return HTTP 202 immediately and process rules asynchronously via SQS. Clients poll for results.
- Cache Hit
-
When a recent evaluation result (< 7 days old) exists and can be returned immediately without re-running rules.
- Cache Miss
-
When no recent evaluation exists, triggering the async rule evaluation pipeline.
- Idempotency
-
Design principle ensuring that processing the same event multiple times produces the same result without side effects.