Skip to content
This is a new version of the Kivra Developer Docs. Report issues or share feedback at avsandare.support@kivra.se. The previous version can be found here.

Salary slips

Salary content can be sent as a traditional salary specification or as a structured salary slip. The structured salaryslip type lets Kivra present employment, pay, tax, benefit, and holiday information in a consistent view.

Type Description Retained delivery
salaryslip Salary slip with structured employment, pay, tax, benefit, and holiday metadata. Supported
letter.salary Legacy salary specification; deprecated from 1 October 2026. Supported until deprecation

Every salary request needs a recipient identifier, subject, type, and usually one or more PDF parts.

Field Purpose
ssn, email, or vat_number Identifies the person or company recipient
subject Short inbox title; never include personal or sensitive information
type Selects salaryslip or the legacy letter.salary type
parts Contains the complete salary slip as a PDF
generated_at Optional timestamp used for inbox sorting
salaryslip Contains structured salary metadata when type is salaryslip
retain and retention_time Enables retained delivery for salary content

Use salaryslip for a salary slip with structured metadata. The request must include a valid salaryslip object in addition to the common content fields. The object can describe:

  • employment and employer details
  • pay-period dates, hours, gross pay, deductions, and net pay
  • benefits and vacation information
  • tax details and the recipient’s payment account

See the Send content endpoint for every structured field.

Retained delivery: Supported. Set retain to true and optionally set retention_time to "30" or "390".

letter.salary is the earlier salary-specification type. It remains supported for existing integrations and supports retained delivery, but is scheduled for deprecation from 1 October 2026. See the Send content endpoint. Use salaryslip for new integrations.

Retained delivery: Supported until this type is deprecated. Set retain to true and optionally set retention_time to "30" or "390".

If the request includes an HTML version in a responsive_part, that HTML view overrides the structured salary view. Make sure the HTML contains the same salary information as the PDF. See Responsive content for HTML restrictions.

See Retained content for delivery to recipients who have not yet registered.

See the Send content API reference for the request contract.