With Revo XEF, you can import CSV files separated by ";". The first row must contain the header with the field names exactly as described below.

BEFORE YOU START: THERE ARE TWO IMPORTERS

NEW IMPORTER

Used for Groups and Categories. Access it from Catalogue → Groups. To import groups, click Import. To import categories, first open the group you want to add them to, then click Import. The system lets you map columns, so the CSV headers do not need exact names.

CSV IMPORTER

Used for all other imports. Access it from revoxef.works/tools/import. In this importer, headers must match those listed in each section exactly. Price rates uses its own URL.

CATALOGUE

1. IMPORT GROUPS
NEW IMPORTER

To create or update groups in bulk, go to Catalogue → Groups and click Import. The new group importer will open.

THE NEW IMPORTER

With the new importer, your CSV columns do not need specific names. When you upload the file, the system lets you Map fields, linking each column in your file to the corresponding REVO field.

Fields available for mapping:

FIELDREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
NameRequiredThe group's main name.Free text.
TranslationsCriticalTranslations for multiple languages.Essential: Map this field to the name column. Otherwise, it will be created with the generic name "New Item".
IdOptionalGroup identifier in the system.Fill in only for updates.
ActiveOptionalDefines whether the group is active.0 (Inactive), 1 (Active).
TaxOptionalTax associated with the group.Enter the tax's internal numeric ID.
Analytical groupOptionalThe corresponding analytical group.Enter the numeric ID.
PrinterOptionalThe assigned order printer.Enter the numeric ID.
Printer groupOptionalThe assigned printer group.Enter the numeric ID.
Status flowOptionalThe kitchen status flow (KDS).Enter the numeric ID.
Extra IDOptionalAdditional field for integration identifiers.Free alphanumeric text.
CSV example - Import groups
NombreTraduccionIDActivoImpuestoGrupo_AnaliticoImpresoraGrp_ImpresorasFlujo_EstadosExtra_ID
BebidasBebidas113201EXT-001
ComidaComida124421EXT-002
PostresPostres15125402EXT-003
2. IMPORT CATEGORIES
NEW IMPORTER

To import categories in bulk, go to Catalogue → Groups, open the group you want to add the categories to, then click Import. The new category importer will open.

THE NEW IMPORTER

It works just like the group importer: upload any CSV and map the columns manually.

Fields available for mapping:

FIELDREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
GroupRequiredThe group the category belongs to.Enter the numeric ID or exact name of the parent group.
NameRequiredThe category name.Free text.
TranslationsCriticalTranslations for multiple languages.Essential: Map this field to the name column. Otherwise, it will be created with the generic name "New Item".
IdOptionalInternal category identifier.Fill in only for updates.
ActiveOptionalDefines whether the category is active.0 (Inactive), 1 (Active).
TaxOptionalTax associated with the category.Enter the numeric ID.
Analytical groupOptionalThe corresponding analytical group.Enter the numeric ID.
PrinterOptionalThe assigned order printer.Enter the numeric ID.
Printer groupOptionalThe assigned printer group.Enter the numeric ID.
Status flowOptionalThe kitchen status flow.Enter the numeric ID.
Extra IDOptionalAdditional field for external integrations.Free alphanumeric text.
CSV example - Import categories
NombreGrupoTraduccionIDActivoImpuestoGrupo_AnaliticoImpresoraGrp_ImpresorasFlujo_EstadosExtra_ID
RefrescosBebidasRefrescos116201EXT-010
CervezasBebidasCervezas116301EXT-011
TapasComidaTapas32127522EXT-012
3. IMPORT PRODUCTS (PRODUCTS)
CSV IMPORTER

Import products and configure them using a CSV file.

With Revo XEF, you can import CSV files separated by ";". The first row must contain the header with the field names exactly as described below.

