API Docs / Schemas / ClientBillableServiceDto

ClientBillableServiceDto

Response DTO for client billable service information

Properties

Name Type Description
codestring

The unique code for this client service assignment

The unique code for this client service assignment

billableServiceCodeAndNameDto
billableServiceCategoryCodeAndNameDto
recurringTaskCountinteger

The number of recurring tasks associated with the billable service

The number of recurring tasks associated with the billable service

billingFrequencyenum

OneOff Annual Quarterly Monthly Weekly

OneOff Annual Quarterly Monthly Weekly

pricenumber

The base price for this client's service (before any adjustment).
If OverridePricing = false: Loaded from BillableService based on BillingFrequency.
If OverridePricing = true: Custom base price set by user.
The final price after adjustment is in EffectivePrice.

The base price for this client's service (before any adjustment).
If OverridePricing = false: Loaded from BillableService based on BillingFrequency.
If OverridePricing = true: Custom base price set by user.
The final price after adjustment is in EffectivePrice.

overridePricingboolean

Indicates whether the pricing is overridden with a custom Price value
If true: Price is used as-is, ignoring BillableService pricing
If false: Price comes from BillableService, and the client-level adjustment is applied

Indicates whether the pricing is overridden with a custom Price value
If true: Price is used as-is, ignoring BillableService pricing
If false: Price comes from BillableService, and the client-level adjustment is applied

priceAdjustmentPercentagenumber

Snapshot of the percentage contribution from selected Percentage-mode pricing factors (positive or negative).

Snapshot of the percentage contribution from selected Percentage-mode pricing factors (positive or negative).

priceAdjustmentFixedAmountnumber

Snapshot of the absolute currency contribution from selected FixedAmount-mode pricing factors (positive or negative).

Snapshot of the absolute currency contribution from selected FixedAmount-mode pricing factors (positive or negative).

effectivePricenumber

Read-only. Effective price = Price + (Price * PriceAdjustmentPercentage / 100) + PriceAdjustmentFixedAmount.
Both contributions are always applied — they're snapshots from different pricing factors and can coexist.
For non-Fixed pricing bases this is the effective rate per unit, not the amount per period.

Read-only. Effective price = Price + (Price * PriceAdjustmentPercentage / 100) + PriceAdjustmentFixedAmount.
Both contributions are always applied — they're snapshots from different pricing factors and can coexist.
For non-Fixed pricing bases this is the effective rate per unit, not the amount per period.

pricingBasisenum

Fixed PerHour PerDay PerUnit

Fixed PerHour PerDay PerUnit

unitNamestring

The unit label of the underlying billable service for PerUnit pricing (e.g. "employee")

The unit label of the underlying billable service for PerUnit pricing (e.g. "employee")

unitQuantitynumber

The expected quantity per billing period for non-Fixed pricing bases (e.g. 12 employees).
Null means the volume is unknown. Ignored when PricingBasis is Fixed.

The expected quantity per billing period for non-Fixed pricing bases (e.g. 12 employees).
Null means the volume is unknown. Ignored when PricingBasis is Fixed.

quantityVariesPerPeriodboolean

Whether the billed quantity is expected to change from period to period. When true (default),
generated billing lines for this service are always created Pending so the quantity can be
confirmed before invoicing, regardless of the approval settings. Ignored when PricingBasis is Fixed.

Whether the billed quantity is expected to change from period to period. When true (default),
generated billing lines for this service are always created Pending so the quantity can be
confirmed before invoicing, regardless of the approval settings. Ignored when PricingBasis is Fixed.

effectivePeriodAmountnumber

Read-only. The amount charged per billing period: EffectivePrice for Fixed services,
EffectivePrice × UnitQuantity otherwise (0 when the quantity is unknown).

Read-only. The amount charged per billing period: EffectivePrice for Fixed services,
EffectivePrice × UnitQuantity otherwise (0 when the quantity is unknown).

startDatestring

The start date for this service

The start date for this service

endDatestring

The end date for this service (null means ongoing)

The end date for this service (null means ongoing)

statusenum

Active Inactive Paused Proposed

Active Inactive Paused Proposed

managedByUserCodeAndNameDto
pricingAnswersobject

The pricing factor answers that determined the final price
Key: Question, Value: Answer

The pricing factor answers that determined the final price
Key: Question, Value: Answer

pricingTierCodestring

The code of the selected custom pricing tier. Only present when the BillableService uses CustomTiers pricing mode.

The code of the selected custom pricing tier. Only present when the BillableService uses CustomTiers pricing mode.

stageClientBillableServiceStageDto
servicePackageCodeAndNameDto
servicePackageUsePackagePricingboolean

Whether the originating service package uses package-level pricing

Whether the originating service package uses package-level pricing

servicePackagePricenumber

The package-level price from the originating service package

The package-level price from the originating service package

servicePackageBillingFrequencyenum

OneOff Annual Quarterly Monthly Weekly

OneOff Annual Quarterly Monthly Weekly

servicePackageSetupFeenumber

The package-level setup fee from the originating service package

The package-level setup fee from the originating service package

setupFeenumber

The one-off setup fee for this client's service. Null means no setup fee.
If OverrideSetupFee = false: Mirrors the BillableService default at the time of assignment.
If OverrideSetupFee = true: Custom setup fee set by user.

The one-off setup fee for this client's service. Null means no setup fee.
If OverrideSetupFee = false: Mirrors the BillableService default at the time of assignment.
If OverrideSetupFee = true: Custom setup fee set by user.

overrideSetupFeeboolean

Indicates whether the setup fee is overridden with a custom value

Indicates whether the setup fee is overridden with a custom value

isSetupFeeBilledboolean

Read-only. True once the setup fee has been billed (a Billed SetupFee item exists on the
client's billing schedule for this service or its package).

Read-only. True once the setup fee has been billed (a Billed SetupFee item exists on the
client's billing schedule for this service or its package).

autoInvoiceboolean

Whether this service is on the billing schedule. On: occurrences are generated and due ones
become billing lines nightly. Off: the service is billed outside Sodium.

Whether this service is on the billing schedule. On: occurrences are generated and due ones
become billing lines nightly. Off: the service is billed outside Sodium.

setupFeeBillingMomentenum

OnAcceptance WithFirstInvoice

OnAcceptance WithFirstInvoice

nextBillingDatestring

Read-only. The billing date of the earliest scheduled occurrence for this service (or its
package) on the client's billing schedule. Null when nothing is scheduled.

Read-only. The billing date of the earliest scheduled occurrence for this service (or its
package) on the client's billing schedule. Null when nothing is scheduled.

createdDatestring

When the service assignment was created

When the service assignment was created

updatedDatestring

When the service assignment was last updated

When the service assignment was last updated

JSON Example

{
  "code": "string",
  "billableService": {
    "code": "string",
    "name": "string"
  },
  "billableServiceCategory": {
    "code": "string",
    "name": "string"
  },
  "recurringTaskCount": 0,
  "billingFrequency": "OneOff"
}

Used By Operations

Contained in Schemas