MemberPulse
EntitiesIntegration

Unearned Revenue

Revenue recognition tracking for annual memberships

Revenue recognition tracking for annual memberships

Tracks revenue recognition for annual membership payments.

Fields

Core Fields

FieldTypeRequiredDescription
idUUIDAutoPrimary key
membershipPaymentIdUUIDYesFK to PaymentTransaction
financialYearintegerYesFinancial year
totalAnnualAmountdecimalYesTotal payment amount
monthlyAmountdecimalAutoMonthly recognition
startMonthintegerYesFirst month (1-12)
endMonthintegerYesLast month (1-12)

Allocation Tracking

FieldTypeRequiredDescription
recognitionSchedulejsonAutoMonthly schedule

Recognition Schedule Structure

[
  {
    "month": "2025-01",
    "amount": 99.17,
    "recognized": true,
    "recognizedAt": "2025-01-31T23:59:59Z"
  },
  {
    "month": "2025-02",
    "amount": 99.17,
    "recognized": false,
    "recognizedAt": null
  }
]

Business Rules

  • Created only for annual membership payments
  • Monthly amount = totalAnnualAmount / 12
  • Splits across financial years if payment spans them
  • Integrates with Xero for accounting sync

Features

Unearned Revenue

Acceptance Criteria

Frontend
  • Admin/client UI can view and manage Unearned Revenue records where applicable.
Backend / API
  • CRUD operations exist for Unearned Revenue (create, read, update, delete/archive).
Permissions
  • Access is restricted to appropriate roles (tenant-scoped).
Business Rules
  • Fields and relationships documented on this page are enforced for Unearned Revenue.
Error Handling
  • Invalid payloads return field-level validation errors.

On this page