KSeFGPT
Get started for free
Guide
20 May 202613 minRafał Zeidler

How to send many invoices to KSeF from Excel

A practical guide: how to prepare an XLSX sheet, map columns to FA(3) fields, check errors and send valid invoices to KSeF in KSeFGPT.

How to send many invoices to KSeF from Excel

Article Summary

Invoices are not sent to KSeF as Excel files. An XLSX, XLS or CSV sheet can, however, be a practical data source from which a tool such as KSeFGPT creates invoices compatible with the FA(3) structure, validates them and lets the user send only correct documents to KSeF.

The key is to prepare the sheet so that each column has one meaning: invoice number, issue date, seller NIP, buyer NIP, currency, amounts, VAT rate and line items. The fewer mixed formats in Excel, the fewer validation errors before submission.

KSeFGPT supports bulk data import from XLSX, XLS and CSV files. After import, the user checks column mapping, reviews invoice drafts, fixes incorrect rows and sends only documents that are ready. This is safer than manually retyping many invoices into a form.

Can invoices be sent to KSeF from Excel?

Yes, with one important clarification: KSeF does not accept an Excel file as an invoice. KSeF works with structured invoices, which means data compliant with the FA(3) logical structure. Excel is a working format that must be transformed into valid invoice data before submission.

In practice, a company prepares a spreadsheet with invoices, the import tool reads the columns, maps them to invoice fields, checks the data and only then sends the documents through a KSeF integration. That is why we speak about sending from Excel, although technically this means importing data from Excel and sending invoices created from that data.

The Polish Ministry of Finance describes KSeF work through the Taxpayer Application or tools integrated with the KSeF API. Official technical materials and manuals are available on the KSeF 2.0 downloads page.

This distinction also matters for taxpayer responsibility. If the spreadsheet contains an incorrect NIP, a wrong date or an amount with a comma treated as text, the problem does not disappear after import. It should be detected before sending, ideally in the validation report.

FormatRole in the processDoes it go directly to KSeF?
Excel/XLSXInvoice data source, convenient for sales or accounting teamsNo
CSVAlternative spreadsheet format for bulk importNo
XML FA(3)Invoice structure required by KSeFYes
PDFVisualization or source document, not a structured invoiceNo

Who bulk submission from Excel is for

Bulk submission from Excel makes sense wherever invoices are created in batches, but the company does not yet have a full ERP integration with KSeF. A typical example is a sales team that prepares a monthly sheet with subscriptions, recurring fees or settlements for many customers.

Another common scenario is an accounting office. Clients provide data in different formats: exports from sales software, simple XLSX files or manually completed spreadsheets. The office needs one process that checks data, finds errors and sends valid invoices without retyping each line item.

Excel is enough when the source data is structured, the invoice volume is moderate and imports happen cyclically with a similar column layout. For very high volumes, many source systems and automated status handling, an API integration or ERP module will be better.

SituationDoes Excel make sense?Better direction
Dozens or hundreds of invoices in a similar layoutYesXLSX import in KSeFGPT
Subscription or recurring invoicesYesSheet template and saved mapping
Accounting office with client filesYes, if formats are controlledSeparate sheet or batch for each client
Thousands of invoices daily from many systemsPartlyERP, API or source-data automation

How to prepare an XLSX file for import

The safest spreadsheet is one where the first row contains column names and each following row describes one invoice line item. If an invoice has several items, invoice header data is repeated across rows, while only item fields change.

The minimum data set includes invoice number, issue date, sale date, seller data, buyer data, currency, item description, quantity, unit, net unit price, VAT rate and amounts. For transfer payments, it is worth adding payment due date, bank account and payment method.

Write dates in YYYY-MM-DD format, for example 2026-05-20. Store NIP as text with 10 digits, without spaces, hyphens or the PL prefix. Keep amounts as numbers with two decimal places. Use a three-letter currency code, for example PLN or EUR.

Excel columnWhat to enterFA(3) mappingTypical error
invoice_numberInvoice number, e.g. FV/05/2026/014Fa > P_2Trailing space or duplicate
issue_dateIssue date, e.g. 2026-05-20Fa > P_120.05.2026 format or mixed text date
sale_dateSale date, if neededFa > P_6Different dates for items of the same invoice
seller_nameFull seller namePodmiot1 > DaneIdentyfikacyjne > NazwaAbbreviation that does not match company data
seller_nipSeller NIP, 10 digitsPodmiot1 > DaneIdentyfikacyjne > NIPNIP stored as a number with a lost leading zero
buyer_nameFull buyer namePodmiot2 > DaneIdentyfikacyjne > NazwaEmpty name for a B2B invoice
buyer_nipBuyer NIP, 10 digitsPodmiot2 > DaneIdentyfikacyjne > NIPPL prefix or hyphens
currencyCurrency code, e.g. PLNFa > KodWalutyFull currency name instead of code
item_nameProduct or service nameFaWiersz > P_7Too generic or empty item
quantityQuantityFaWiersz > P_8BText instead of a number
unitUnit, e.g. pcs or serviceFaWiersz > P_8AInconsistent unit values
unit_net_priceNet unit priceFaWiersz > P_9AAmount and currency in one cell
net_amountNet value of item or invoiceFaWiersz > P_11Total differs from quantity times price
vat_rateVAT rateFaWiersz > P_12Mixing 23%, 23 and VAT23
gross_amountGross amount of invoice or itemFa > P_15Rounding difference vs net and VAT
payment_due_datePayment due dateFa > Platnosc > TerminPlatnosciDue date earlier than issue date
seller_bank_accountSeller bank account numberFa > Platnosc > RachunekBankowySpaces or too long account number
correction_reasonCorrection reason, if applicableFa > KorektaCorrection without identifying the corrected document