IMPORTANT: The field names in the header must be exactly the same as those shown here. No initial capital letters, spaces or ":" symbols.
Correct: category_id
Incorrect: Category_id / CATEGORY_ID / category id
EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
category_idRequiredCategory ID. Before importing, create the structure manually to obtain this ID.Enter the numeric ID.
nameRequiredProduct name.Free text (at least 3 characters).
super_group_idOptionalID of the analytical group assigned to the product.Enter the numeric ID.
priceOptionalRetail price.Use a decimal point.Example: 10.20
costPriceOptionalInternal cost price.Use a decimal point.Example: 8.20
typeOptionalDefines the product's operational type.0: Product, 1: Menu, 2: Container, 3: Admission, 4: Format, 5: Gift card, 6: Management only, 7: Kit.
activeOptionalVisibility status on the POS.0 (Inactive), 1 (Active).If omitted, all are enabled.
hasInventoryOptionalUnit and stock tracking.0 (Not tracked), 1 (Tracked).
displayInventoryOptionalDisplays the remaining units in the app.0 (Hidden), 1 (Show stock).
usesWeightOptionalLinks to a weighing scale.0 (Does not use weight), 1 (Uses weight).
allergiesOptionalAllergens associated with the product.Enter numeric IDs separated by semicolons (e.g. 1;5;14).

ALLERGEN IDs:
1: Eggs
2: Sesame
3: Lupin
4: Mustard
5: Fish
6: Celery
7: Crustaceans
8: Peanuts
9: Molluscs
10: Soy
11: Nuts
12: Sulphites
13: Dairy
14: Gluten
isMenuOptionalDefines whether it acts as a menu grouping.0 (Not a menu), 1 (Menu-type product).
shouldAppearInMenuListOptionalWhether it can be selected within other menus.0 (Disabled), 1 (Enabled).
isOpenOptionalRequires a price to be entered manually when selling.0 (Fixed price), 1 (Open product).
orderOptionalDisplay order within the category.Use numbers: 1, 2, 3, etc.
barcodeOptionalProduct barcode.Numeric value or EAN.
tax_idOptionalDefault product tax.Numeric ID.
printer_idOptionalDefault printer assigned directly to the product.Numeric ID.
printer_group_idOptionalDefault printer group assigned directly.Numeric ID.
modifier_group_idOptionalProduct-specific modifier group.Numeric ID.
modifier_category_idOptionalModifier category assigned to the product.Numeric ID.
photoOptionalProduct image.Filename and extension.
infoOptionalExtended product description.Free text.
buttonNameOptionalShort alternative name.Displayed on the app's buttons.
nameKitchenOptionalAlternative name for preparation tickets.Free text.
dish_order_idOptionalDish serving order.Numeric ID.
unit_idOptionalSales unit ID.Numeric ID.
extra_idOptionalExternal or Nielsen code, if applicable.Alphanumeric text.
useAverageCostPriceOptionalAverage cost calculation.0 (Inactive), 1 (Enabled).
cookDurationOptionalEstimated preparation time.Value in seconds (for KDS).
minQuantityOptionalMinimum quantity when adding a product.Numeric value.
extra_attributesOptionalSpecial attributes.Numeric ID.
IMPORTANT: Configuring printers or modifiers directly on products can cause future problems. If configured per product, you will need to change or remove them one by one. If configured at category or group level, you can change them in just a few clicks.
CSV example - Import products
category_idsuper_group_idnamepricecostPricetypeactivehasInventorydisplayInventoryusesWeightallergiesisMenushouldAppearInMenuListisOpenorderbarcodetax_idprinter_idprinter_group_idmodifier_group_idmodifier_category_idphotoinfobuttonNamenameKitchendish_order_idunit_idextra_iduseAverageCostPricecookDurationminQuantityextra_attributes
103Café Solo1.300.200110000018412345612145cafe.jpgArábicaCafé SCAFE SOLO02EX-001012010
15Coca Cola1.800.50011000002841234571cola.jpgRefrescoCoca CCOCA COLA02EX-0021010
25Menú Diario12.504.00110001;5;1411032menu.jpgCompletoMenu DiaMENU DIARIO01EX-0030010
4. UPDATE PRODUCTS (PRODUCTS UPDATE)
CSV IMPORTER

Update or add information to existing products using a CSV file.

