A ContractDeposit represents a security deposit or retainer associated with a plan contract (CoworkerContract). Each deposit is based on a Product and is charged to the member either on the first invoice generated for the contract, or on the next invoice for any contract that has IncludeSignupFee = true.
ContractDeposits are created automatically when a contract is signed for a plan (Tariff) that includes one or more TariffSignupProducts. Each TariffSignupProduct on the plan becomes a corresponding ContractDeposit on the new contract.
When Refundable = true, cancelling the parent contract automatically generates a credit note for the deposit amount. That credit note can then be applied — fully or partially — against any outstanding fees or damage charges raised via a separate invoice.
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-List role.
Query Parameters
The page number to retrieve.
The number of records per page.
The property name to sort results by (e.g. Name, CreatedOn).
Sort direction. 1 for ascending, -1 for descending.
Filters
ContractDeposit_CoworkerContract
Filter by Coworker Contract Id.
ContractDeposit_CoworkerContract_Quantity
Filter by Coworker Contract Quantity.
ContractDeposit_CoworkerContract_FloorPlanDeskIds
Filter by Coworker Contract Floor Plan Desk Ids.
ContractDeposit_CoworkerContract_FloorPlanDeskNames
Filter by Coworker Contract Floor Plan Desk Names.
ContractDeposit_CoworkerContract_Tariff_Name
Filter by name of the tariff/plan associated with the parent contract.
ContractDeposit_CoworkerContract_Coworker_Id
Filter by Coworker Contract Coworker Id.
ContractDeposit_CoworkerContract_Coworker_FullName
Filter by full name of the member holding the parent contract.
ContractDeposit_CoworkerContract_Coworker_BillingName
Filter by billing name of the member holding the parent contract.
ContractDeposit_Product_Name
Filter by name of the product this deposit is based on.
ContractDeposit_Product_Price
Filter by default price of the underlying product (used when Price is not overridden).
ContractDeposit_Product_Currency_Code
Filter by iSO currency code of the underlying product.
Filter by optional notes or internal comments about this deposit.
Filter by deposit amount to charge. When set, overrides the default price of the linked product.
ContractDeposit_Refundable
Filter by when true, cancelling the parent contract automatically generates a credit note for the deposit amount, which can be applied against outstanding fees or damages.
Filter by true once the deposit has been included in an invoice (either the first contract invoice or the next invoice when IncludeSignupFee = true on the contract).
Filter by true once a credit note has been issued for this refundable deposit following contract cancellation.
ContractDeposit_InvoicedOn
Filter by date and time when the deposit was included in an invoice.
Range Filters
from_ContractDeposit_CoworkerContractQuantity
Filter by coworker contract quantity greater than or equal to this value.
to_ContractDeposit_CoworkerContractQuantity
Filter by coworker contract quantity less than or equal to this value.
from_ContractDeposit_CoworkerContractCoworkerId
Filter by coworker contract coworker id greater than or equal to this value.
to_ContractDeposit_CoworkerContractCoworkerId
Filter by coworker contract coworker id less than or equal to this value.
from_ContractDeposit_ProductPrice
Filter by default price of the underlying product (used when Price is not overridden) greater than or equal to this value.
to_ContractDeposit_ProductPrice
Filter by default price of the underlying product (used when Price is not overridden) less than or equal to this value.
from_ContractDeposit_Price
Filter by deposit amount to charge. When set, overrides the default price of the linked product greater than or equal to this value.
Filter by deposit amount to charge. When set, overrides the default price of the linked product less than or equal to this value.
from_ContractDeposit_InvoicedOn
Filter by date and time when the deposit was included in an invoice greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractDeposit_InvoicedOn
Filter by date and time when the deposit was included in an invoice less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractDeposit_CreatedOn
Filter records created on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractDeposit_CreatedOn
Filter records created on or before this date. Format: YYYY-MM-DDTHH:mm.
from_ContractDeposit_UpdatedOn
Filter records updated on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractDeposit_UpdatedOn
Filter records updated on or before this date. Format: YYYY-MM-DDTHH:mm.
Code Examples
Simple listing
curl -X GET \
"https://spaces.nexudus.com/api/billing/contractdeposits?page=1&size=15&orderBy=CreatedOn&dir=1" \
-H "Authorization: Bearer YOUR_TOKEN"
Filtering by CreatedOn
curl -X GET \
"https://spaces.nexudus.com/api/billing/contractdeposits?ContractDeposit_CreatedOn=example-value&orderBy=CreatedOn&dir=1" \
-H "Authorization: Bearer YOUR_TOKEN"
Range filters
curl -X GET \
"https://spaces.nexudus.com/api/billing/contractdeposits?from_ContractDeposit_UpdatedOn=2025-01-01T00:00&to_ContractDeposit_UpdatedOn=2025-12-31T23:59&orderBy=UpdatedOn&dir=-1" \
-H "Authorization: Bearer YOUR_TOKEN"
Response
200
The list of ContractDeposit records matching the query. See the Get one ContractDeposit endpoint for the full list of properties returned for each record.
Partial records — The listing endpoint returns a summary representation of each ContractDeposit. The following fields are not included in the Records[] response: Notes.To get all fields, fetch the full record using the Get one ContractDeposit endpoint.Important for updates: When updating a record via PUT, always retrieve the full record with a GET request first, apply your changes to that complete data, and then send the updated record. Do not use data from a listing response as the base for a PUT request, as missing fields may be unintentionally cleared.
Number of records per page.
The field used for sorting.
The sort direction (1 = ascending, -1 = descending).
Index of the first item on the current page.
Index of the last item on the current page.
Total number of matching records across all pages.
Whether there is a next page of results.
Whether there is a previous page of results.
{
"Records": [
{
"CoworkerContractId": 0,
"CoworkerContractQuantity": null,
"CoworkerContractFloorPlanDeskIds": null,
"CoworkerContractFloorPlanDeskNames": null,
"CoworkerContractTariffName": null,
"CoworkerContractCoworkerId": null,
"CoworkerContractCoworkerFullName": null,
"CoworkerContractCoworkerBillingName": null,
"ProductId": 0,
"ProductName": null,
"ProductPrice": 0,
"ProductCurrencyCode": null,
"Notes": null,
"Price": null,
"Refundable": false,
"Invoiced": false,
"Credited": false,
"InvoicedOn": null,
"Id": 87654321,
"UpdatedOn": "2025-01-15T10:30:00Z",
"CreatedOn": "2025-01-10T08:00:00Z",
"UniqueId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"UpdatedBy": "admin@example.com",
"IsNew": false,
"SystemId": null,
"ToStringText": "ContractDeposit Example",
"LocalizationDetails": null,
"CustomFields": null
}
],
"CurrentPageSize": 15,
"CurrentPage": 1,
"CurrentOrderField": "CreatedOn",
"CurrentSortDirection": 1,
"FirstItem": 1,
"HasNextPage": false,
"HasPreviousPage": false,
"LastItem": 1,
"PageNumber": 1,
"PageSize": 15,
"TotalItems": 1,
"TotalPages": 1
}