Skip to main content

Implementation manual for client communication with the web service.

Version
Date
Description
1.4.0
2026-09-02
Added Product Signal Iduna Malpraxis
1.3.0
2026-08-28
Added Product Asirom Malpraxis
1.2.0
2026-08-14
Added Product ABC Malprax
1.1.0
2023-07-20
Added Product Omniasig General, Professional and Other
1.0.0
2023-07-14
Initial version

1. Introduction​

The LiabilityApi service allows the generation of offers, the issuance of policies, as well as the printing of corresponding documents.

All requests (except for authentication requests) must contain the "Token" parameter in the Header, which contains an authorization token (JWT) obtained through authentication endpoints using credentials provided by Life Is Hard SA (as OPERATOR).

Environments:

The examples and definitions of the methods and resources offered by the service can be viewed through the Swagger UI platform: https://api.lifeishard.ro/liability-api

On the testing environment, authentication will be performed using the credentials:

jsonwide760

The credentials used in the testing environment are not functional in the production environment.

1.1 Implemented products​

🚧 - Products which are under development (there are not available in production only on the testing enviorment)

Insurer
Identifier
Omniasig
insurer:omniasigproduct: general, professional, other
ABC Malprax
insurer: abcproduct: malprax
Asirom Malpraxis
insurer: asiromproduct: malpraxis
Signal Iduna Malpraxis
insurer: signal_idunaproduct: malpraxis
🚧 Uniqa Malpraxis
insurer: uniqaproduct: malpraxis
🚧 Garanta Malpraxis
insurer: garantaproduct: malpraxis

1.2 Workflow​

Creating policy:

  1. Authentication Obtain a JWT token using credentials provided by OPERATOR

  2. Create offer the response includes the [offerID] – this id will be needed in the following requests

  3. Transform offer to policy use [offerID] from the offer step for policy to get the policy data

  4. Download documents use [offerID] from the offer step to get offer documents, and [policyID] from the transform policy step to get policy documents

1. 3 Response types​

The main structure of response is:

Parameter
Description
error
This indicates the type of response: false indicates success, and true indicates an error.
status
HTTP status
data
Data related to the response / Additional data regarding the response.
message
Error message

The structure of the responses can be divided into two major categories: successful response and error response.

Success

Parameter
Description
error
false
status
200
data
(object)

Error

Parameter
Description
error
true
status
400 - 500
message
Error message
data
(optional) Additional data

2. Authentication​

2.1 Authenticate account​

Endpoint: POST /auth

This method is used to authenticate an account by account and password (provided by OPERATOR).

If the authentication was successful. The response will include a JSON object with the following properties:

  • error: A boolean indicating if an error occurred during the request. In this case, it will be false.

  • status: An integer representing the status code of the response. In this case, it will be 200.

  • data: A JSON object containing the following properties:

  • token: A string representing the JWT token generated by the server for the authenticated user.

  • expires_at: A string representing the date and time when the JWT token will expire in the format "YYYY-MM-DD HH:MM:SS".

  • refresh_token: A string representing the refresh token generated by the server for the authenticated user.

2.2 Renew token​

Endpoint: PATCH /auth

This method is used to renew an authentication token based on the refresh token.

If the token has been successfully renewed, the generated response will have the same structure as the authentication response.

2.3 De-authenticate account​

Endpoint: DELETE /auth

This method is used to deauthenticate an existing and valid auth token.

3. Create offer​

Endpoint**:** POST /offer

3.1 Request​

3.1.1. Input parameters​

a. Main object​
Parameter
Type
Required
Description
Validation rules
provider
object
Yes
Information related to the insurer
provider.organization
object
Yes
Insurer’s data
provider.organization.businessName
string
Yes
Insurer identifier (see 1.1. → Identifiers)
provider.authentication
object
Yes
Credentials to access insurer’s web service
provider.authentication.account
string
Yes
Account
In DEV / QA environment these fields can be sent empty to use default test credentials
provider.authentication.password
string
Yes
Password
provider.authentication.code
string
Yes
Code
product
object
Yes
Information related to the product
product.name
string
Yes
Product identifier (see 1.1. → Identifiers)
product.currency
string
Yes
Currency
Accepted values: EUR, RON
USD,CHF
product.liability
Liability object
Yes
Information related to the product
product.customer
Person object
No
Contractor’s data
If not set the policyholder’s information will be used by default
product.policyholder
Person object
Yes
Policyholder’s data
product.additionalData
object
No (depending on the product)
Product related additional information
Must be completed according to the Product specific parameters section
product.additionalData.rafCode
string
No
Offering agents RAF code
Format validation: RAF1234567891
Starts with RAF followed by at most 10 digits
b. Liability object​
Parameter
Type
Required
Description
Validation rules
type
string
Yes
Type of the liability policy
If set the value has to be one of the following [malpraxis, pharma, veterinary, lawyers, notaries, counselors, executors, insolvency, tax-consultant, personal, hunters, estate-admin]
category
string
Yes*
for type equal to one of [malpraxis, pharma, veterinary, lawyers]
Type of category
GET /nomenclature/category-speciality/{liabilityType} for the full list per type
speciality
string
Yes*
for type equal to one of [malpraxis, pharma, veterinary, lawyers]
Type of speciality
GET /nomenclature/category-speciality/{liabilityType}/{category} for the full list per type and category
startDate
string
Yes
Start date of the policy
• Accepted format: YYYY-MM-DD

• The date must be in the future.


termTime
number
Yes
Duration of the policy in months
Integer value between 1 and 12
installmentCount
number
No
Number of installments for payment
If set the value has to be one of the following [1, 2, 4, 12]
Note: in some cases the accepted values might change depending on the insurer
notes
string
No
Any additional observations regarding the policy
renewPolicy
object
No
Object used in case of renewal of an existing policy
renewPolicy.series
string
Yes, if renewPolicy.number is set
renewPolicy.number
number
Yes, if renewPolicy.series is set
additionalInsureds
object
No
Object used to set number of additional insured
additionalInsureds.children
number
No
Number of additional children added to the policy
• Numeric value

• Minimum value 0Note: if not set default value is 0


additionalInsureds.residents
number
No
Number of additional residents added to the policy
deductible
object
No
Object used to set policy deductible information
Note: if not set default value for percent is 0 and type is no-deductible
deductible.percent
number
No
Percent value
• Numeric value

• Minimum value 0


deductible.type
string
No
Type of deductible
Value has to be one of the following [undefined, no-deductible, per-event, of-loss]
allowance
object
No
Object used to set “Bonificatie”
allowance.value
number
No
Percent value
• Numeric value

• Value between [-99, 99]


