Configure your CSV template

The cost reports generated by Spinpanel, in collaboration with your Microsoft invoice, can be exported in CSV format. In this article we explain how you can tailor the CSV template.

Please note that before you can export the billing lines for a specific month, you need to configure the column layout and structure of your CSV export file.


To access the CSV template configuration, select My organization > Solution settings > CSV settings and on the CSV settings page select Configure your CSV template. This opens the CSV configuration page this page you can:

KB CSV Configuration

Regional settings

The default values that are used for the decimal separator and column delimiter characters in a CSV files differ per region and may even be configured differently for your organization. In Spinpanel you can configure the characters that apply to your situation. To do so, click the Edit-button in the CSV details configuration section and enter the appropriate values. For decimal separator you can choose between dot ( . ) and comma ( , ). You can use any character to serve as delimiter for the CSV output file.

The most commonly used delimiter characters for CSV files are comma (,) and semi-column ( ; ).

Create or Configure CSV file

If there is no CSV file configuration yet, you can either create a default configuration that you can modify to meet your requirements or you can create a new configuration from scratch.

To create a default configuration, click the Add CSV file configuration-button on top of the page. To start from scratch, open the empty configuration by clicking the CSV file configuration-button and after that click the Add-button to start adding columns. 

Every column has four properties that can be configured:

  • CSV Column name
  • CSV Column order
  • CSV Line type
  • Mapped SpinPanel Key

CSV Column name

The CSV Column name property allows you to configure the name the column will have in the CSV export file. Column names are displayed in the the top row of the export file.

CSV Line type

After the top line containing the column names, the lines with the actual billing data follow. These lines can be invoice header lines or detail lines. Your export file will only have header lines if at least one column is configured to appear on header lines. Header lines will only appear in the export file once for every new customer (new invoice). There will be a detail line in the export file for every billing line.  

The value you choose for CSV Lines type determines on what type of line the column will appear. You can choose one of the following options:

  • Header: values for the column's mapped Spinpanel key will appear on header lines only.
  • Detail: values for the column's mapped Spinpanel key will appear on detail lines only.
  • Both: values for the column's mapped Spinpanel key will appear on header lines as well as on detail lines. 

CSV Column order

You can enter a numeric value to determine the position the column will have in the CSV export file. The column having the lowest CSV Column order value will be the leftmost column, the column having the highest value will be the rightmost column. 

To make it easier to move a column to a different position, it is useful to work with increments of, for example, ten.

Mapped SpinPanel Key

You can configure the value that will appear in the column by selecting a SpinPanel Key from the drop-down list. Below you will find an overview of all possible SpinPanel Keys and what they represent:

  • None: the column will hold no value in the export file without a value.
  • BillingLineType: will indicate the line type. On header lines the the value will be 0, on detail lines it will be 1. It will typically only be useful if your export file has both header and detail lines.
  • BillingMonth: the column will display the month of the billing session that is being exported.
  • BillingYear: the column will display the year of the billing session that is being exported.
  • ChargePeriodEndDate: the column will hold the end date of the charge period for the relevant billing line from your Microsoft invoice. ¹
  • ChargePeriodStartDate: the column will hold the start date of the charge period for the relevant billing line from your Microsoft invoice. ¹
  • Description: a column mapped to this key will display the Invoice service name of the service the resource on the billing line belongs to (Solutions > CSV > Services).¹ 
  • ExportDate: a column mapped to this key will always display the current date, i.e. the date on which the CSV file is created.
  • ExternalCustomerName: when mapped to this key, the column will hold the CSV customer name value that is configured for for the relevant customer. 
  • ExternalCustomerNumber: when mapped to this key, the column will hold the CSV customer No value that has been configured for the relevant customer.
  • ExternalItemNumber: when mapped to this key, the column will contain the CSV resource No value that is configured for the concerning product. ¹
  • HeaderLineText: if you have entered a headline text in the CSV configuration you can map a column to this key to display it.
  • ImportDate: the column will contain the date on which the billing lines for the relevant billing session where imported into CSV billing connector. 
  • InvoiceNo: the value for the column that is mapped to this key will change with every new customer in the export lines. The following format: “F{0}{1}.{2}” will be used to determine the value. Where {0} will be replaced by the year of the relevant billing session, {1} will be replaced by the month of the billing session and {2} will be replaced by an ascending sequence number.
  • InvoiceServiceName: when mapped to this key, the column will contain the Invoice service name value that is configure for the service the corresponding product belongs to . ¹
  • OrganisationDomainName: this key is currently not in use, the column will remain empty.
  • Amount: the value for amount will be Quantity * UnitPrice. ¹
  • Quantity:
    • For Office resources the value for quantity will be the usage from your Microsoft invoice for the specific billing period, except when overridden Quantity is set on the corresponding contract then that value will be used.
    • For Azure resources the value will always be 1. ¹
  • StockKeepingUnit: the column will contain the Microsoft SKU for the relevant resource. ¹
  • UnitPrice:
    • For Office resources, if no markup is set on the relevant contract line then the value for this column will be the relevant ERP price from your MS invoice. If a positive markup value is set then then the following formula is used to calculate the value for the column: 100 / (100 – markup value) * ERP Price. If a negative markup value is set then this formula will be used to calculate the value for the column: (100 + markup value) / 100 * ERP Price.
    • For Azure resources, the total amount for that resource will be used to calculate the UnitPrice using the following formula: 100 / (100 - markup value) * Total amount. ¹
  • PaymentCondition: the column will contain the value set for Payment condition in the settings for the relevant customer (Solutions > CSV > Customers).
  • Currency: the currency from the relevant MS invoice.
  • ProviderCustomerName: the value for the column will be the relevant customer's name in SpinPanel.
  • ProviderInvoiceReference: the value for the column will be the Invoice ID from the relevant Microsoft invoice.
  • ProviderResourceName: the value for the column will be the name of the relevant resource in SpinPanel. ¹

¹ you should not configure a column mapped to this key to be displayed on header lines.

Download CSV preview file

If you want to try out what your CSV export file will look like you can click the Download CSV preview-button. The information in the preview file is based on predefined values.