RIDING BYTES
← All insights

August 19, 2026 · 6 min read

Reports in SENAITE 2.7: your logo, your paper formats, no developer

senaite.impress gains a logo upload, custom paper formats and a fixed paper format per report template, all in the control panel. What each setting does, what to decide before you configure it, and what happens when one report of a batch fails.

Reports in SENAITE 2.7: your logo, your paper formats, no developer

The report is the part of SENAITE your clients actually see. senaite.impress renders verified results into the PDF that goes out, and two things about it used to need a developer: the logo in the header and any paper size beyond the built-in ones.

Both are now settings in the impress control panel. The changes are merged on the 2.x branch of senaite.impress and ship with SENAITE 2.7, which is not yet released at the time of writing.

The control panel has a Report Logo field on the Report Settings tab. Upload an image file and save, and the header of the standard report templates shows it from the next render on. Without an upload the SENAITE logo stays where it was.

SENAITE IMPRESS Settings, Report Settings tab. The Report Logo section shows the description 'Custom logo to display in report headers. If not set, the default SENAITE logo is used.' with an uploaded file, senaite_pr...go_grey.png, next to the file picker.
The Report Logo field on the Report Settings tab. Without an upload, reports keep the SENAITE logo.

Two practical notes from setting this up with labs:

  • Crop the logo tightly before uploading. The standard templates render it at a fixed height of 30 pixels and scale the width to match, so white space around the logo makes the logo itself smaller, and a tall logo ends up tiny.
  • Labs with their own report templates get the same logo by replacing their hard-coded image with the helper view/get_report_logo_url, which the report views provide. Until then a custom template keeps whatever image it references.

Paper formats

The built-in formats cover A4, Letter and their relatives. Some reports need something else: an A5 certificate, a half page for the chain of custody, or a sheet with a pre-printed letterhead that needs a wider top margin.

The Custom Paper Formats grid defines them. Each row has a key, a title, width and height in millimetres, and the four margins. The key is how the format is referenced elsewhere, and a key that matches a built-in format, such as A4, overrides it. That is the clean way to give every A4 report a 40 mm top margin for letterhead paper without touching a template.

A fixed format per template

The Template Format Mapping grid binds a report template to a paper format. When someone selects that template in the publish view, the mapped format is applied automatically.

The Custom Paper Formats grid in the impress control panel, filled with one entry: A5, 148 mm wide, 210 mm tall. Below, a Template Format Mapping section binds two report templates to standard DIN A4 and DIN A3 formats.
Custom paper formats and the mapping of templates to formats, both in the same control panel.

A worked example: a lab sends standard reports on A4 and a certificate of analysis for one product line on A5 landscape.

  1. Add a format with key A5L, title A5 landscape, width 210, height 148, margins 10 mm all round.
  2. Map the certificate template to A5L and the standard template to A4.
  3. Remove templates nobody uses from Available Templates, so the publish view offers only the two that matter.

From then on the person publishing picks the template and gets the right paper without choosing it separately.

The default template itself is being reworked for the reporting requirements of ISO/IEC 17025 (senaite.impress #175, open at the time of writing). The preview below already uses it, with the lab logo in the header and the accreditation statement next to the client block:

A rendered test report in the publish preview of SENAITE IMPRESS, template MultiDefault, DIN A4 portrait. Header with the logo of Riverside Environmental Laboratories and the title Test Report DW-0001-R1. Client block for Springfield Water Authority, an accreditation statement, sample DW-0001 with a barcode, dates sampled and received, a results table for conductivity, pH and turbidity with accredited methods marked by a star, a results interpretation, a legend, the release signature of the laboratory manager and a footer with the lab address.
The reworked default template on A4: lab logo, client block, accreditation statement, results with accredited methods marked, and the release signature.

What happens when one report in a batch fails

Publishing many samples at once raises a fair question: what if report 37 of 50 fails?

Each PDF of the run is stored and committed on its own, one after the other. If report 37 fails, reports 1 to 36 are already saved, report 37 leaves nothing half-written behind, and the run stops there, so 38 to 50 are not created. After fixing the cause you publish the remaining samples again; the ones already done do not need to be repeated. Report creation is also limited to one at a time, so two people publishing at the same moment do not collide.

Whether a report covering several samples is stored once or once per sample is a separate setting, Store Multi-Report PDFs Individually, on by default. On means every sample carries its own copy of the PDF, which is what most labs want when clients look up their reports per sample.

Smaller fixes worth knowing

  • Attachments uploaded shortly before publishing now appear in the report, even if the catalog has not caught up with them yet.
  • Accreditation body logos render again after the laboratory settings were moved to the new content type in senaite.core.
  • Batch labels no longer break the rendering.

Before you upgrade

If you never customised reports, nothing changes until you upload a logo. If your logo lives in a customised template or a separate add-on, plan to move it to the control panel and retire the customisation. If you maintain a paper format in code, recreate it as a custom format with the same key and remove the code once the reports look identical.

Two people reviewing notes on paper next to a laptop

Bring this to your lab

Whether you are evaluating SENAITE, scaling it across sites, or wiring up instruments and monitoring, the team that wrote the platform is the team you talk to.