You can use variables to automatically provide recurring transactions with the correct descriptions and payment reference. This means you no longer have to manually complete or correct transaction proposals.
Example
Suppose you always use the description 'Telephone costs [month]-[year]' for invoices from KPN, for example 'Telephone costs 08-2019'. You enter this description manually for every transaction. Zenvoices can automatically do this for you based on the invoice date.
For this you use the variable '{factuurdatummaandjaar|kort}' once instead of '[month]-[year]'. The full description then becomes:
'Telephone costs {factuurdatummaandjaar|kort}'. In future transactions the correct period will automatically be filled in the description field, meaning you no longer have to manually adjust transactions.
Insert variables
In the header and line 'Description' fields of a transaction you can use variables. You insert variables by typing a brace "{", after which the variable selection screen appears. In the selection screen you will see the available variables, including an example based on the current transaction.
You can see an example of the final value of the field when you move the mouse over the eye icon in the input field:
After saving the transaction you can also view an example of the transaction in the 'Transaction details' window:
Variables can also be used in transaction templates and the default transaction descriptions of journals.
List of variables
The following variables are available:
booking year
booking year/periode: two separate variables that are only supported when available in the transaction screen.
journalcode: code of the journal of the transaction
documentsendername: name of the sender of the imported document
documentfilename: filename of the imported document
documentsubject: subject of the imported document
invoicedate*
invoicedateday*: day of the invoice date, for example 24 for invoice date 24-8-2019
invoicedateyear*: year of the invoice date, for example 2019
invoicedatequarter*: quarter of the invoice date, for example 3rd quarter for invoice date 24-8-2019
invoicedatemonth or invoicedatemonth|short*: month of the invoice date, for example 8 for invoice date 24-8-2019
invoicedatemonth|long*: same as the variable above, but with the full month name. For example August for invoice date 24-8-2019.
invoicedatemonthyear|short*: month-year of the invoice date in the format monthnumber-year (for example 08-2019)
invoicedatemonthyear|long*: same as the variable above but in the format monthname-year (for example January-2019)
invoicedateweeknumber*: week number of the invoice date
invoicenumber
recognizedpaymentreference: the payment reference recognized or read from the document
recognizedreference: recognized reference with the highest recognition score
recognizedreferences: a comma-separated list of recognized references
recognizedordernumber: recognized order number with the highest recognition score
recognizedordernumbers: a comma-separated list of recognized order numbers
recognizedcontractnumber: recognized contract number with the highest recognition score
recognizedcontractnumbers: a comma-separated list of recognized contract numbers
recognizedsoftwareaccountname: the software account name recognized in the document
recognizedsoftwareaccountpobox: the PO box recognized in the document (beta)
recognizedsoftwareaccountpostalcode: the postal code recognized in the document (beta)
recognizedsoftwareaccountstreet: the street recognized in the document (beta)
recognizedsoftwareaccounthousenumber: the house number recognized in the document (beta)
recognizedsoftwareaccountcity: the city recognized in the document (beta)
recognizedsoftwareaccountcountry: the country recognized in the document (beta)
recognizedsoftwareaccountfulladdress: the address recognized in the document (beta)
headercostunitcode: the cost unit code of the transaction
headercostcentercode: the cost center code of the transaction
headerdescription: description of the transaction, only available for the transaction lines.
headerprojectcode: the project code of the transaction
period (if the accounting package supports this field)
linearticlecode: the article code of the transaction line
linegeneralledgeraccountcode: the general ledger account code of the transaction line
linecostunitcode: the cost unit code of the transaction line
linecostcentercode: the cost center code of the transaction line
lineemployeecode: the employee code of the transaction line
linedescription: the line description recognized via line recognition
lineprojectcode: the project code of the transaction line
lineprojectitemcode: the project item code of the transaction line
lineobligationcode: only available for lines in AFAS administrations where obligations are used
softwareaccountcode
softwareaccountname
ordernumbers: the order numbers of the transaction lines separated by a comma (for example 123, 456, 789). Only available in purchase invoices (Purchase to pay module).
lineordernumber: the order number of the transaction line. Only available in purchase invoices (Purchase to pay module).
lineordercustomerreference: the customer reference of the order of the transaction line. Only available in purchase invoices (Purchase to pay module).
For example, create a Software account assignment rule to automatically propose all sales transactions to one collective debtor. Use proposal strategy Transaction template and enter one or more of the variables above as the (header) description.
Do you use a collective creditor for various fuel stations? Then use the variable recognized software accountname to include the recognized name of the fuel station in the (header) description.
Increase/decrease
Variables marked with * support the increase/decrease option. Example: for the month before the invoice date use {invoicedatemonthyear|short-1}, for the month after the invoice date {invoicedatemonthyear|short+1}, for two months after the invoice date {invoicedatemonthyear|short+2}, etc.
Limit variable length
The maximum length of a variable can be limited in the following ways:
{variablename, n}, where n is the maximum number of characters: the first n characters of the variable value are used.
{variablename, nR}, where n is the maximum number of characters: the last n characters of the variable value are used.
Examples:
Invoice number is 12345678.
{invoicenumber, 6}: 123456
{invoicenumber, 4}: 1234
{invoicenumber, 4R}: 5648
{invoicenumber, 6R}: 345648
