ContractMilestone

IMPORTANT  The SOAP API entered a limited enhancement phase in Q4 2020. Access to version 1.6 will be deactivated.

The ContractMilestone entity describes a billing milestone for an Autotask Fixed Price Contract. Billing milestones describe tangible work or measured progress that must be completed before billing can take place, for example, "user approval on design specifications", or "ten workstations installed." A fixed price contract can have multiple billing milestones. In Autotask, you add and manage contract milestones from the Fixed Price Contract's Summary page.

Entity details

You can also retrieve this information with the Web Services API call The getEntityInfo() SOAP API call.

Entity Name: ContractMilestone
Can Create:
Can Update:
Can Query:
Can Delete:  
Can Have UDFs:  

Conditions and requirements

  • Resources with security levels that specify limited or no contract visibility cannot create, update, or query this entity.
  • ContractMilestone.AllocationCodeID must reference a Milestone type Allocation Code.
  • ContractMilestone.ContractID must reference a Contract where ContractType is Fixed Price.
  • If ContractMilestone.IsInitialPayment = False, ContractMilestone.Status cannot = Billed.
  • If ContractMilestone.IsInitialPayment field = True, allow one Contract Milestone with status of "Billed" and one with status "Ready to Bill" for this Contract. That is, in Autotask, when creating a Fixed Price contract, you can specify whether the contract includes an initial payment. If yes, you can then optionally specify an amount received and/or an amount to be billed.

For each amount specified, a ContractMilestone is automatically created. An amount received automatically creates a ContractMilestone with status "Billed"; an amount to be billed automatically creates a ContractMilestone with status "Ready to Bill".

  • If ContractMilestone.Status = Billed, the field cannot be updated.
  • If the Multi-currency Installed Module is enabled, the following fields will return the relevant Customer Currency values instead of the Internal Currency values: Amount.

The following fields will return the saved Internal Currency values: InternalCurrencyAmount.

Field definitions

Field Name Label Datatype Read Only Is Required Reference Name Picklist
AllocationCodeID Allocation Code ID integer     AllocationCode  
Amount Amount double      
ContractID Contract ID integer Contract  
CreateDate Date Created datetime      
CreatorResourceID Created By ID integer   Resource  
DateDue Date Due datetime      
Description Description string (250)        
id id long    
InternalCurrencyAmount
(Multi-currency module only)
Internal Currency Amount double      
IsInitialPayment Initial Payment boolean      
Status Status integer    
Title Name string (50)