territory
object
No
Object used to set policy coverage location
territory.coversWorldWide
boolean
No
Coverage for world wide
Note: default value false
territory.coversRomania
boolean
No
Coverage for Romania
coverage
Coverage object
Yes
conditions
Condition Object
Yes
intermediaryEmail
string
No
Intermediary Email
• valid email address


c. Person object​
Parameter
Type
Required
Description
Validation rules
businessName
string
Yes, if it is present in request
Business name (if the person is a legal entity)
companyRegistryNumber
string
Yes, if businessName field is present
Company registration number (if the person is a legal entity)
caenCode
number
Company CAEN number
lastName
string
Yes, if businessName field is not present
Individual person's last name
firstName
string
Individual person's first name
taxId
string
Yes
• Personal identification code for natural persons

• Tax identification number for non-natural persons


It must be a valid Romanian CNP if businessName field is not present and isForeignPerson is false (or it’s not present)
isForeignPerson
boolean
No
Indicates if person is foreign person
nationality
string
Yes, if isForeignPerson is true
Nationality
Accepted values: iso2 codes from /nomenclature/country nomenclature
citizenship
string
Citizenship
Accepted values: iso2 codes from /nomenclature/country nomenclature
gender
string
Gender:
• m => male

• f => female


Accepted values: m, f
birthdate
string
Date of birth
• Accepted format: YYYY-MM-DD

• The date must be in the past.


email
string
No
Email address
It must be a valid email address.
mobileNumber
string
No
Mobile phone number
It must be a valid mobile number address.
identification
Identification object
Yes, if businessName field is not present
Information related to the identification document
address
Address object
Yes
Person’s home address
d. Identification object​
Parameter
Type
Required
Description
Validation rules
idType
string
Yes
Type of the identification document
Accepted values: CI, PASSPORT
idNumber
string
Yes
Series and number of the identification document
If idType = CI it must be a valid romanian identification number, accepted format of 2 letters and 6-7 digits
issueAuthority
string
Yes
Issuer of the identification document
issueDate
string
Yes
Issuing date of the identification document
• date before now() +1 day

• accepted format: YYYY-MM-DD


e. Address object​
Parameter
Type
Required
Description
Validation rules
country
string
No
iso2 country code
Accepted values: iso2 codes from /nomenclature/country nomenclature
county
string
Yes
County code
Accepted values: any code from /nomenclature/county nomenclature
city
string
Yes
Locality name
Accepted values: any name from /nomenclature/locality/{county} nomenclature
cityCode
number
Yes
Locality code
Accepted values: any siruta code from /nomenclature/locality/{county} nomenclature
street
string
Yes
Street
houseNumber
string
Yes
House number
building
string
No
Building
staircase
string
No
Staircase
apartment
string
No
Apartment
floor
string
No
Floor
postcode
number
No
Postcode
f. Coverage object​
Parameter
Type
Required
Description
Validation rules
auxiliaryStaff
object
No
auxiliaryStaff.isIncluded
boolean
Yes, if auxiliaryStaff is present
eScooter
object
No
eScooter.isIncluded
boolean
Yes, if eScooter is present
eScooter.value
number
Yes, if eScooter.isIncluded is true
• Numeric value

• Minimum value 1


extendedReportingPeriod
object
No
extendedReportingPeriod.isIncluded
boolean
Yes, if extendedReportingPeriod.isIncluded is present
extendedReportingPeriod.value
number
Yes, if extendedReportingPeriod.isIncluded.isIncluded is true
Percent value
• Numeric value

• Minimum value 1


moralClaims
object
No
moralClaims.isIncluded
boolean
Yes, if moralClaims is present
moralClaims.value
number
Yes, if moralClaims.isIncluded is true
Percent value
• Numeric value

• Minimum value 1


feesCompensation
object
No
feesCompensation.isIncluded
boolean
Yes, if feesCompensation is present
feesCompensation.value
number
Yes, if feesCompensation.isIncluded is true
• Numeric value

• Minimum value 1


perEvent
object
No
perEvent.isIncluded
boolean
Yes, if perEvent is present
perEvent.value
number
Yes, if perEvent.isIncluded is true
• Numeric value

• Minimum value 1


policyLimit
object
No
policyLimit.isIncluded
boolean
Yes, if policyLimit is present
policyLimit.value
number
Yes, if policyLimit.isIncluded is true
• Numeric value

• Minimum value 1


g. Conditions object​
Parameter
Type
Required
Description
Validation rules
locationCount
object
No
locationCount.isIncluded
boolean
Yes, if locationCount is present
locationCount.value
number
Yes, if locationCount.isIncluded is true
• Numeric value

• Minimum value 1


claimsWithin3Years
object
No
claimsWithin3Years.isIncluded
boolean
Yes, if claimsWithin3Years is present
lossHistoryWithin5Years
object
No
lossHistoryWithin5Years.isIncluded
boolean
Yes, if lossHistoryWithin5Years is present
turnover
object
No
turnover.isIncluded
boolean
Yes, if turnover is present
turnover.value
number
Yes, if turnover.isIncluded is true
• Numeric value

• Minimum value 1


3.1.2 Business rules​

  • product.customer (if present) and product.policyholder have to be adultse

3.2 Response​

The object structure returned in the data field is described in this section.

Response data object​
Parameter
Type
Description
provider
object
provider.organization
object
provider.organization.businessName
string
Insurer identifier
product
object
product.name
string
Product identifier
offers
array of Offer object
A list of generated offers, which can include offers generated successfully
Offer object​
Parameter
Type
Description
offerId
number
• Unique identifier of the offer

• Use this to transform the offer into a policy


providerOfferCode
string
Unique identifier of the offer generated by the insurer
premiumAmount
number
Premium amount defined in the currency returned in currency field
currency
string
Currency
exhangeRate
object
exhangeRate.currency
string
exhangeRate.amount
number
exhangeRate.exhangeRate
number
payment
object
payment.amount
number
payment.currency
string
startDate
string
The start date of the policy
endDate
string
The end date of the policy
installments
object
installments.id
number
Number of the installment
installments.amount
number
Premium amount of the installment
installments.dueDate
string
The due date of the payment
notes
string
Additional information from the insurer
offerExpiryDate
string
The date till the offer is valid

4. Transform offer to policy​

Endpoint: POST /policy

4.1 Request​

4.1.1 Input parameters​

Request data object​
Parameter
Type
Required
Description
Validation rules
offerId
number
Yes
Unique identifier f the offer that will be transformed to a policy
Offer has to exist
payment
Payment object
Yes
Payment information
additionalData
object
No (depending on the product)
Product related additional information
Must be completed according to the Product specific parameters section
Payment object​
Parameter
Type
Required
Description
Validation rules
method
string
Yes
Payment methodNote: not all products will accept every option
Accepted values: receipt, broker receipt, payment order, broker payment order, pos
currency
string
Yes
Payment currency
At the moment only RON is accepted
amount
number
Yes
The payment amount in the selected currency
date
string
Yes
Payment date
Accepted format: YYYY-MM-DD
documentNumber
string
Yes
Payment proof document details
Format: has to start with at least one character followed by digits

