Customer Statement Generator

Turn your Excel or CSV ledger into a PDF statement for every customer. Use the columns you already have.

Free to use · No signup · Your records stay in your browser

Start with your customer ledger.

A single file with customer names, transaction dates, and charges or payments. Accounting exports work too — confirm the columns in the next step.

Drop your spreadsheet here or choose a file from your device CSV or XLSX · Up to 20 MB and 50,000 data rows

Just looking? (synthetic data)

From spreadsheet to customer statements, in four steps.

A customer statement, or statement of account, shows the charges, payments, and outstanding balance on a customer’s account over a period. Beckmont turns your existing transaction export into separate, printable PDF statements.

Use a sales ledger or accounts receivable export from your accounting software. CSV and XLSX files can use your own headings and column order; you do not need to reformat them into a Beckmont template.

For manual preparation and reconciliation, read how to generate customer statements in Excel. Need invoice aging? See our accounts receivable aging guide.

  1. Upload your ledger

    Choose an Excel workbook or CSV. For workbooks, select the worksheet and the row containing your column headings.

  2. Map your columns

    Confirm customers, dates, charges, payments, and optional starting balances. Choose the text-date format and decimal separator used by your export.

  3. Preview and reconcile

    Set a date range, check each running balance, and compare totals by currency. Add your company name, logo, contact details, or payment instructions.

  4. Export PDFs in bulk

    Select the accounts you need and download a ZIP containing one PDF per customer and currency. Extract the ZIP and send statements using your usual email workflow.

Questions about the statement generator

Do I need a specific Excel template?

No. Upload a CSV or XLSX file and map your existing columns. “Customer,” “Client” and “Account Name” can all represent the customer; “Debit,” “Invoice” and “Charge” can represent charges; “Credit,” “Payment” and “Receipt” can represent payments.

Does Beckmont upload my customer data?

No. This generator reads spreadsheets and creates PDFs in your browser. Customer records, branding and generated documents are not sent to Beckmont servers or stored by the tool. Clear the session or close the tab to release the data held by the tool. Downloads remain on your device. Read how Beckmont handles data.

How are opening and closing balances calculated?

The opening balance is the starting balance from your mapped opening-balance column plus imported charges minus payments before the selected start date. The closing balance is that opening balance plus charges minus payments within the selected date range. Include all relevant transactions to get a complete balance. A starting balance alone cannot reconstruct earlier history; avoid ranges before your starting balance applies.

Can I generate customer statements in bulk?

Yes. Preview and select customer statements, then download separate PDFs together in a ZIP. Each customer and currency combination receives its own statement. You can export up to 500 statements per batch. This tool creates documents; you send them through your own email service.

What if my export has summary rows or errors?

The generator reports invalid rows instead of silently excluding them. Remove totals, subtotals, and repeated headers from your source file. Recalculate formula cells in Excel before saving. Customer names are grouped exactly after trimming whitespace, so check spelling and use unique account names. Files are limited to 20 MB, 50,000 data rows and 60 columns per worksheet.

Does this replace my accounting software?

No. It formats the transactions you supply. It does not verify that your export is complete, allocate payments to invoices, calculate aging, or maintain a ledger. Validate the statements against your accounts before sending them. PDF text supports Latin, Greek and Cyrillic; unsupported characters are reported before download.