Skip to main content
POST
/
v1
/
quotes
/
cost
/
preview
Monthly payment preview
curl --request POST \
  --url https://api.prets.io/v1/quotes/cost/preview \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Prets-Organization: <prets-organization>' \
  --data '
{
  "currency": "EUR",
  "totalInclTax": 12500,
  "address": {
    "postalCode": "1000AA",
    "country": "NL",
    "houseNumber": "42",
    "streetAddress": "Rue de la Loi 200",
    "streetAddress2": "Apt 4B",
    "city": "Brussels",
    "street": "Kerkstraat",
    "houseNumberAddition": "A"
  },
  "lineItems": [
    {
      "type": "battery",
      "externalId": "QUOTE-2024-001-PV",
      "totalInclTax": 12500,
      "totalNameplateCapacity": 13500,
      "totalNameplatePower": 5000,
      "totalExclTax": 10330.58,
      "unitPrice": 250,
      "productIdentifiers": {
        "brand": "Enphase",
        "manufacturerPartNumber": "SE7600H-US",
        "globalTradeItemNumber": "0885629362058"
      },
      "incentiveCodes": [
        "ISDE-2024-WP",
        "PROV-NH-2024"
      ],
      "description": "<string>"
    }
  ]
}
'
{
  "data": {
    "currency": "EUR",
    "estimatedMonthlyCost": 123,
    "content": [
      {
        "type": "text",
        "name": "text_main",
        "value": "<string>"
      }
    ],
    "lineItems": [
      {
        "externalId": "<string>",
        "estimatedMonthlyCost": 123,
        "content": [
          {
            "type": "text",
            "name": "text_main",
            "value": "<string>"
          }
        ]
      }
    ]
  },
  "links": {
    "loanIndicationWidget": {
      "png": "<string>",
      "url": "<string>"
    }
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Prets-Organization
string
required

Merchant organization slug for catalog eligibility.

Minimum string length: 1
Example:

"prets"

Accept-Language
string

BCP 47 language tag; defaults to nl-NL

Example:

"nl-NL"

Body

application/json

Indicative financing cost preview

currency
enum<string>
required

Quote currency (currently EUR only)

Available options:
EUR
Example:

"EUR"

totalInclTax
number
required

Quote total including tax in EUR

Required range: x >= 0
Example:

12500

address
Dutch Address · object

Installation address; when omitted, eligibility may be broader where rules allow

lineItems
object[]

Quote line items for per-line estimates; when omitted, only quote-level financing is estimated

Response

Estimates and copy. Omit lineItems for total-only; response lineItems is then empty.

Indicative financing cost preview

data
object
required