4.2 Response​

The object structure returned in the data field is described in this section.

Response data object​
Parameter
Type
Description
policies
array of Policy object
A list of issued policies, which can include policies successfully and/or with errors.
Policy object​

🚩 Structure might change

Parameter
Type
Description
provider
object
 
provider.organization
object
 
provider.organization.businessName
string
Insurer identifier
policyId
number
Unique identifier of the issued policy
series
string
Policy series
number
number
Policy number
startDate
string
Policy start date
endDate
string
Policy end date
premiumAmount
number
Value of the policy
currency
string
Policy value currency
installments
object
installments.id
number
Number of the installment
installments.amount
number
Premium amount of the installment
installments.dueDate
date
Format:Y-m-d

5. Documents​

5.1 Offer​

Endpoint: GET /offer/{OfferID}

This API endpoint enables users to download the offer in PDF format. You will need to provide the OfferID received from the offer request call to access the download feature.

5.2 Policy​

This API endpoint enables users to download the policy in PDF format.

5.2.1 By policy identifier​

Endpoint: GET /policy/{PolicyID}

You will need to provide the policyId received from the offer transform request call to access the download feature.

5.2.2 By policy series and number​

Endpoint: GET /policy?series={series}&number={number}

You will need to provide the series and number received in the response of transform offer into policy call to access the download feature.

5.3 Insurer receipt​

Endpoint: GET /policy/{PolicyId}/insurer-receipt

This API endpoint enables users to download the policy receipt in PDF format. You will need to provide the PolicyID received from the offer transform request call to access the download feature.

panel_c1

Implemented products for this endpoint:

  • Abc

  • Signal Iduna

6. Product-specific parameters​

This section of the implementation manual outlines the specifications for the additionalData object, which forms part of the request for bidding and transformation of offers into policies.

The section also describes specific validation rules for each product.

6.1 Omniasig​

Business rules:

  • At offering the following currencies are accepted for product.currency [RON, EUR, USD, CHF]

  • The product.liability.termTime field can have one of the following values [3, 6, 9, 12]

  • The product.liability.deductible.percent value has the following restrictions depending on the product.liability.deductible.type:

  • per-event values from 0.3, 0.5, 1, 1.5, 2

  • of-loss values from 3, 5, 7, 10, 15

  • undefined or no-deductible value has to be 0

  • The product.liability.coverage.moralClaims.value and product.liability.coverage.feesCompensation.value can have the following percentage values [5, 10, 15, 20, 25, 30]

  • The product.liability.coverage.policyLimit.value minimum value is 1 if product.liability.coverage.perEvent.value does not exist otherwise the minimum value is product.liability.coverage.perEvent.value

  • product.policyholder.companyRegistryNumber and product.customer.companyRegistryNumber is not required

  • 🚩 product.customer.isForeignPerson and product.policyholder.isForeignPerson has to be set to false, SAS working on development

  • The product.policyholder.address.postcode is required

  • The product.customer.address.postcode is required when product.customer.address is present

6.1.1 General Liability Package​

Business rules:

  • product.name is set to general

  • product.liability.type can have the following values if product.policyholder is a regular entity [hunters, estate-admin, personal] otherwise only estate-admin

6.1.1.1 Offer​

Business rules:

  • product.liability.coverage.perEvent.value for product.currency EUR CHF the value has to be between [5000, 1000000]

  • product.liability.coverage.perEvent.value for product.currency RON the value has to be between [5500, 1000000]

No additional data is required.

6.1.1.2 Transform offer to policy​

No additional data is required.

Business rules:

  • payment.documentNumber is not required

6.1.2 Professional Liability Package​

Business rules:

  • product.name is set to professional

  • product.liability.type can have the following values if product.policyholder is a regular entity [malpraxis, pharma, veterinary, lawyers, notaries, counselors, executors, insolvency, tax-consultant] otherwise [lawyers, notaries, counselors, executors, insolvency, tax-consultant]

  • product.liability.conditions.turnover.isIncluded has to be set to true when product.liability.type is one of [lawyers, executors, insolvency, tax-consultant] otherwise false

  • product.liability.coverage.perEvent.value limits list in EUR or the equivalent in RON, values are based on category and specialty see table bellow

Category and speciality limits list4000

Type
Category
Speciality
Minimum Coverage
Maximum Coverage
malpraxis
family-medicine-general-practitioners
applies to all specialities
12,000
200,000
malpraxis
medical-specialists
applies to all specialities
37,000
200,000
malpraxis
surgical-specialists
applies to all specialities
62,000
200,000
malpraxis
dentists
applies to all specialities
37,000
200,000
malpraxis
dental-technicians
applies to all specialities
10,000
200,000
malpraxis
paraclinical-specialists-biochemists-biologists
applies to all specialities
10,000
200,000
malpraxis
pharmacists
applies to all specialities
5,000
200,000
malpraxis
pharmacy-assistants
applies to all specialities
2,000
200,000
malpraxis
nurses-and-midwives
nurses-and-midwives-inpatient-facilities
10,000
200,000
malpraxis
nurses-and-midwives
nurses-and-midwives-primary-care-outpatient-clinics
2,000
200,000
pharma
pharmacists
applies to all specialities
5,000
200,000
pharma
pharmacy-assistants
applies to all specialities
2,000
200,000
veterinary
physicians
applies to all specialities
5,000
200,000
veterinary
medical-staff
applies to all specialities
5,000
200,000
lawyers
intern
applies to all specialities
3,000
200,000
lawyers
permanent
applies to all specialities
6,000
200,000
notaries
—
—
3,000
200,000
counselors
—
—
5,000
200,000
executors
—
—
5,000
200,000
insolvency
—
—
1,000
200,000
tax-consultant
—
—
10,000
200,000
  • product.additionalData.product.conditions.professionalCategory is a mandatory field if product.liability.type is one of [malpraxis, pharma, veterinary, lawyers] 🚩 field replaced with the value from product.liability.category
6.1.2.1 Offer​
Parameter
Type
Required
Description
Validation rules
product.retroactivePeriod
numeric
No
Value in months
Accepted value from [12, 24, 36]
product.conditions
object
No
product.conditions.activityType
string
No
Accepted value from [accounting, tax-advisory, audit]
product.conditions.consultantsType
array of string
No
Accepted value from [accountant, expert-accountant, tax-consultant, auditor]
product.conditions.professionalCategory
⚠️ field replaced with the value from product.liability.category
product.conditions.professionalSpeciality
⚠️ field replaced with the value from product.liability.speciality

