Skip to main content

Automatically filling descriptions and payment references in transactions

Use variables to automatically provide recurring transactions with the correct descriptions.

Written by Jèsel Broekema
Updated over a week ago

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

Did this answer your question?