As the ID is required, we recommend starting with a previously exported REVO product list.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
idRequiredUnique product identifier in the database.Internal REVO numeric ID.
super_group_idOptionalID of the analytical group assigned to the product.Enter the numeric ID.
CSV example - Update products
idcategory_idsuper_group_idnamepricecostPricetypeactivehasInventorydisplayInventoryusesWeightallergiesisMenushouldAppearInMenuListisOpenorderbarcodetax_idprinter_idprinter_group_idmodifier_group_idmodifier_category_idphotoinfobuttonNamenameKitchendish_order_idunit_idextra_iduseAverageCostPricecookDurationminQuantityextra_attributes
100103Café Solo Intenso1.400.22011001400018412345612145cafe_new.jpgNuevoIntensoCAFE INTENSO02EX-001012010
10115Coca Cola Zero1.900.55011000002841234571colaz.jpgZeroCoca ZCOCA ZERO02EX-0021010
5. CONTAINERS (CONTAINERS)
CSV IMPORTER

Containers are folders in which you can group products. They form a "fourth level" after Groups, Categories and Products.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
category_idRequiredID of the category where the folder will be located.Numeric ID.
nameRequiredDisplay name of the container or folder.Free text.
photoOptionalCover image filename.Image filename.
CSV example - Containers
category_idnamephoto
10CAFÉScarpeta_cafes.jpg
15AGUAScarpeta_aguas.jpg
17VINOS TINTOScarpeta_vinos.jpg
6. CONTAINER ITEMS (CONTAINER ITEMS)
CSV IMPORTER

Link products to an existing container.

You can find the IDs by hovering over the pencil icon in the back-office.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
main_item_idRequiredID of the parent container (folder).Numeric ID.
item_idRequiredID of the products you want to add inside.Numeric ID.
orderOptionalDisplay order within the container.Numeric value.
dish_order_idOptionalDefault dish order applied to this folder.Numeric ID.
activeOptionalProduct status within the folder view.0 (Inactive), 1 (Active).
CSV example - Container items
main_item_iditem_idorderdish_order_idactive
15140101
15141201
15142301
7. SELLING FORMATS (ITEM SELLING FORMATS)
CSV IMPORTER

Import products with selling formats (mixed drink, neat, shot, etc.).

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
item_idRequiredBase product ID.Numeric ID.
format_idRequiredID of the configured selling format.Numeric ID.
priceRequiredSelling price for this format.Use a decimal point.
quantityRequiredExact quantity to deduct from the overall stock.Use decimals according to the unit.
unit_idRequiredID of the stock measurement unit.Numeric ID.
orderRequiredDisplay order in the drop-down list.Numeric value.
combination_group_idRequiredID of the enforced combination group (if applicable).Enter 0 if not applicable.
CSV example - Selling formats
item_idformat_idpricequantityunit_idordercombination_group_id
196312.001.00712
196411.001.00720
19653.000.20730

INVENTORY

8. ADD INVENTORY (INVENTORY ADD)
CSV IMPORTER

Add stock to your products, especially useful for the first stock entry.

If you have multiple warehouses, repeat the product ID with different values of warehouse_id.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
item_idRequiredID of the products to restock.Numeric ID.
quantityRequiredQuantity you want to ADD to the stock.Positive numeric value.
warehouse_idRequiredID of the warehouse receiving the stock.Numeric ID.
CSV example - Add inventory
item_idquantitywarehouse_id
1001501
1021501
1005002
9. SET INVENTORY (INVENTORY SET)
CSV IMPORTER

Set the exact stock level of your products. Ideal after a stock count.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
item_idRequiredProduct IDs.Numeric ID.
quantityRequiredExact physical quantity to set.Numeric value that overwrites the previous one.
warehouse_idRequiredWarehouse ID.Numeric ID.
defaultQuantityOptionalReference or ideal stock quantity.Numeric value.
alertOptionalMinimum stock level that triggers an order alert.Numeric value.
CSV example - Set inventory
item_idquantitywarehouse_iddefaultQuantityalert
100100120010
110232140020
10. MOVE INVENTORY (INVENTORY MOVE)
CSV IMPORTER

Transfer stock between warehouses.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
item_idRequiredID of the products to transfer.Numeric ID.
quantityRequiredExact quantity to move.Numeric value.
warehouse_idRequiredSource warehouse ID.Warehouse from which stock is deducted (numeric ID).
to_warehouse_idRequiredDestination warehouse ID.Warehouse to which stock is added (numeric ID).
CSV example - Move inventory
item_idquantitywarehouse_idto_warehouse_id
10010012
10210012

VENDORS

11. IMPORT VENDORS (VENDORS)
CSV IMPORTER

