UsagePerUnit
A price per unit of usage. Each signal named eventName counts its quantity (see pricingInput), and the period's total is billed at unitPrice per unit.
Example: 5 (USD 0.05) per page, with pricingInput.path pages. 400 document_uploaded signals of 12 pages each are 4,800 pages: USD 240.00 for the month. With includedQuantity 1000 the first 1,000 pages are free, so it's USD 190.00.
- pricing
Type const:UsagePerUnitrequiredThe 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:usageread-onlySet by Spondo Billing from
pricingType: the kind of charge. Returned, never sent. - eventType: string
Name The signal event name this charge counts. Every signal sent with this
eventNameadds to the charge. Required unless the charge names ameterId. - 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. - priceType:
Points Properties: 5One price point per currency. An order uses the one in its currency, else the first.
unitPriceis the price per unit. - 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:perUnitread-onlySet by Spondo Billing from
pricingType: how the charge is priced. Returned, never sent. - signalType: enum
Type What a usage charge bills for:
activity(work done) oroutcome(a result delivered, such as a resolved ticket). Both bill the same way; it labels the charge.valuesactivityoutcome
{
"pricingType": "UsagePerUnit",
"eventName": "document_uploaded",
"pricingInput": {
"path": "pages"
},
"billingFrequency": "Monthly",
"billingType": "Arrears",
"pricePoints": [
{
"currency": "USD",
"unitPrice": 5,
"includedQuantity": 1000
}
]
}