SeatBasedPrepaidCredits
Seats that come with credits. Each seat is charged unitPrice every period, as for SeatBasedPerUnit, and each unit of eventName uses creditCost credits. A signal's credits come first from the seat of the user it names (data.external_user_id), which a credit benefit with recipient: seat fills, then from the customer's shared credits. Credits used beyond those are billed in arrears at the end of each period, at the overage price as for UsagePrepaidCredits.
Example: 3000 (USD 30.00) a seat a month, a benefit of 50 credits per seat, and contract_reviewed at 1 credit. 2 seats cost USD 60.00 a month. A reviewer with a seat who reviews 70 contracts uses their seat's 50 credits, and the other 20 are overage.
- creditType: number
Cost min:0requiredCredits each unit of
eventNameuses. - pricing
Type const:SeatBasedPrepaidCreditsrequiredThe pricing type. It decides the charge's other fields and how it bills.
- billingType: enum
Frequency How often the charge is billed: every 1, 3, 6 or 12 months, or with
CustomeverybillingFrequencyCustomMonthsmonths. Amounts (the price, credit benefits) are per billing period: a quarterly fee is charged once a quarter.valuesMonthlyQuarterlySemi-AnnuallyAnnualCustom - billingType: integer
Frequency Custom Months min:1With
billingFrequency: Custom, the length of the billing period in months. - billingType: enum
Type When each period is billed.
Advance: at the start of the period, for the period ahead.Arrears: at the end, for the period just ended. Usage charges, and the overage of seats that come with credits, are always billed in arrears. Default:Arrearsfor usage charges,Advancefor the rest.valuesAdvanceArrears - charge
Type const:seatBasedread-onlySet by Spondo Billing from
pricingType: the kind of charge. Returned, never sent. - creditsType: string | null
Currency Id The credits currency (
cc_…) this charge spends. Left out or null: the first one this charge's own credit benefits name, else your default credits currency. - eventType: string
Name The signal event name whose units use credits. Without it (or a
meterId), the charge bills its seats only. - meterType: string
Id A meter of the charge's product (
mtr_…) to bill in place ofeventName: each signal counts its quantity on the meter. SendeventNameormeterId, not both. A charge on a meter takes nopricingInput: the meter says what each signal counts. - overageType: number | null
Unit Price min:0Price of each credit used beyond the customer's credits, in minor units (cents for USD) of the order's currency. Fractions are allowed.
- overageType: object | null
Unit Prices Properties: 1Overage price per credit by currency (ISO 4217 code to minor units). Overrides
overageUnitPricein that currency. - priceType:
Points Properties: 5One price point per currency. An order uses the one in its currency, else the first.
unitPriceis the fee per seat per period. - pricingType:
Input Properties: 1Where a charge that counts signals reads each signal's quantity. Without it, a signal counts the number in
data.quantity, else 1. There is no formula language: the quantity is one number read from the signal. It is read once, when the signal arrives, with thepricingInputof a charge on the customer's active orders that prices its event. - pricing
Model const:prepaidCreditsread-onlySet by Spondo Billing from
pricingType: how the charge is priced. Returned, never sent.
{
"pricingType": "SeatBasedPrepaidCredits",
"eventName": "contract_reviewed",
"creditCost": 1,
"billingFrequency": "Monthly",
"billingType": "Advance",
"pricePoints": [
{
"currency": "USD",
"unitPrice": 3000
}
]
}