Import vendors in bulk to use the purchasing module.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
nameRequiredVendor name.Free text (at least 3 characters).
addressRequiredMain billing or delivery address.Free text.
nifRequiredNIF or tax identifier.CIF, DNI, etc.
cityOptionalCity or town.Free text.
stateOptionalProvince or state.Free text.
countryOptionalCountry where the vendor is based.Free text.
postalCodeOptionalPostal code.Alphanumeric.
webOptionalCorporate website.URL format.
emailOptionalEmail address for orders.Valid email address.
phoneOptionalContact phone number.Numeric.
notesOptionalInternal notes and remarks.Free text.
shouldBeNotifiedOptionalNotify the vendor of status changes.1 (Notify), 0 (Do not notify).
CSV example - Import vendors
nameaddressnifcitystatecountrypostalCodewebemailphonenotesshouldBeNotified
Proveedor 1Gran Via, 30A58818501MadridMadridEspaña28010www.prov1.espedidos@prov1.es+34 912345678Alimentación1
Proveedor 2Via Laietana, 222B54416504BarcelonaBarcelonaEspaña08010www.prov2.cominfo@prov2.es+34 931234567Refrescos0
12. VENDOR ITEMS (VENDORS ITEMS)
CSV IMPORTER

Link products to your vendors to use the purchasing module.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
vendor_idRequiredID of the vendor created in the system.Numeric ID.
item_idRequiredID of the REVO product supplied by the vendor.Numeric ID.
referenceOptionalProduct reference code in the vendor's catalogue.Alphanumeric.
packOptionalUnits in each purchase pack or box.Numeric value.
costPriceOptionalAgreed cost price.Use a decimal point.
unit_idOptionalID of the purchasing measurement unit.Numeric ID.
tax_idOptionalID of the input tax on purchases.Numeric ID.
CSV example - Vendor items
vendor_iditem_idreferencepackcostPriceunit_idtax_id
1100REF-01240.2512
1102REF-02240.3012

CUSTOMERS AND GIFT CARDS

13. IMPORT CUSTOMERS (CUSTOMERS)
CSV IMPORTER

Import customers in bulk.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
nameRequiredCustomer name or company name.Free text (at least 3 characters).
address_countryConditionalCountry.Required if a NIF or any other address field is entered. ISO 3166-1 alpha-2 code (example: ES).
address_street_addressConditionalStreet address.Required if a NIF is entered.
address_postal_codeConditionalPostal code.Required if a NIF is entered.
address_cityConditionalCity or town.Required if a NIF is entered.
address_stateConditionalProvince or state.Required if a NIF is entered.
nifOptionalNIF or tax identifier.If entered, the address becomes mandatory.
activeOptionalCustomer status.0 (Inactive), 1 (Active).
emailOptionalEmail address.Valid email format.
phoneOptionalContact phone number.Must include the international dialling code to be valid (e.g. +34644847774 valid, 644847774 invalid).
languageOptionalPreferred language for communications.ISO code (es, en, fr...).
nationalityOptionalNationality.Free text.
birth_dateOptionalCustomer's date of birth.Strict format: YYYY-MM-DD.
genderOptionalGender.Male, Female or Other.
allergiesOptionalCustomer's allergies.IDs separated by semicolons (e.g. 1;5;14).
webOptionalCompany website.URL.
notesOptionalCustomer notes or preferences.Free text.
extra_idOptionalAssignment to a customer group.Numeric ID.
address_notesOptionalHome delivery notes.Free text.
CSV example - Import customers
nameaddress_countryaddress_street_addressaddress_postal_codeaddress_cityaddress_statenifactiveemailphonelanguagenationalitybirth_dategenderallergieswebnotesextra_idaddress_notes
Hugo ReyesESGran Via, 3028010MadridMadridA588185011hugo@mail.com+34600123456esEspañola1980-05-15Male14www.hugo.esPlato especial1Dejar en recepcion
Maggie GreeneESCalle de La Paz, 1146003ValenciaValenciaV512186671maggie@mail.com+34600654321enBritánica1992-10-22FemaleMesa con vistas2Llamar al timbre
14. GIFT CARDS (GIFT CARDS)
CSV IMPORTER