6.1.2.2 Transform offer to policy​

No additional data is required.

Business rules:

  • payment.documentNumber is not required

6.1.3 Other Liability Package​

Business rules:

  • product.name is set to other

  • product.liability.type can have the following values if product.policyholder is a regular entity [hunters, estate-admin, personal] otherwise only estate-admin

  • product.liability.coverage.perEvent.value limits list in EUR or the equivalent in RON, see table bellow

Type
Minimum Coverage
Maximum Coverage
estate-administration
5,000
200,000
hunters
3,000
200,000
personal
-
-
  • product.liability.conditions.turnover.isIncluded has to be set to false

  • product.liability.additionalInsureds.residents and product.liability.additionalInsureds.children have to be set to 0 if they exist in the request

6.1.3.1 Offer​
Parameter
Type
Required
Description
Validation rules
product.conditions.accountingDeskActivities
boolean
Yes, if product.conditions.adminTechnicalActivities is false
If product.policyholder performs any accounting or desk activities
Note: default value false
At least on of the fields has to be set to true.
product.conditions.adminTechnicalActivities
boolean
Yes, if accountingDeskActivities if false
If product.policyholder performs any administration or technical activities
6.1.3.2 Transform offer to policy​

No additional data is required.

Business rules:

  • payment.documentNumber is not required

6.2 ABC - Malpraxis​

6.2.1 Offer​

Business rules:

  • The product.liability.startDate field value cannot be more then 30 days in the future

  • The product.liability.termTime field can only be equal to 12

  • The product.liability.installmentCount field can have one of the following values [1, 2, 4, 12]

  • The following product.liability.coverage values cannot be included:

  • perEvent

  • policyLimit

  • auxiliaryStaff

  • eScooter

  • extendedReportingPeriod

  • feesCompensation

  • locationCount

  • turnover

  • lossHistoryWithin5Years

  • The product.liability.coverage.moralClaims.value field can have one of the following values [25, 50, 75]

  • The product.policyholder.mobileNumber is required

  • The product.customer.mobileNumber is required when product.customer is present

Parameter
Type
Required
Description
Validation rules
product.additionalData.product.medicalSpecialization
⚠️ field replaced with the value from product.liability.category
product.additionalData.product.medicalSpeciality
⚠️ field replaced with the value from product.liability.speciality
product.additionalData.product.imageRepairExpenses
object
No
Image repair expenses coverage
product.additionalData.product.imageRepairExpenses.isIncluded
boolean
No
product.additionalData.product.imageRepairExpenses.value
number
Yes, if product.additionalData.product.imageRepairExpenses.isIncluded is true
Accepted values from [500, 1000, 2500]
product.additionalData.product.mitigationExpenses
object
Mitigation expenses coverage
product.additionalData.product.mitigationExpenses.isIncluded
boolean
No
product.additionalData.product.mitigationExpenses.value
number
Yes, if product.additionalData.product.mitigationExpenses.isIncluded is true
Accepted values from [500, 1000, 2500]
product.additionalData.product.retroactivePeriod
object
No
Retroactive period
product.additionalData.product.retroactivePeriod.isIncluded
boolean
No
product.additionalData.product.retroactivePeriod.value
number
Yes, if product.additionalData.product.retroactivePeriod.isIncluded is true
Accepted values from [12, 24, 36]
product.additionalData.product.knowledgeOfClaims
boolean
No
Knowledge of pending claims
product.additionalData.product.attestationDate
string
No
Professional attestation date
product.additionalData.product.voucherCode
string
No
Voucher code for discounts
product.additionalData.product.premiumAdjustment
number
No
Premium adjustment percentage

6.2.2 Transform offer to policy​

No additional data is required.

6.3 Asirom - Malpraxis​

6.3.1 Offer​