Multiple line items on one invoice in Excel

Most spreadsheet errors appear with multi-line invoices. If one invoice has three services, the clearest layout is three rows with the same invoice number, seller and buyer, but different item name, quantity, price and VAT rate.

In this model, the import tool should be able to build one invoice draft from several rows. The condition is simple: header data must be identical. If one row has a trailing space in the invoice number, another does not, and the third has a differently formatted sale date, check the result in the draft preview before sending.

Before import, sort the sheet by invoice number and buyer NIP. This quickly shows whether items of the same invoice stay together and whether header data is inconsistent. For larger files, a helper key also works well: seller NIP + invoice number + issue date.

Sheet modelWhen to use itRisk
One row = one invoiceSimple one-item invoicesHarder to add multiple items
One row = one itemMulti-line invoicesHeader data must stay identical
Separate sheets per clientAccounting officesMore files, but cleaner data separation

XLSX import to KSeFGPT step by step

1. Choose the company for which you send invoices. Seller data, permissions and later statuses must be tied to the correct entity.

2. Upload an XLSX, XLS or CSV file with invoice data. If the file comes from Excel, check date, NIP and amount formats before import.

3. Review detected columns. Clear names speed up work: `buyer_nip` maps naturally to buyer NIP, `issue_date` to issue date and `gross_amount` to gross amount.

4. Verify column mapping to invoice fields. With non-standard column names, do not assume that everything was recognized perfectly. Check NIP, dates, currency, VAT rates and amounts in particular.

5. Review invoice drafts. At this stage, nothing is sent to KSeF yet. You check how many documents were recognized, which are valid, which have missing data and which should be skipped.

6. Run validation and send only selected valid invoices. After submission, monitor statuses, KSeF numbers and UPO receipts for documents accepted by the system.

This is the most important operational stage. Bulk submission is not about sending everything as fast as possible. It is about catching issues in a large spreadsheet before KSeF contact: missing NIP, wrong date, inconsistent amounts or empty line items.

Bulk invoice import from Excel in KSeFGPT with draft preview and validation before KSeF submission

Have a spreadsheet with invoices for KSeF?

Upload XLSX, check column mapping, fix incorrect rows and send only ready invoices.

Open KSeFGPT

Validation before submission

Validation before submission protects against the most expensive scenario: a batch of documents where the same error repeats dozens of times. If the entire date column uses 20.05.2026 instead of 2026-05-20, it is better to see that during import than after trying to submit invoices.

In KSeFGPT, the validation stage separates invoices that are ready from those that need correction. The user can then send selected valid documents and leave incorrect ones for later. This matters especially in accounting offices, where one client file should not block work on other documents.

It is also worth checking duplicates inside the sheet. If the same invoice number appears twice with the same seller and date, it does not always mean two invoices. Sometimes these are two items of one invoice, and sometimes an accidentally copied row. The difference is critical before submission.

Excel errorWhat may happenHow to fix it
Date as 20.05.2026Date format errorChange to YYYY-MM-DD
NIP stored as a numberExcel may remove a leading zeroSet the column as text
Amount with PLN suffixAmount may be treated as textSeparate amount and currency into columns
Empty rowsThe system may detect empty draftsRemove empty rows before import
Different header data for one invoiceItems may not be groupedUnify number, date and NIP across item rows
Duplicate invoice numberRisk of duplicate submission or incorrect draftCheck whether these are one invoice's items or a copied document

What happens after submission to KSeF

After submission, statuses matter most. An invoice may be accepted, rejected or waiting for processing. For an accepted document, the key outputs are the KSeF number and UPO, the official receipt. Only this set closes the process operationally.

In bulk work, you should expect a scenario where some documents pass and some need correction. A good tool should not force you to redo the entire batch, but show which documents require action.

Do not resend an invoice that has already been accepted and has a KSeF number. If the document needs a change after acceptance, the proper path is a corrective invoice. Read more in Corrective invoice in KSeF.

