Delinquency Buckets

Delinquency buckets define how Embarc classifies overdue loans for a particular loan product.
They group age ranges (for example, 1–30 days, 31–60 days) so that collections teams, reports, and automation all use the same labels for which loans are “in bucket 1”, “bucket 2”, and so on.


How It Works

flowchart TD
    A[Define ranges, min/max days] --> B[Build bucket; ordered list of ranges]
    B --> C[Assign bucket to loan product]
    C --> D[Collections job tags loans based on overdue days]
    D --> E[Events & dashboards show current bucket]
  1. Ranges – Each range has a minimumAgeDays and optional maximumAgeDays. A range can be open-ended (for example, 181+).
  2. Buckets – A bucket is an ordered list of ranges. Embarc sorts them by minimumAgeDays and ensures they don’t overlap.
  3. Loan product link – Every loan product references exactly one bucket. All loans under that product use the same bucket.
  4. Tagging – During COB/collections processing, Embarc calculates effective days past due (respecting any delinquency pause settings) and assigns the loan to the range whose band it falls into. If installment-level tagging is enabled on the product, each installment carries its own range.
  5. Events & analytics – When a loan moves from one range to another, Embarc publishes a LoanDelinquencyRangeChange event. Dashboards and downstream systems rely on that history.

Designing Ranges and Buckets

  • Use contiguous coverage: if range A ends at 30, range B should start at 31.
  • Overlaps aren’t allowed. Attempts to save overlapping ranges are rejected with validation errors.
  • The last range can have no maximumAgeDays, representing “everything above the prior max”.
  • Name buckets clearly (“Retail 30/60/90”, “BNPL buckets”, etc.) so product teams select the correct one.
TermMeaning
Delinquency RangeA band of overdue days, such as 1–30 or 90+.
Delinquency BucketAn ordered set of ranges; assigned to a loan product.
Effective days past dueOverdue days after subtracting any approved delinquency pause.
Installment taggingOptional setting on the loan product to tag each installment separately (useful for reporting).

Integration Points

  • API/v1/delinquency/ranges and /v1/delinquency/buckets let you create, read, update, and delete configurations. Deletion is blocked while a bucket is tied to any product.
  • Loan product editor – Exposes the bucket selector. Changing the bucket triggers re-tagging for existing loans.
  • Reports – Loan endpoints like GET /v1/loans/{id}?associations=delinquency include the current bucket classification. Use this in collections dashboards or exports.
  • Automation – Business events fire whenever a loan transitions between ranges. Hook into these events for notification workflows or external compliance systems.

By standardizing delinquency buckets, collections, reporting, and regulatory teams have a shared language for how overdue loans are classified and escalated.