Business rules:

  • The product.currency field accepts one of [RON, EUR]

  • The product.liability.type field can only equal "malpraxis"

  • The product.liability.startDate field must be no more than 3 months and 29 days from today

  • The product.liability.termTime field accepts "12 to 18" (months)

  • The product.liability.installmentCount field accepts values [1, 2, 4]

  • The product.liability.deductible.percent.type field can only equal "no-deductible" or "per-event", and is required whenever a deductible object is submitted

  • The product.liability.deductible.percent field accepts one of [0, 0.5, 1, 2, 3, 4, 5]

  • Only the following coverage elements may be included (product.liability.coverage.*.type): policyLimit, perEvent, moralClaims. Any other coverage option submitted with isIncluded: true is rejected.

  • product.liability.coverage.policyLimit.isIncluded is mandatory to be included

  • product.liability.coverage.policyLimit.value has ti be a value between EUR 100 and EUR 100,000 or the equivalent value in RON in case product.currency is equal to RON

  • product.liability.coverage.perEvent.isIncluded is mandatory to be included its .value must

  • product.liability.coverage.perEvent.value has to be equal to product.liability.coverage.policyLimit.value

  • product.liability.coverage.moralClaims.value, when included, the value will be used to calculate a percent of the product.liability.coverage.policyLimit.value

  • product.policyholder.nationality and product.customer.nationality cannot be set to RO when the person's tax ID (CNP) starts with 7 or 8, as that prefix indicates foreign tax residency

  • product.additionalData.product.discount and product.additionalData.product.increase cannot be set at the same time

  • product.additionalData.product.authorizationType` must be operating-authorization when product.liability.category is healthcare-providers-legal-entities and product.liability.speciality is pharmacies-individual-medical-practices; any other authorization type is rejected for that pair

Parameter
Type
Required
Description
Validation rules
product.additionalData.product.authorizationType
string
Yes
Type of document authorizing the insured to practice.
Accepted values: operating-authorization, medical-college-membership-certificate
product.additionalData.product.authorizationNumber
string
Yes
Number of the authorization document.
product.additionalData.product.authorizationDate
date
Yes
Issue date of the authorization document.
Format YYYY-MM-DD. Must be on or before the first day of next month.
product.additionalData.product.accreditationCertificateNumber
string
No
Number of the accreditation certificate.
product.additionalData.product.accreditationCertificateDate
date
No
Issue date of the accreditation certificate.
Format YYYY-MM-DD
product.additionalData.product.workplace
string
No
Workplace of the insured.
product.additionalData.product.professionStartDate
date
Yes
Date on which the insured started practicing the profession.
Format YYYY-MM-DD
product.additionalData.product.retroactivePeriod
date
Yes
Start date of the retroactive coverage period.
Format YYYY-MM-DD.
Must be on or before product.liability.startDate, no earlier than 3 years before product.liability.startDate, and on or after authorizationDate
product.additionalData.product.claimsDetails
string
No
Details of any claims made against the insured.
product.additionalData.product.priorClaimsRequests
string
No
Details of any prior claims requests made against the insured.
product.additionalData.product.priorClaimsPaid
string
No
Details of any prior claims paid on behalf of the insured.
product.additionalData.product.ongoingLitigation
string
No
Details of any ongoing litigation involving the insured.Requested discount percentage.
product.additionalData.product.discount
number
No
Reason for the requested discount.
Requested discount percentage, "0.1 to 90". Mutually exclusive with increase.
product.additionalData.product.discountReason
string
Yes*, if product.additionalData.product.discount is set
Reason for the requested discount.
product.additionalData.product.increase
number
No
Requested premium increase percentage.
Requested premium increase percentage, minimum "0.1". Mutually exclusive with discount.
product.additionalData.product.increaseReason
string
Yes*, if product.additionalData.product.increase is set
Reason for the requested premium increase.
product.additionalData.product.simulateOffer
boolean
No
Simulate offer generation, cannot be issued.
If true, requests a simulated offer only (cannot be downloaded or issued).
Default false.
🚩 Note: the response will not contain the offerId and providerOfferCode fields if it is a simulated offer

6.3.2 Transform offer to policy​

Business rules:

  • payment.date must be on or before today's date

No other additional data is required.

6.4 Signal Iduna - Malpraxis​

6.4.1 Offer​

Business rules:

  • The product.currency field can only equal "EUR"

  • The product.liability.type field can only equal "malpraxis"

  • The product.liability.termTime field accepts "12 to 18" (months)

  • The product.liability.installmentCount field accepts values [1, 2, 4]

  • product.liability.coverage.moralClaims.value sent value is ignored, SignalIduna computes the final moral-claims value itself

  • product.liability.coverage.policyLimit.isIncluded may only be set to true for 2 specific category/speciality combinations (medical-service-providers-legal-entity, and hospital-specialty-outpatient-clinics); for every other combination it must be declined

  • product.liability.coverage.policyLimit.value, when the limit is included it has to be one of [5000, 10000, 15000, 25000, 50000, 100000, 150000] (EUR)

  • The following coverage/condition elements are not supported at all and must be declined (omitted or false): perEvent, auxiliaryStaff, eScooter, extendedReportingPeriod, feesCompensation, conditions.locationCount, conditions.turnover, conditions.lossHistoryWithin5Years, conditions.claimsWithin3Years.

Category/speciality combinations by required policyholder entity type4000

product.liability.category
product.liability.speciality
Required Policyholder Entity Type
healthcare-providers-legal-entities
closed-circuit-pharmacies
Legal entity only
healthcare-providers-legal-entities
hospital-specialty-outpatient-clinics
Legal entity only
healthcare-providers-legal-entities
medical-service-providers-legal-entity
Legal entity only
healthcare-providers-legal-entities
pharmacies-individual-medical-practices
Legal entity only
ancillary-medical-service-providers
dietitian
Natural person only
ancillary-medical-service-providers
staff-providing-ancillary-medical-services
Natural person only
dental-technicians
dental-technicians
Natural person only
dentists
dental-prosthetics
Natural person only
dentists
dentist
Natural person only
dentists
dentist-stomatologist
Natural person only
dentists
dento-alveolar-and-maxillofacial-stomatological-surgery
Natural person only
dentists
dento-alveolar-surgery
Natural person only
dentists
endodontics
Natural person only
dentists
general-stomatology-and-pediatric-dentistry
Natural person only
dentists
orthodontics-and-dento-facial-orthopedics
Natural person only
dentists
pediatric-dentistry
Natural person only
dentists
periodontology
Natural person only
dietitians-nutritionists
nutritionist-dietitian
Natural person only
family-medicine-general-practitioners
family-medicine
Natural person only
family-medicine-general-practitioners
general-practitioners
Natural person only
medical-specialists
allergology-and-clinical-immunology
Natural person only
medical-specialists
anesthesia-and-intensive-care
Natural person only
medical-specialists
anesthesiologist-and-icu-specialist
Natural person only
medical-specialists
cardiology
Natural person only
medical-specialists
clinical-pharmacology
Natural person only
medical-specialists
dermatovenereology
Natural person only
medical-specialists
diabetes-nutrition-and-metabolic-diseases
Natural person only
medical-specialists
emergency-medicine
Natural person only
medical-specialists
endocrinology
Natural person only
medical-specialists
gastroenterology
Natural person only
medical-specialists
geriatrics-and-gerontology
Natural person only
medical-specialists
hematology
Natural person only
medical-specialists
infectious-diseases
Natural person only
medical-specialists
internal-medicine
Natural person only
medical-specialists
medical-genetics
Natural person only
medical-specialists
medical-oncology
Natural person only
medical-specialists
medical-work-capacity-assessment
Natural person only
medical-specialists
neonatology
Natural person only
medical-specialists
nephrology
Natural person only
medical-specialists
neurology
Natural person only
medical-specialists
obstetrics-and-gynecology
Natural person only
medical-specialists
occupational-medicine
Natural person only
medical-specialists
ophthalmology
Natural person only
medical-specialists
otorhinolaryngology-ent
Natural person only
medical-specialists
pediatric-cardiology
Natural person only
medical-specialists
pediatric-gastroenterology
Natural person only
medical-specialists
pediatric-nephrology
Natural person only
medical-specialists
pediatric-neurology
Natural person only
medical-specialists
pediatric-oncology-and-hematology
Natural person only
medical-specialists
pediatric-ophthalmology
Natural person only
medical-specialists
pediatric-psychiatry
Natural person only
medical-specialists
pediatric-pulmonology
Natural person only
medical-specialists
physical-and-rehabilitation-medicine
Natural person only
medical-specialists
pneumophthisiology
Natural person only
medical-specialists
psychiatry
Natural person only
medical-specialists
public-health-and-health-management
Natural person only
medical-specialists
pulmonology
Natural person only
medical-specialists
radiotherapy
Natural person only
medical-specialists
rheumatology
Natural person only
medical-specialists
school-medicine
Natural person only
medical-specialists
sports-medicine
Natural person only
nurses-and-midwives
general-nurses-midwives-inpatient-facilities-emergency-units-ambulance
Natural person only
nurses-and-midwives
nurses-and-midwives-excluding-neonatology-and-ob-gyn
Natural person only
nurses-and-midwives
nurses-and-midwives-inpatient-facilities
Natural person only
nurses-and-midwives
nurses-and-midwives-inpatient-medical-units
Natural person only
nurses-and-midwives
nurses-and-midwives-primary-care-outpatient-clinics
Natural person only
nurses-and-midwives
self-employed-independent-practice-nurses-and-midwives-neonatology
Natural person only
nurses-and-midwives
self-employed-independent-practice-nurses-and-midwives-obstetrics-gynecology
Natural person only
paraclinical-specialists-biochemists-biologists
biochemists-biologists-chemists
Natural person only
paraclinical-specialists-biochemists-biologists
biologist
Natural person only
paraclinical-specialists-biochemists-biologists
chemist-in-healthcare-system
Natural person only
paraclinical-specialists-biochemists-biologists
epidemiology
Natural person only
paraclinical-specialists-biochemists-biologists
forensic-medicine
Natural person only
paraclinical-specialists-biochemists-biologists
hygiene
Natural person only
paraclinical-specialists-biochemists-biologists
laboratory-medicine
Natural person only
paraclinical-specialists-biochemists-biologists
medical-microbiology
Natural person only
paraclinical-specialists-biochemists-biologists
nuclear-medicine
Natural person only
paraclinical-specialists-biochemists-biologists
pathological-anatomy
Natural person only
paraclinical-specialists-biochemists-biologists
public-health-and-management
Natural person only
paraclinical-specialists-biochemists-biologists
radiology-medical-imaging
Natural person only
pharmacists
closed-circuit-pharmacists
Natural person only
pharmacists
open-circuit-pharmacists
Natural person only
pharmacy-assistants
pharmacy-assistants
Natural person only
physiotherapists-kinesiotherapists
kinesiotherapists-and-physio-kinesiotherapists
Natural person only
physiotherapists-kinesiotherapists
physiotherapist-kinesiotherapist
Natural person only
physiotherapists-kinesiotherapists
physiotherapist-medical-recovery
Natural person only
surgical-specialists
cardiac-and-major-vessel-surgery
Natural person only
surgical-specialists
cardiovascular-surgery
Natural person only
surgical-specialists
general-surgery
Natural person only
surgical-specialists
neurosurgery
Natural person only
surgical-specialists
obstetrics-and-gynecology-surgical
Natural person only
surgical-specialists
ophthalmology-surgical
Natural person only
surgical-specialists
oral-and-maxillofacial-surgery
Natural person only
surgical-specialists
orthopedics-and-traumatology
Natural person only
surgical-specialists
otorhinolaryngology-ent-surgical
Natural person only
surgical-specialists
pediatric-neurosurgery
Natural person only
surgical-specialists
pediatric-orthopedics
Natural person only
surgical-specialists
pediatric-surgery
Natural person only
surgical-specialists
plastic-aesthetic-and-reconstructive-microsurgery
Natural person only
surgical-specialists
plastic-and-reparatory-surgery
Natural person only
surgical-specialists
thoracic-surgery
Natural person only
surgical-specialists
urology
Natural person only
surgical-specialists
vascular-surgery
Natural person only

6.4.2 Transform offer to policy​

Business rules:

  • payment.documentNumber becomes mandatory when payment.method equals broker receipt; for every other payment method it stays optional.
Parameter
Type
Required
Description
Validation rules
additionalData.payer
object
No
Person/entity the payment receipt should be issued to, instead of the insured.
—
additionalData.payer.businessName
string
Conditional
Payer’s legal entity name.
Required if lastName and firstName are absent.
additionalData.payer.companyRegistryNumber
string
No
Payer’s company registry number, only meaningful for a legal entity.
—
additionalData.payer.lastName
string
Conditional
Payer’s last name.
Required if businessName is absent.
additionalData.payer.firstName
string
Conditional
Payer’s first name.
Required if businessName is absent.
additionalData.payer.taxId
string
Yes, if payer is present
Payer’s CNP/CUI.
—
additionalData.payer.address
object
Yes, if payer is present
Payer’s address.
Must include street, houseNumber, county, and city.
additionalData.payer.address.street
string
Yes, if payer.address is present
Payer’s street name.
—
additionalData.payer.address.houseNumber
string
Yes, if payer.address is present
Payer’s house number.
—
additionalData.payer.address.county
string
Yes, if payer.address is present
Payer’s county.
—
additionalData.payer.address.city
string
Yes, if payer.address is present
Payer’s city.
—
additionalData.premiumAdjustment
number
No
Increased premium amount.
—

6.5 Uniqa - Malpraxis​

6.5.1 Offer​

Business rules:

  • The product.liability.type field can only equal malpraxis.

  • product.liability.coverage.moralClaims.value, when moralClaims.isIncluded is true, must be one of [10, 20, 25, 50] — for Uniqa this field is a sublimit percentage

  • product.policyholder.address.postcode is mandatory and numeric.

  • product.customer.address.postcode is mandatory and numeric whenever product.customer is submitted.

  • product.additionalData.product.medicalUnit is mandatory.

  • product.additionalData.product.anteriority.startDate is mandatory (format YYYY-MM-DD) only when anteriority.oneYear is true; it is not required for the two-year anteriority clause.

  • product.additionalData.product.sublimit, when submitted, must be one of [10, 20, 25, 50] (percentage applied to the main insured risk); defaults to 10 when omitted.

  • product.liability.coverage.policyLimit or product.liability.coverage.perEvent needs to be included

Minimum policy limit per speciality760

product.liability.category
product.liability.speciality
Minimum policy limit (EUR)
family-medicine-general-practitioners
all supported specialities
12000
medical-specialists
all supported specialities
37000
surgical-specialists
all supported specialities
62000
dentists
all supported specialities
37000
paraclinical-specialists-biochemists-biologists
all supported specialities
10000
nurses-and-midwives
self-employed-independent-practice-nurses-and-midwives
20000
nurses-and-midwives
general-nurses-midwives-inpatient-facilities-emergency-units-ambulance
10000
nurses-and-midwives
nurses-and-midwives-primary-care-outpatient-clinics
4000
nurses-and-midwives
nurses-hygiene-public-health-forensic-institutes
no minimum
physiotherapists-kinesiotherapists
all supported specialities
20000
psychologists
all supported specialities
37000
pharmacists
all supported specialities
5000
pharmacy-assistants
all supported specialities
2000
Parameter
Type
Required
Description
Validation rules
product.additionalData.product.medicalUnit
string
Yes
Medical unit where the insured practices
product.additionalData.product.discount
number
No
Requested discount percentage
Defaults to 0 when omitted
product.additionalData.product.premiumIncrease
number
No
Requested premium increase percentage
Defaults to false
product.additionalData.product.isStaggeredPayment
boolean
No
Whether the premium is paid in staggered installments rather than as a single payment
Defaults to false
product.additionalData.product.anteriority.oneYear
boolean
No
One-year anteriority clause
Defaults to false
product.additionalData.product.anteriority.twoYears
boolean
No
Two-year anteriority clause
Defaults to false
product.additionalData.product.anteriority.startDate
date
Conditional
Start date of the anteriority clause
Format YYYY-MM-DD.
Required when product.additionalData.product.anteriority.oneYear is true
product.additionalData.product.sublimit
integer
No
Sublimit percentage applied to the main insured risk
One of [10, 20, 25, 50]. Defaults to 10

6.5.2 Transform offer to policy​

Business rules:

  • payment.date must be on or after today's date.

  • payment.documentNumber is not required; a document-number format rule still applies whenever one is supplied.

No other additional data is required.

6.6 Garanta - Malpraxis​

6.6.1 Offer​

Business rules:

  • The product.liability.type field can only equal malpraxis.

  • The product.liability.termTime must be exactly 12

  • The product.liability.installmentCount field accepts values [1, 2, 4].

  • product.liability.startDate must fall between tomorrow and today + 120 days

  • product.liability.coverage.policyLimit.isIncluded is mandatory and must be true

  • product.liability.coverage.policyLimit.value and coverage.moralClaims.value are checked against a per category/speciality liability-limit table: policyLimit.value must fall between that combination's standard limit (floor) and its measured ceiling, inclusive, and moralClaims.value must fall within that combination's min/max band.

  • The product.liability.renewPolicy is mandatory when product.additionalData.product.liability.retroactivePeriod is set with 12-months or 24-months

  • Name fields of product.policyholder and product.customer follow Garanta's limits: lastName, firstName and businessName must be strings of 2–100 characters, and companyRegistryNumber at most 20 characters

  • The product.policyholder can only be a natural person.

  • Address fields of product.policyholder.address and product.customer.address follow Garanta's limits: street at most 100 characters, houseNumber at most 12, building at most 15, staircase at most 10, apartment at most 8, and postcode must be exactly 6 digits.

  • The product.liability.renewPolicy.series is mandatory to be equal to RCM if sent

  • product.policyholder.mobileNumber is mandatory, and so is product.customer.mobileNumber whenever a separate customer is submitted

  • The following coverage/condition elements are not supported at all and must be declined (omitted or false): perEvent, auxiliaryStaff, eScooter, extendedReportingPeriod, feesCompensation, conditions.locationCount, conditions.turnover, conditions.lossHistoryWithin5Years, conditions.claimsWithin3Years.

  • product.additionalData.product.liability.secondSpeciality is required only when hasDualSpeciality is true

  • product.additionalData.product.liability.retroactivePeriod, when submitted, must be one of none, 12-months, 24-months (default none).

  • product.additionalData.product.policyholder.publicFunctionHeld is required when politicallyExposedPerson is true.

  • product.additionalData.product.policyholder.share, when submitted, must be a number between 0 and 100 (default 100).

  • A resident doctor (residentDoctor = true) cannot be combined with moral claims cover or a retroactive period: coverage.moralClaims.isIncluded must not be true and retroactivePeriod must be none (or omitted).

  • product.additionalData.product.policyholder.publicFunctionHeld may be at most 200 characters.

Category/speciality liability limits1054

product.liability.category
product.liability.speciality
policyLimitMin (EUR)
policyLimitMax (EUR)
moralClaimsMin (EUR)
moralClaimsMax (EUR)
nurses-and-midwives
self-employed-independent-practice-nurses-and-midwives-alt
20000
20000
1000
2500
nurses-and-midwives
self-employed-independent-practice-nurses-and-midwives-neonatology
20000
20000
1000
2500
nurses-and-midwives
self-employed-independent-practice-nurses-and-midwives-obstetrics-gynecology
20000
20000
1000
2500
pharmacy-assistants
pharmacy-assistants
2000
5000
500
1000
pharmacists
open-circuit-pharmacists
5000
5000
1000
2500
pharmacists
closed-circuit-pharmacists
5000
5000
1000
2500
family-medicine-general-practitioners
family-medicine
12000
24000
2500
5000
family-medicine-general-practitioners
general-practitioners
12000
24000
2500
5000
surgical-specialists
cardiovascular-surgery
62000
124000
5000
10000
surgical-specialists
cardiac-and-major-vessel-surgery
62000
124000
5000
10000
surgical-specialists
general-surgery
62000
124000
5000
10000
surgical-specialists
oral-and-maxillofacial-surgery
62000
124000
5000
10000
surgical-specialists
pediatric-surgery
62000
124000
5000
10000
surgical-specialists
plastic-aesthetic-and-reconstructive-microsurgery
62000
124000
5000
10000
surgical-specialists
plastic-and-reparatory-surgery
62000
124000
5000
10000
surgical-specialists
thoracic-surgery
62000
124000
5000
10000
surgical-specialists
vascular-surgery
62000
124000
5000
10000
surgical-specialists
neurosurgery
62000
124000
5000
10000
surgical-specialists
pediatric-neurosurgery
62000
124000
5000
10000
surgical-specialists
obstetrics-and-gynecology-surgical
62000
124000
5000
10000
surgical-specialists
ophthalmology-surgical
62000
124000
5000
10000
surgical-specialists
orthopedics-and-traumatology
62000
124000
5000
10000
surgical-specialists
pediatric-orthopedics
62000
124000
5000
10000
surgical-specialists
otorhinolaryngology-ent-surgical
62000
124000
5000
10000
surgical-specialists
urology
62000
124000
5000
10000
medical-specialists
allergology-and-clinical-immunology
37000
74000
2500
5000
medical-specialists
anesthesia-and-intensive-care
37000
74000
2500
5000
medical-specialists
anesthesiologist-and-icu-specialist
37000
74000
2500
5000
medical-specialists
infectious-diseases
37000
74000
2500
5000
medical-specialists
cardiology
37000
74000
2500
5000
medical-specialists
pediatric-cardiology
37000
74000
2500
5000
medical-specialists
dermatovenereology
37000
74000
2500
5000
medical-specialists
diabetes-nutrition-and-metabolic-diseases
37000
74000
2500
5000
medical-specialists
endocrinology
37000
74000
2500
5000
medical-specialists
clinical-pharmacology
37000
74000
2500
5000
medical-specialists
gastroenterology
37000
74000
2500
5000
medical-specialists
pediatric-gastroenterology
37000
74000
2500
5000
medical-specialists
medical-genetics
37000
74000
2500
5000
medical-specialists
geriatrics-and-gerontology
37000
74000
2500
5000
medical-specialists
hematology
37000
74000
2500
5000
medical-specialists
emergency-medicine
37000
74000
2500
5000
medical-specialists
internal-medicine
37000
74000
2500
5000
medical-specialists
occupational-medicine
37000
74000
2500
5000
medical-specialists
school-medicine
37000
74000
2500
5000
medical-specialists
sports-medicine
37000
74000
2500
5000
medical-specialists
nephrology
37000
74000
2500
5000
medical-specialists
pediatric-nephrology
37000
74000
2500
5000
medical-specialists
neonatology
37000
74000
2500
5000
medical-specialists
neurology
37000
74000
2500
5000
medical-specialists
pediatric-neurology
37000
74000
2500
5000
medical-specialists
obstetrics-and-gynecology
37000
74000
2500
5000
medical-specialists
ophthalmology
37000
74000
2500
5000
medical-specialists
pediatric-ophthalmology
37000
74000
2500
5000
medical-specialists
medical-oncology
37000
74000
2500
5000
medical-specialists
pediatric-oncology-and-hematology
37000
74000
2500
5000
medical-specialists
otorhinolaryngology-ent
37000
74000
2500
5000
medical-specialists
pulmonology
37000
74000
2500
5000
medical-specialists
pediatric-pulmonology
37000
74000
2500
5000
medical-specialists
psychiatry
37000
74000
2500
5000
medical-specialists
pediatric-psychiatry
37000
74000
2500
5000
medical-specialists
radiotherapy
37000
74000
2500
5000
medical-specialists
rheumatology
37000
74000
2500
5000
dentists
dento-alveolar-surgery
37000
74000
2500
5000
dentists
dento-alveolar-and-maxillofacial-stomatological-surgery
37000
74000
2500
5000
dentists
endodontics
37000
74000
2500
5000
dentists
dental-prosthetics
37000
74000
2500
5000
dentists
orthodontics-and-dento-facial-orthopedics
37000
74000
2500
5000
dentists
periodontology
37000
74000
2500
5000
dentists
general-stomatology-and-pediatric-dentistry
37000
74000
2500
5000
dentists
pediatric-dentistry
37000
74000
2500
5000
dentists
dentist-stomatologist
37000
74000
2500
5000
dentists
dentist
37000
74000
2500
5000
dietitians-nutritionists
nutritionist-dietitian
5000
5000
1000
2500
ancillary-medical-service-providers
dietitian
5000
5000
1000
2500
physiotherapists-kinesiotherapists
physiotherapist-kinesiotherapist
20000
20000
1000
2500
physiotherapists-kinesiotherapists
physiotherapist-medical-recovery
20000
20000
1000
2500
physiotherapists-kinesiotherapists
kinesiotherapists-and-physio-kinesiotherapists
20000
20000
1000
2500
ancillary-medical-service-providers
laboratory-medicine-biochemist-biologist-physicist
10000
40000
1000
2500
paraclinical-specialists-biochemists-biologists
laboratory-medicine
10000
40000
1000
2500
paraclinical-specialists-biochemists-biologists
biochemists-biologists-chemists
10000
40000
1000
2500
paraclinical-specialists-biochemists-biologists
biologist
10000
40000
1000
2500
ancillary-medical-service-providers
psychologist
37000
74000
2500
5000
psychologists
psychologists-specialized-in-autism-spectrum-disorder
37000
74000
2500
5000
paraclinical-specialists-biochemists-biologists
pathological-anatomy
10000
20000
1000
2500
paraclinical-specialists-biochemists-biologists
epidemiology
10000
20000
1000
2500
paraclinical-specialists-biochemists-biologists
hygiene
10000
20000
1000
2500
paraclinical-specialists-biochemists-biologists
forensic-medicine
10000
20000
1000
2500
paraclinical-specialists-biochemists-biologists
nuclear-medicine
10000
20000
1000
2500
paraclinical-specialists-biochemists-biologists
medical-microbiology
10000
40000
1000
2500
paraclinical-specialists-biochemists-biologists
radiology-medical-imaging
10000
20000
1000
2500
paraclinical-specialists-biochemists-biologists
public-health-and-management
10000
20000
1000
2500
medical-specialists
public-health-and-health-management
10000
20000
1000
2500
Parameter
Type
Required
Description
Validation rules
product.additionalData.product.liability.residentDoctor
boolean
No
Resident doctor flag
Defaults to false
product.additionalData.product.liability.hasDualSpeciality
boolean
No
Whether the insured practices a second speciality
Defaults to false
product.additionalData.product.liability.secondSpeciality
string
Conditional
Canonical malpraxis speciality value for the second speciality
Required when hasDualSpeciality is true. Must differ from product.liability.speciality.
product.additionalData.product.liability.retroactivePeriod
string
No
Retroactive coverage period
One of none, 12-months, 24-months.
Defaults to none.
product.additionalData.product.liability.claimsHistory
boolean
No
Prior claims history flag
Defaults to false
product.additionalData.product.liability.claimsHistoryDetails
string
No
Free-text claims history details
product.additionalData.product.policyholder.politicallyExposedPerson
boolean
No
Defaults to false
product.additionalData.product.policyholder.publicFunctionHeld
string
Conditional
Required when politicallyExposedPerson is true
product.additionalData.product.policyholder.occupation
string
No
product.additionalData.product.policyholder.profession
string
No
product.additionalData.product.policyholder.share
number
No
Insured's share/quota
Between 0 and 100. Defaults to 100

6.6.2 Transform offer to policy​

Business rules:

  • additionalData.payer.taxId and additionalData.payer.address (with street, houseNumber, county, city) become mandatory whenever additionalData.payer is submitted.

  • additionalData.payer.businessName is required whenever it is present in the payload at all (a legal-entity payer cannot submit an empty businessName); for an individual payer, lastName/firstName are required whenever businessName is absent.

  • additionalData.payer.taxId and additionalData.payer.address are also format-checked, using the same platform rules as the policyholder's own fields.

  • additionalData.payer.taxId must be a valid CNP for an individual payer, or a valid CUI when payer.businessName is present.

  • additionalData.payer.address.county must be a valid county code from the county nomenclature

  • additionalData.payer.lastName, firstName and businessName must be strings of 2–100 characters, and companyRegistryNumber at most 20 characters

Parameter
Type
Required
Description
Validation rules
additionalData.payer
object
No
Person/entity the payment receipt should be issued to, instead of the insured
additionalData.payer.businessName
string
Conditional
Payer's legal entity name
additionalData.payer.companyRegistryNumber
string
No
Payer's company registry number
additionalData.payer.lastName
string
Conditional
Payer's last name
additionalData.payer.firstName
string
Conditional
Payer's first name
additionalData.payer.taxId
string
Yes, if additionalData.payer is present
Payer's CNP/CUI
additionalData.payer.address
object
Yes, if additionalData.payer is present
Payer's address
additionalData.payer.address.street
string
Yes, if additionalData.payer.address is present
additionalData.payer.address.houseNumber
string
Yes, if additionalData.payer.address is present
additionalData.payer.address.county
string
Yes, if additionalData.payer.address is present
additionalData.payer.address.city
string
Yes, if additionalData.payer.address is present
additionalData.premiumAdjustment
number
No
Increased premium amount