Skip to content

BillingStanding

Where a tenant stands with billing now (plan W9): its plan and its state, its balance, whether it can start work, any plan change on its way, and how much of each allowance it has used this billing period.

Kind: an object, used in responses.

Every field is present in a response; empty ones are null.

FieldTypeDescription
tierSkuTier
cadenceBillingCadence
statusContractStatusFrozen after a failed renewal payment (see BillingStanding.FrozenUntilUtc).
currencystring
balancenumberWhat’s left to spend on work beyond the allowances.
lastTopUpAmountnumber | nullThe last top-up’s amount, which a low-balance alert is a share of.
lowBalancebooleanThe balance is low: above zero but below the alert’s share of the last top-up (20% when the email is off), and the tenant shows a banner for it. False when it has never topped up, or has turned the banner off.
canTopUpbooleanThe plan can buy credit (top-ups and automatic top-ups).
minimumTopUpnumberThe smallest top-up (and automatic top-up) that can be bought, in BillingStanding.Currency.
maximumTopUpnumberThe largest top-up (and automatic top-up) that can be bought, in BillingStanding.Currency.
outOfCreditbooleanNothing new can start: the balance can’t pay for more work.
stoppedMetersBillingMeter[]On a plan without top-ups, the allowances used up this period: that work can’t run until the next.
premiumExecutionbooleanThe plan includes sandboxes (capsules) and code pipelines.
frozenUntilUtcdatetime | nullAfter a failed renewal payment: when, if it’s still unpaid, Free’s limits apply in full (UTC).
frozenFromTierSkuTier| nullThe plan it had before a failed renewal payment, and goes back to when the renewal is paid.
scheduledChangeBillingScheduledChange| nullA downgrade or cancellation booked for the renewal.
pendingChangeBillingPendingChange| nullAn upgrade waiting for its prorated payment.
hasBillingAccountbooleanThe tenant has an account at the payment provider (cards and invoices can be managed).
hasSubscriptionbooleanThe tenant pays for its plan by subscription.
termEndsAtUtcdatetime | nullWhen the subscription renews: the end of its current term, a month on a monthly plan and a year on an annual one. A cancellation or a booked downgrade takes effect then. Null without a subscription.
periodStartUtcdatetimeWhen the current billing month began, which is when this month’s allowances started.
periodEndUtcdatetimeWhen the current billing month ends and the allowances reset. Every plan’s allowances reset monthly.
metersBillingMeterStanding[]This period’s use of each allowance.
{
"tier": "Free",
"cadence": "Monthly",
"status": "Active",
"currency": "...",
"balance": 0,
"lastTopUpAmount": 0,
"lowBalance": false,
"canTopUp": false,
"minimumTopUp": 0,
"maximumTopUp": 0,
"outOfCredit": false,
"stoppedMeters": [
"Standard"
],
"premiumExecution": false,
"frozenUntilUtc": "2026-10-26T12:00:00.0000000Z",
"frozenFromTier": "Free",
"scheduledChange": {
"kind": "Downgrade",
"targetTier": "Free",
"targetCadence": "Monthly",
"targetLaneAddOns": [
{}
],
"effectiveAtUtc": "2026-10-26T12:00:00.0000000Z"
},
"pendingChange": {
"targetTier": "Free",
"targetCadence": "Monthly",
"targetLaneAddOns": [
{}
],
"paymentUrl": "...",
"expiresAtUtc": "2026-10-26T12:00:00.0000000Z"
},
"hasBillingAccount": false,
"hasSubscription": false,
"termEndsAtUtc": "2026-10-26T12:00:00.0000000Z",
"periodStartUtc": "2026-10-26T12:00:00.0000000Z",
"periodEndUtc": "2026-10-26T12:00:00.0000000Z",
"meters": [
{
"meter": "Standard",
"used": 0,
"allowance": 0
}
]
}