Set up a recurring billing.

A recurring billing indicates that customer should get a monthly (yearly) invoice for the indicated services, at the indicated price.

After the billing has been set up, recurring invoices need to be manually created and sent from back office Sales → Recurring billing, at the beginning or at the end of a month, as appropriate.

Alternatively, invoices can also be created over API with the saveSalesDocument call, and associated with the billing via the "billingStatementID" field.

Input parameters

Parameter name Description Possible value Required
billingStatementID ID of billing statement. If this parameter is present, then the specified statement is updated. Integer
customerID Customer ID.(Not required if updating an existing statement.) Integer yes
customerAddressID Customer address ID. Integer
payerID Payer ID. Integer
payerAddressID Payer address ID. Integer
employeeID ID of the employee, who is set as the creator of the billing statement. Integer
startDate Start date. ISO date (yyyy-mm-dd)
endDate End date. ISO date (yyyy-mm-dd)
serviceID ID of the service. Integer
productID ID of the product. Integer
customerSpecialPrice Customer special price. Decimal
paymentDays Payment period. Integer
vatrateID ID of VAT (tax) rate. To get the list of rates, use getVatRates.(Not required if updating an existing statement.) Integer yes
currencyCode Currency code: EUR, USD. Currency must be present in the system.
If omitted, default currency will be used.
billingStatementPeriod Period of billing statement. Possible values: "MONTH", "QUARTER", "HALFYEAR", "YEAR", "3MONTHS", "4MONTHS".(Not required if updating an existing statement.) String yes
billingStatementTime Time of billing statement. Possible values: "WHEN_PERIOD_STARTS", "WHEN_PERIOD_ENDS", ""BASED_ON_METERED_READINGS".(Not required if updating an existing statement.) String yes
active 0 or 1, by default 1. Integer
sendByEmail 0 or 1. Integer
makeSeparateInvoice 0 or 1. Integer
serviceNameOnInvoices Service name as displayed on invoices. String
notes Notes. String
additionalInvoiceNotes Additional text printed on invoices. String
***** Additional attributes associated with this item.
Attributes must be supplied as a flat list, each attribute defined by the following set of three parameters. Replace # with set number (1, 2, 3, ...). When updating an existing entry, API will only update the attributes specified in input data and leave all other existing attributes unchanged. To delete an attribute, set its value to 'null' or 'undefined'.
attributeName# Attribute name. Name can only contain the following symbols: A-Z, a-z, 0-9, dash and underscore. String
attributeType# Attribute type, possible types are 'text', 'int' and 'double'. By default 'text'. String
attributeValue# Value of the attribute. Set value to 'null' or 'undefined' to delete an attribute.
'text' attribute can be any string, maximum 255 characters.
'int' must be a signed 32-bit integer.
'double' must be a decimal number.


Field name Type Description
billingStatementID Integer ID of the created/updated item.