Import gift cards in bulk into the back-office.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
uuidRequiredUnique card identification code.Can contain text and numbers.
totalRequiredInitial balance generated.Must be numeric.
activeOptionalDefines whether the card is already active.0 (Inactive), 1 (Active).
balanceOptionalActual remaining balance.Fill in only if different from the total.
campaign_idOptionalAssociated promotional campaign.Numeric campaign ID.
customer_idOptionalCustomer assigned to the card by name.Numeric customer ID.
CSV example - Gift cards
uuidtotalactivebalancecampaign_idcustomer_id
00000123456100.001100.001
TR123456750.00125.001
Pedro Gonzalez75.00175.002405
15. RELOAD GIFT CARDS (GIFT CARDS RELOAD)
CSV IMPORTER

Import gift card top-ups.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
uuidRequiredExact code of the existing gift card.Alphanumeric.
reloadAmountRequiredAmount to add to the current balance.Numeric, using a decimal point.
CSV example - Reload cards
uuidreloadAmount
00000123456100.00
00000789100100.00

PRICE RATES AND EMPLOYEES

16. PRICE RATES (PRICE RATES)
CSV IMPORTER

To import price rates, go to: https://revoxef.works/thrust/prices/import

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
IDRequiredBase product identifier.Numeric ID.
priceable_idRequiredIdentifier of the price within the referenced product.Numeric ID.
table_price_idRequiredIdentifier of the price rate to which the price applies.Numeric ID.
priceRequiredAmount you want to set for the specified price rate.Price with a decimal point.
priceable_typeRequiredBase element type.Use the exact value from the table below.

Values for priceable_type:

TYPEVALUE TO ENTER IN THE COLUMN
ProductsApp\Models\Menu\MenuItem
Menu itemsApp\Models\Menu\MenuMenuPivot
ModifiersApp\Models\Menu\Modifier
Selling formatApp\Models\Menu\ItemSellingFormatPivot
CombinationsApp\Models\Menu\Combination
CSV example - Price rates
IDpriceable_idtable_price_idpricepriceable_type
10090224.00App\Models\Menu\MenuItem
10187023.00App\Models\Menu\MenuMenuPivot
10233121.50App\Models\Menu\Modifier
17. EMPLOYEES (EMPLOYEES)
CSV IMPORTER

Import employees in bulk.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
nameRequiredEmployee name.Free text.
pinRequiredAccess PIN for the iPad POS.Numeric value.
permission_idRequiredApp security privilege.Numeric ID.
activeOptionalEmployee status in the workforce.0 (Inactive), 1 (Active).
surnameOptionalSurname.Free text.
usernameOptionalUsername for accessing the web back-office.Short text without spaces.
passwordOptionalBack-office password.Alphanumeric.
emailOptionalEmail address.Valid email address.
phoneOptionalContact phone number.Numeric.
notesOptionalInternal notes.Free text.
profile_idOptionalDefault employee profile.Numeric ID.
photoOptionalVisual avatar.Filename and extension.
cashier_idOptionalAssigned default cash register.Numeric ID.
identifierOptionalPOS security key identifier.Hexadecimal value (NFC, QR...).
back_permission_idOptionalBack-office privilege level.Numeric ID.
nifOptionalEmployee's national identity number (DNI).Alphanumeric.
CSV example - Employees
namepinpermission_idactivesurnameusernamepasswordemailphonenotesprofile_idphotocashier_ididentifierback_permission_idnif
Fran111111MarjolaineFranpass123fran@mail.com600111222Encargado2fran.jpg01A2B3C212345678A
Lucía222221KaileyLuciapass456lucia@mail.com600333444Camarera1lucia.jpg04D5E6F187654321B
18. UPDATE EMPLOYEES (UPDATE EMPLOYEES)
CSV IMPORTER

Update existing employee information. Start with the employee list exported as CSV.

EXACT HEADERREQUIREMENTDESCRIPTIONADDITIONAL INFORMATION
idRequiredUnique internal employee identifier.Numeric ID generated by REVO.
CSV example - Update employees
idnamepinpermission_idactivesurnameusernamepasswordemailphonenotesprofile_idphotocashier_ididentifierback_permission_idnif
2Maria112211GarciamariamarIa24!maria@mail.com6009998882maria.jpg07G8H9I111111111C
3Pedro334420LopezpedropEdro24!pedro@mail.com600777666Baja1pedro.jpg00J1K2L322222222D