Client → Start
Client ← NextStep
Client → Step
Client ← NextStep
...
Client → Payment
Client → Ticket/{parentPath}/insurances/start/{terminalId}/{operatorId}{
"rc": 0,
"phases": ["USER", "VEHICULE", "PLAN", "QUOTE"],
"phase": "USER",
"name": "Customer validation",
"description": "Customer data input for identification",
"front": [
{
"name": "documentType",
"label": "Document type",
"description": "Identification document type",
"type": "SELECT",
"required": true,
"from": [
{ "text": "ID Card", "value": "cedula" },
{ "text": "Tax ID", "value": "rnc" },
{ "text": "Passport", "value": "pasaporte" }
]
},
{
"name": "document",
"label": "Identification number",
"description": "Customer identification number",
"type": "INPUT",
"required": true
}
],
"nextStep": {
"path": "insurances/step/999999/1111/2",
"method": "POST",
"inputs": {
"required": ["documentType", "document"]
}
}
}| Field | Description |
|---|---|
| name | Field name |
| type | Field type (SELECT, INPUT, etc.) |
| from | Allowed values (if applicable) |
front, only allowed values must be sent./{parentPath}/{nextStep.path}required.[
{ "key": "documentType", "value": "cedula" },
{ "key": "document", "value": "00112345678" }
]{
"rc": 0,
"insuranceId": "ABC123DEF456GHI789",
"phase": "USER",
"name": "Customer details",
"description": "Customer data input",
"front": [
{ "name": "clientName", "label": "First name", "type": "INPUT", "required": true },
{ "name": "clientLastName", "label": "Last name", "type": "INPUT", "required": true },
{ "name": "clientEmail", "label": "Email", "type": "INPUT", "required": true },
{ "name": "clientPhone", "label": "Phone", "type": "INPUT", "required": true }
],
"nextStep": {
"path": "insurances/step/999999/1111/2",
"method": "POST",
"inputs": {
"required": [
"insuranceId",
"clientName",
"clientLastName",
"clientEmail",
"clientPhone"
]
}
}
}insuranceId field must be propagated in all subsequent steps.POST, the backend responds with:nextStep, ornextStep.path"payment": truenextStep object."nextStep": {
"path": "insurances/payment/999999/1111",
"method": "POST",
"payment": true
}payment = true, the client must not request another step and must proceed directly to the Payment operation.{
"amountToSendX100": 100,
"account": "ABC123DEF456GHI789",
"localDateTime": "2025-12-01T11:20:46Z"
}account must contain the insuranceIdamountToSendX100 is the insurance amount multiplied by 100/{parentPath}/insurances/ticket/{terminalId}/{operatorId}/{reference}front