1. Overview
tSpoonLab does not include a built-in POS module.
However, it can integrate sales data from external POS systems for two main purposes:
1.1 Stock Control
Based on POS sales, tSpoonLab automatically deducts the theoretical consumption of each ingredient or recipe according to its recipe structure (bill of materials).
This enables a theoretical stock, which can later be compared against physical inventory.
The difference between theoretical and actual stock — called a stock deviation — is key for improving cost control and operational efficiency.
1.2 Menu Engineering
By combining sales quantities and revenue from the POS with the recipe costs already defined in tSpoonLab, the system allows detailed performance analysis of dishes, helping identify the best performers and those needing adjustments.
2. CSV File Generation
Some POS systems export CSV files directly at the end of the shift or daily close, while others generate them from a central server.
The file format can vary, as tSpoonLab can transform and map the content during import.
However, the following recommended format covers the typical data needed.
CSV Formatting Rules
Field separator:
;(semicolon)No field delimiters: (avoid using quotes
")Text fields: must not contain semicolons (
;)Decimal separator: comma
,First line: must always contain the column headers
Column order: can vary, but headers must match the field names
Recommended Fields
Field | Description |
| Sale date (format DD/MM/YYYY) |
| Sale time (HH:MM:SS) |
| Item code (no |
| Item description (no |
| Quantity sold (use comma |
| Unit price (excluding VAT, use comma |
| Sale amount excluding VAT |
| Discount amount excluding VAT |
| VAT rate (%) |
| Parent item code (used for modifiers or add-ons) |
* If the item code does not include the format, it must be added to the code. For example, if the item 100 is “red wine” and there is a format code 4 for glass and 5 for bottle, the generated codes should be 100.4 and 100.5.
Example CSV File
Example: a sale containing one beef steak with fries and one burger with extra cheese.
fecha;hora;codigo_articulo;descr_articulo;cantidad;precio;importe_siniva;descuento_siniva;iva;codigo_articulo_padre 03/07/2020;14:30:00;FT001;FILETE DE TERNERA;1;19,90;19,90;0;10; 03/07/2020;14:30:00;PAT001;ACOMPAÑAMIENTO PATATAS;1;0;0;0;10;FT001 03/07/2020;15:00:00;HA001;HAMBURGUESA;1;19,90;18,00;1,90;10; 03/07/2020;15:00:00;EQ001;EXTRA QUESO;1;0;0;0;10;HA001
In this example, the burger has a discount of €1.90, and the “EXTRA QUESO” item references its parent product (HA001).
3. File Naming
Each file must have a unique name, ideally including the date and time of export.
Duplicate uploads of the same sales file must be avoided to prevent duplicated records.
4. Sending the CSV File to tSpoonLab
The CSV file should be uploaded via SFTP to tSpoonLab’s integration server.
To obtain integration credentials, please contact the tSpoonLab support team.
5. Additional Information
If you’d like to understand how POS products are mapped to tSpoonLab items, please refer to the online mapping documentation available in the integrations section.