{
"id": 123,
"is_deleted": false,
"deleted_at": "2023-11-07T05:31:56Z",
"lines": "<string>",
"product_name": "<string>",
"product_is_renewable": true,
"product_bundle": "<string>",
"product_bundle_name": "<string>",
"contract_product_bundle": {
"id": 123,
"source_bundle_name": "<string>",
"total_amount": 0,
"lines": [
{
"id": 123,
"product": 123,
"product_name": "<string>",
"amount": 0,
"percentage": "<string>",
"original_percentage": 0
}
],
"source_bundle": 123,
"currency": "<string>"
},
"total_value": 0,
"last_modified_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"customer": 123,
"contract": 123,
"rate": 0,
"quantity": 0,
"renewal_behavior": "FOLLOW_CONTRACT",
"period_amount": 0,
"counts_toward_mrr": true,
"revenue_recognition_type": "RATABLE",
"billing_cadence": "one_time",
"billing_timing": "advance",
"first_invoice_date": "2023-12-25",
"is_contract_amendment": true,
"start_date": "2023-12-25",
"end_date": "2023-12-25",
"mrr": 0,
"discount": 5000000000000,
"notes": "<string>",
"use_daily_accounting": true,
"proration_method": "standard",
"use_catchup": true,
"catchup_date": "2023-12-25",
"catchup_manually_overridden": true,
"invoice_calculation": "FIXED_RATE",
"source": "SALESFORCE",
"external_id": "<string>",
"rates_are_net": true,
"relative_prepaid_commit": 123,
"billing_payment_term": 123,
"product": 123,
"modified_subscription": 123
}Create Contract Subscription
Create a new contract subscription.
Evergreen vs standard:
- Standard contract subscriptions generally provide explicit lines and fixed start/end dates.
- Evergreen contract subscriptions can provide period_amount to auto-generate lines. Their dates must align to billing period boundaries and must not exceed the contract’s current working_end_date.
Notes:
- Usage and milestone subscription flows are not supported for evergreen contracts.
- For evergreen contracts, period_amount is the source-of-truth amount per billing period.
- renewal_behavior:
- FOLLOW_CONTRACT: subscription follows evergreen contract extension windows.
- FIXED_END: subscription keeps its own fixed end_date and does not extend automatically.
{
"id": 123,
"is_deleted": false,
"deleted_at": "2023-11-07T05:31:56Z",
"lines": "<string>",
"product_name": "<string>",
"product_is_renewable": true,
"product_bundle": "<string>",
"product_bundle_name": "<string>",
"contract_product_bundle": {
"id": 123,
"source_bundle_name": "<string>",
"total_amount": 0,
"lines": [
{
"id": 123,
"product": 123,
"product_name": "<string>",
"amount": 0,
"percentage": "<string>",
"original_percentage": 0
}
],
"source_bundle": 123,
"currency": "<string>"
},
"total_value": 0,
"last_modified_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"customer": 123,
"contract": 123,
"rate": 0,
"quantity": 0,
"renewal_behavior": "FOLLOW_CONTRACT",
"period_amount": 0,
"counts_toward_mrr": true,
"revenue_recognition_type": "RATABLE",
"billing_cadence": "one_time",
"billing_timing": "advance",
"first_invoice_date": "2023-12-25",
"is_contract_amendment": true,
"start_date": "2023-12-25",
"end_date": "2023-12-25",
"mrr": 0,
"discount": 5000000000000,
"notes": "<string>",
"use_daily_accounting": true,
"proration_method": "standard",
"use_catchup": true,
"catchup_date": "2023-12-25",
"catchup_manually_overridden": true,
"invoice_calculation": "FIXED_RATE",
"source": "SALESFORCE",
"external_id": "<string>",
"rates_are_net": true,
"relative_prepaid_commit": 123,
"billing_payment_term": 123,
"product": 123,
"modified_subscription": 123
}Path Parameters
Body
-10000000000000 < x < 10000000000000-100000000000000 < x < 100000000000000Controls how this subscription ends. FOLLOW_CONTRACT extends with the evergreen contract's rolling end boundary (working_end_date / effective_end_date). FIXED_END keeps an explicit subscription end_date. Default is FIXED_END.
FOLLOW_CONTRACT- Follow ContractFIXED_END- Fixed End Date
FOLLOW_CONTRACT, FIXED_END Evergreen-only input amount per billing period (for example 10000.00 for a quarterly period). Provide this to auto-generate lines for evergreen subscriptions. Ignored for non-evergreen writes.
-1000000000000000000 < x < 1000000000000000000Migration-only: total amount already invoiced in a prior system. When provided, marks revenue transactions as migration-invoiced up to this amount.
-1000000000000000000 < x < 1000000000000000000RATABLE- RatableRELATIVE_TO_PREPAID_COMMIT- Relative to prepaid commit
RATABLE, RELATIVE_TO_PREPAID_COMMIT one_time- One timemonthly- Monthlyquarterly- Quarterlybiannual- Semiannualannual- Annual
one_time, monthly, quarterly, biannual, annual advance- In advancearrears- In arrears
advance, arrears -1000000000000000000 < x < 1000000000000000000Per-unit discount in contract currency. Line amount is Quantity × (Rate − Discount). Null when no discount is configured.
0 <= x < 10000000000000standard- Standard (actual month length)thirty_day- Fixed 30-day monthdaily- Daily
standard, thirty_day, daily True when a user explicitly set use_catchup or catchup_date via the modal. Suppresses automatic reconciliation by integration syncs so the user's choice survives.
Fixed Rate: rate stays constant, quantity calculated. Fixed Quantity: quantity stays constant (e.g., seats), rate calculated.
FIXED_RATE- Fixed RateFIXED_QUANTITY- Fixed Quantity
FIXED_RATE, FIXED_QUANTITY SALESFORCE- SalesforceHUBSPOT- HubspotSTRIPE- StripeMANUAL- Manual
SALESFORCE, HUBSPOT, STRIPE, MANUAL 250When True, this subscription's rate and waterfall amounts already reflect post-discount (net) pricing. Prevents invoice creation from double-counting discounts via a separate Discount RevenueTransaction.
Response
Read-only serializer for ContractProductBundle in milestone responses.
Show child attributes
Show child attributes
-1000000000000000000 < x < 1000000000000000000-10000000000000 < x < 10000000000000-100000000000000 < x < 100000000000000Controls how this subscription ends. FOLLOW_CONTRACT extends with the evergreen contract's rolling end boundary (working_end_date / effective_end_date). FIXED_END keeps an explicit subscription end_date. Default is FIXED_END.
FOLLOW_CONTRACT- Follow ContractFIXED_END- Fixed End Date
FOLLOW_CONTRACT, FIXED_END Evergreen-only input amount per billing period (for example 10000.00 for a quarterly period). Provide this to auto-generate lines for evergreen subscriptions. Ignored for non-evergreen writes.
-1000000000000000000 < x < 1000000000000000000RATABLE- RatableRELATIVE_TO_PREPAID_COMMIT- Relative to prepaid commit
RATABLE, RELATIVE_TO_PREPAID_COMMIT one_time- One timemonthly- Monthlyquarterly- Quarterlybiannual- Semiannualannual- Annual
one_time, monthly, quarterly, biannual, annual advance- In advancearrears- In arrears
advance, arrears -1000000000000000000 < x < 1000000000000000000Per-unit discount in contract currency. Line amount is Quantity × (Rate − Discount). Null when no discount is configured.
0 <= x < 10000000000000standard- Standard (actual month length)thirty_day- Fixed 30-day monthdaily- Daily
standard, thirty_day, daily True when a user explicitly set use_catchup or catchup_date via the modal. Suppresses automatic reconciliation by integration syncs so the user's choice survives.
Fixed Rate: rate stays constant, quantity calculated. Fixed Quantity: quantity stays constant (e.g., seats), rate calculated.
FIXED_RATE- Fixed RateFIXED_QUANTITY- Fixed Quantity
FIXED_RATE, FIXED_QUANTITY SALESFORCE- SalesforceHUBSPOT- HubspotSTRIPE- StripeMANUAL- Manual
SALESFORCE, HUBSPOT, STRIPE, MANUAL 250When True, this subscription's rate and waterfall amounts already reflect post-discount (net) pricing. Prevents invoice creation from double-counting discounts via a separate Discount RevenueTransaction.