Other documents

Send PDF letters to Ropo using a JSON index file.

Send letters to Ropo as PDF + index JSON.

Use this for customer letters, contracts, reports, and similar documents.

Prerequisites

You need:

  • cid + apicode

  • a JWT token in Authorization: Bearer <token>

Authenticationchevron-right

Delivery options

You have two common ways to deliver the PDF.

Option A: HTTPS with embedded PDF (base64)

Put the base64-encoded PDF content in:

  • image.file

Use this when your payload format supports embedded files.

Option B: Deliver the PDF as a separate file (ZIP)

Deliver the PDF file(s) and the index file in the same ZIP package.

Use this when:

  • you cannot embed base64 in JSON

  • the PDFs are large

  • you want to upload file + data together

Data transfer limits and ZIP uploadschevron-right
circle-info

If you use SFTP delivery, the PDF and index must still be in the same ZIP package.

Minimum letter payload

Send one item in datastream.dataset[].

Field reference

Fields live inside each datastream.dataset[] item.

Core fields

  • jobtype (string, required)

    • Letter type in Ropo production.

    • For “other letter”, use "301".

  • language (string, optional)

    • Example: "fin".

  • sendtype (string, required)

    • Delivery channel.

    • Supported values:

      • post (printed and mailed)

      • email

  • customertype (string, required)

    • "1" = company

    • "2" = consumer

  • person (string, required if customertype is "2")

    • Consumer recipient name.

  • company (string, required if customertype is "1")

    • Company recipient name.

Address fields

  • address (string, required)

  • postcode (string, required)

  • city (string, required)

  • addresscountry (string, required)

    • 3-letter country code (ISO 3166-1 alpha-3).

    • Example: "FIN".

  • countryname (string, required)

    • Long country name.

    • Example: "Finland".

Email and phone

  • email (string, required if sendtype is "email")

  • phone (string, optional)

    • Example: "+35912345678".

Identifiers and dates

  • custnum (string, optional)

    • Your customer number.

  • deliverydate (string, optional)

    • Format: YYYY-MM-DD.

Contracts

  • contract[] (array, optional)

    • Items contain:

      • contract_no (string)

PDF attachment (image)

  • image.filename (string)

    • PDF filename.

    • Required when the PDF is delivered as a separate file with the index.

  • image.file (string)

    • Base64-encoded PDF.

    • Optional.

    • Use this for HTTPS embedded file delivery.

Usage place (optional)

  • usageplaces[] (array, optional)

    • Items can contain:

      • address (object)

        • address (string)

        • city (string)

        • addresscountry (string)

        • postcode (string)

        • sitecode (string)

      • energycontract[] (array)

        • contract_no (string)

Properties (propertyrow)

  • propertyrow[] (array, required)

    • Use this to send the document type.

    • Each item contains:

      • propname (string, required)

      • propvalue (string, required)

Supported documenttype values

Add one propertyrow item:

Supported propvalue values:

  • invoice (Lasku)

  • payslip (Palkka)

  • customerletter (Asiakaskirje)

  • questionnaire (Kysely)

  • report (Raportti)

  • contract (Sopimus)

  • test (Testi)

  • electricityinvoice (Sähkölasku)

  • reminder (Maksukehotus)

  • districtheatinginvoice (Lämpölasku)

  • readingcard (Lukemakortti)

  • adInvoice (Ilmoituslasku)

  • interestinvoice (Korkolasku)

  • rentinvoice (Vuokralasku)

  • waterinvoice (Vesilasku)

  • subscriptioninvoice (Tilauslasku)

  • order (Tilaus)

  • circulationinvoice (Levikkilasku)

Full JSON example

Migration notes (V1 → V2)

If you still have a V1 payload, these fields were renamed in V2:

  • deliverymethodsendtype

  • countrycodeaddresscountry

  • countrycountryname

  • emailaddressemail

  • phonenumberphone

  • filenameimage.filename

  • contractnumberusageplaces.energycontract.contract_no

  • customernumbercustnum

  • deliverysite.idusageplaces.address.sitecode

  • deliverysite.addressusageplaces.address.address

Last updated

Was this helpful?