ContractDeposits
Create ContractDeposit
Create a new ContractDeposit record.
POST
Create ContractDeposit
A contract deposit (internally ContractDeposit) is a one-time product charge attached to a customer’s contract, normally created from a plan’s sign-up products. Creating a new contract from a plan with sign-up products creates one deposit for each product and sets the contract’s IncludeSignupFee flag to true. Deposits are charged on the next eligible contract invoice only while IncludeSignupFee is true; that invoicing run then resets the flag to false. A deposit marked InvoiceDuringOnlineCheckout is instead charged during the customer’s online checkout. A refundable deposit can be processed through the dedicated refund workflow after the contract ends.
Authentication
This endpoint requires OAuth2 authentication. Include a valid bearer token in the
Authorization header.
The authenticated user must be a full unrestricted administrator or have the ContractDeposit-Create role.Request Body
Required Fields
integer
required
ID of the customer’s contract; it determines this deposit’s location, customer, plan, and invoice cycle..
integer
required
ID of the location product charged for this deposit; its current price is used when Price is null..
Optional Fields
string
Optional operator notes about this deposit..
number
Optional deposit amount in the location’s currency; when null, the linked product’s current price is used..
boolean
Whether cancelling the contract makes this deposit eligible for the dedicated refund workflow, which creates a negative sale that can be included in a credit note..
boolean
Whether this deposit is charged during the customer’s online checkout instead of waiting for the contract’s next eligible invoice..
Code Examples
Response
200
integer
HTTP status code.
200 on success.string
A human-readable message confirming the creation.
object
Contains the
Id of the newly created record.boolean
true if the contractdeposit was created successfully.array
null on success.Example Response
400
string
A summary of the validation error(s), in the format
PropertyName: error message.any
null on validation failure.object[]
Array of validation errors.
boolean
false when the request fails validation.Example Response