PMS: Purchase Milestone
The PMS entity represents a payment milestone on a purchase contract, defining a scheduled payment with monthly spend distribution.
PMS definition shipped with DemandFlow. Administrators can add, remove, rename, or re-type fields, change which ones are required, and alter the layout from the Definitions screen in Settings. Your tenant's current schema may differ from what is shown here. To read the current definition at any time, GET the DEFINITION object whose id matches PMS.Entity properties
| Property | Value |
|---|---|
| Entity code | PMS |
| Display name | Purchase Milestone |
| Plural | Purchase Milestones |
| Level | 50000 |
Use cases
PMS is a child entity of PCON (Purchase Contract), linked via the SUB|PCON|PMS comboKey. Each milestone represents a discrete payment event within a contract, either triggered by a date or a deliverable. The value field captures the milestone amount, and the spendtype objectLookup (SPEND entity) classifies the expenditure for financial reporting. The monthlyForecast row type provides a 12-month grid for distributing the milestone value across accounting periods, with the totalProperty linking back to the value field to ensure the monthly breakdown sums correctly. The year field with futureYears: 5 allows spend planning up to five years ahead. The high level (50000) indicates this is a deeply nested entity not typically accessed from the main menu, instead being reached through the PCON record's milestones panel. The newform flag on date and value fields means these are requested when creating a new milestone inline.
Fields
General
| Field | Type | Required | Notes |
|---|---|---|---|
name | text | Yes | Milestone Name. |
description | text (multi-line) | Description. | |
type | enum | Type. Valid ids: date (Date), deliverable (Deliverable). | |
date | date | Milestone date. | |
value | number | Value. | |
spendtype | reference → SPEND | Yes | Spend type. |
year | singleselect | Spend year. |
Additional panels
- monthlyForecast panel.
Relationships
- Lookups:
spendtypepoints atSPENDrecord.
Creating a Purchase Milestone via the API
POST /v1/objects
Authorization: Bearer <your-pat>
Content-Type: application/json
{
"entity": "PMS",
"level": 50000,
"comboKey": "SUB:<your-sub-id>|ENT:",
"name": "Example",
"spendtype": "",
"description": "Long description text.",
"type": "date"
}
Listing PMS records
# All purchase milestones in your tenant
GET /v1/entities/PMS/SUB