Excel, XML and PDF

In KSeF discussions, it is easy to mix up three formats. Excel is a convenient working tool: it lets you collect invoice data in a table, copy an export from sales software or prepare a batch for accounting. The spreadsheet itself is not a structured invoice.

XML FA(3) is the format required by KSeF. It contains invoice data in a logical structure, not as a table or visual document. That is why Excel import must end with creating valid invoice data and sending it through a KSeF-integrated tool.

PDF is different again: a visualization, scan or document received from a counterparty. If you want to clarify the difference between PDF and XML, read Can a PDF be sent to KSeF. Technical basics are explained in XML and FA(3) format in KSeF.

Most common errors when sending from Excel

The first mistake is treating Excel like a form without rules. A spreadsheet lets you enter almost anything, but KSeF requires specific data types. Column names and cell formats are therefore as important as values.

The second mistake is mixing different documents in one file without a clear grouping key. If invoices from several companies, currencies and document types go into one sheet, import becomes harder. Smaller batches with a shared schema are safer.

The third mistake is skipping review after import. Even a well-prepared file should be checked in the draft preview. KSeFGPT can speed up mapping and validation, but the user should still confirm that invoice data matches the document they want to send.

ProblemExampleGood practice
Mixed date formats2026-05-20, 20.05.2026 and 20/05/26 in one columnUnify dates before import
NIP with separators521-387-02-74Keep 10 digits without extra characters
Amounts as text1 234.50 PLNSeparate amount and currency
Missing invoice itemOnly gross amount, without service descriptionAdd description, quantity, unit and VAT rate
Many companies in one sheetDifferent sellers in one fileImport per company or clearly mark seller

When Excel is no longer enough

Excel is a great transition stage, but it should not always be the final center of the process. If invoices are created daily in sales software, an online store or ERP, manually exporting spreadsheets becomes extra work.

Repetition is the signal for automation. If every week you repeat the same steps: export, clean columns, import, correct errors, submit and download statuses, it is worth moving part of the work into integration. Excel then becomes a fallback or control format, not the main operating tool.

For many companies, the sensible path is: first organized XLSX import in KSeFGPT, then saved mapping and a team process, and only later integration with the source system. This way, the company does not need to design full automation before understanding where errors actually arise.

FAQ

Does KSeF accept Excel files?

No. KSeF accepts structured invoices compliant with FA(3). Excel can be a data source for a tool that prepares invoices for submission.

How should an XLSX sheet be prepared for KSeF invoice submission?

Prepare columns for invoice number, issue date, sale date, seller NIP, buyer NIP, currency, item description, quantity, unit, net price, VAT rate and net, VAT and gross amounts. Dates should use YYYY-MM-DD, and NIP should be text with 10 digits.

Can one sheet contain many invoices?

Yes, provided each invoice has an unambiguous number, date, seller, buyer and items. For multi-line invoices, the best model is one row = one item.

How should several items on one invoice be marked?

Repeat invoice header data across several rows and change only item data: name, quantity, price, VAT rate and amounts. Check the invoice draft preview before sending.

Can corrections be sent from Excel?

Yes, if the sheet contains the data required for a correction, including the corrected document and correction reason. In practice, it is worth preparing a separate correction template.

What if one invoice in the batch has an error?

The safest approach is to send only correct documents and fix the incorrect draft later. Bulk work should not mean forcing incorrect data through.

Does KSeFGPT create XML from Excel?

KSeFGPT imports sheet data, maps it to invoice fields, validates drafts and prepares them for KSeF submission. The user should review the preview before approval.

Can only selected invoices from the sheet be sent?

Yes. A safe bulk process sends only documents that are valid and accepted by the user.

Does KSeFGPT support bulk PDF-to-XML conversion?

This article concerns bulk invoice submission from Excel data. KSeFGPT supports XLSX, XLS and CSV import for the invoice submission process. This feature should not be described as bulk PDF-to-XML conversion.

Recommendation

If sending invoices from Excel matters to your team, it is worth organizing the broader KSeF process as well:

Bulk invoice submission to KSeF - a broader guide to batches, validation and statuses.

Sending invoices to KSeF - the basic guide to submission, UPO, authentication and process stages.

XML and FA(3) format in KSeF - technical basics of the structure into which Excel data must ultimately go.

KSeFGPT - invoice import, export and AI analytics application - how KSeFGPT helps with invoices, import and data analysis.

Send invoices to KSeF from a spreadsheet

Upload an XLSX, XLS or CSV file, check column mapping, fix errors and send accepted invoices to KSeF.

Open KSeFGPT

Zweryfikowano merytorycznie: Bogdan Mazurek

Tax advisor · 20 May 2026

The article distinguishes the working Excel format from the structured FA(3) invoice and explains that data from the sheet requires mapping, validation and user approval before KSeF submission.

Related articles