A deferred-revenue plan for one source document: the billed total is parked in a deferred-revenue liability account and released to income across the recognition window. The schedule owns one line per period, and a straight-line plan divides the total evenly while pushing the rounding remainder onto the final period so the lines always sum back to the exact total. A background scheduler sweeps active schedules for lines that have come due and posts each release, so recognition advances without anyone opening the record.
Fields
| Field | Label | Type | Required | What it does |
BusinessUnitId | Business Unit | Lookup → BusinessUnit | | |
CreatedById | Created By | Lookup → UserAccount | Yes | |
CreatedDateTime | Created Date | DateAndTime | Yes | |
DeferredGLAccountId | Deferred GL Account | Lookup → GLAccount | | The liability account holding the not-yet-earned balance. Each recognition release debits it, drawing the deferred balance down toward zero. |
DocumentNumber | Document Number | Text | | |
EndDate | End Date | DateAndTime | | |
Id | Id | Guid | Yes | |
Method | Method | Text | | Either StraightLine or Milestone. Only the straight-line plan is generated by the platform, dividing the total evenly and placing the rounding remainder on the last period, so a milestone schedule's lines must be supplied from elsewhere rather than expected automatically. |
ModifiedById | Modified By | Lookup → UserAccount | Yes | |
Name | Name | Text | Yes | |
NumberOfPeriods | Number Of Periods | Number | | How many periods the release is spread over, which must be at least one. It drives how many lines a straight-line plan creates, stepping one month at a time from the start date. |
OwnerId | Owner | Lookup → UserAccount | Yes | |
PartnerAccountId | Partner Account | Lookup → Account | | |
PartyAccountId | Party Account | Lookup → Account | | |
RecognizedAmount | Recognized Amount | Currency | | The amount released to income so far. Treat the stored value as a rollup that can lag: the authoritative figure is summed from the lines that actually posted, and it is that sum which ties back to the ledger. |
RecordTypeId | Record Type | Guid, hidden | | |
RevenueGLAccountId | Revenue GL Account | Lookup → GLAccount | | The income account each recognition release credits as revenue is earned, forming the other leg against the deferred liability. |
SourceEntityName | Source Entity Name | Text | | The name of the entity the schedule was raised from, such as an invoice or a contract line, paired with the record identifier alongside it. It is a loose polymorphic link stored as text rather than a foreign key, so nothing at the database level guarantees the referenced record still exists. |
SourceRecordId | Source Record | Guid | | The identifier of the originating record inside the entity named on the same row. Because the pair is polymorphic, always resolve it through that entity name instead of assuming a single target table. |
StartDate | Start Date | DateAndTime | | |
Status | Status | Text | | One of Active, Completed or Cancelled. The background sweep only picks up lines whose schedule is Active or has no status set at all, so moving a schedule off Active is what halts further automatic recognition. |
TotalAmount | Total Amount | Currency | | The full billed amount to be released across the window. It is the target the generated lines must sum back to exactly, which is precisely why rounding is absorbed by the final period rather than spread. |
UIProps | UI Props | Text | | |
UpdatedDateTime | Modified Date | DateAndTime | Yes | |
Actions
| Action | Label | Type | What it does |
Clone | Clone | ServerAction (Clone) | Create a copy of this record |
DeleteEntity | Delete | Delete | DeleteEntity |
DeleteHeader | Delete | Delete | DeleteHeader |
DeleteRow | Delete | Delete | DeleteRow |
EditEntity | Edit | Edit | EditEntity |
EditInLine | Edit | EditInline | EditInLine |
EditRow | EditRow | Edit | EditRow |
New | New | New | New |