← HomeFleetPay / Schema

EmitirVpoRequest

Structure preserved from the versioned API contract.

Technical descriptions are translated from the versioned contract. Original identifiers and JSON are preserved; data examples are omitted.

transportador_documentostringRequired

Contracted carrier's CPF or CNPJ (digits only).

maxLength20
transportador_rntrcstringRequired

Carrier's RNTRC (FleetPay checks with ANTT; ANTT's RNTRC takes precedence).

maxLength20
transportador_nomestring | nullOptional

Carrier name (optional; defaults to ANTT's name when absent).

maxLength150
placastringRequired

Vehicle license plate (with an operator tag and listed in the RNTRC fleet).

maxLength10
eixosintegerRequired

Axle count.

minimum2
maximum10
operadorastring | nullOptional

Toll operator.

"sem_parar" · "conectcar" · "veloe" · "move_mais"
modalidadestringRequired

Route option.

"planejada" · "estendida" · "customizada"
valor_pedagionumberRequired

Quoted route toll amount (rotas[n].valor_total).

minimum0.01
vigencia_iniciostring · dateRequired

Validity start date (YYYY-MM-DD).

vigencia_fimstring · dateRequired

Validity end date (YYYY-MM-DD).

pracasarrayRequired

Required for sem_parar. Toll plazas from the selected quoted route (rotas[n].pracas), including each plaza's id. You may resend the quote objects unchanged.

minItems1
numero_ciotstring | nullOptional

CIOT number for the transport operation.

maxLength50
referencia_externastring | nullOptional

Your reference (order, trip).

maxLength100
origem_cidadestring | nullOptional

Origin city.

origem_ufstring | nullOptional

Origin state.

maxLength2
destino_cidadestring | nullOptional

Destination city.

destino_ufstring | nullOptional

Destination state.

maxLength2
desvio_autorizado_porstring | nullOptional

For a supplementary voucher: who authorized the detour.

"embarcador" · "motorista"
emuladoboolean | nullOptional

Sandbox only. When true, issuance actually takes place with the operator (trip, ANTT number, receipt, cancellation), but no amount is debited from or refunded to the Operational Account. In production, the request is rejected (422).

Original JSON Definition (Portuguese Descriptions)
{
  "type": "object",
  "required": [
    "transportador_documento",
    "transportador_rntrc",
    "placa",
    "eixos",
    "modalidade",
    "valor_pedagio",
    "vigencia_inicio",
    "vigencia_fim",
    "pracas"
  ],
  "properties": {
    "transportador_documento": {
      "type": "string",
      "description": "CPF ou CNPJ do transportador contratado (apenas números).",
      "maxLength": 20
    },
    "transportador_rntrc": {
      "type": "string",
      "description": "RNTRC do transportador (a FleetPay confere na ANTT; vale o RNTRC da ANTT).",
      "maxLength": 20
    },
    "transportador_nome": {
      "type": "string",
      "description": "Nome do transportador (opcional; sem ele vale o nome da ANTT).",
      "nullable": true,
      "maxLength": 150
    },
    "placa": {
      "type": "string",
      "description": "Placa do veículo (com tag na operadora e na frota do RNTRC).",
      "maxLength": 10
    },
    "eixos": {
      "type": "integer",
      "description": "Quantidade de eixos.",
      "minimum": 2,
      "maximum": 10
    },
    "operadora": {
      "type": "string",
      "description": "Operadora de pedágio.",
      "enum": [
        "sem_parar",
        "conectcar",
        "veloe",
        "move_mais"
      ],
      "nullable": true
    },
    "modalidade": {
      "type": "string",
      "description": "Modalidade da rota.",
      "enum": [
        "planejada",
        "estendida",
        "customizada"
      ]
    },
    "valor_pedagio": {
      "type": "number",
      "description": "Pedágio da rota cotada (`rotas[n].valor_total`).",
      "minimum": 0.01
    },
    "vigencia_inicio": {
      "type": "string",
      "description": "Início da vigência (AAAA-MM-DD).",
      "format": "date"
    },
    "vigencia_fim": {
      "type": "string",
      "description": "Fim da vigência (AAAA-MM-DD).",
      "format": "date"
    },
    "pracas": {
      "type": "array",
      "minItems": 1,
      "description": "**Obrigatório para `sem_parar`.** As praças da rota escolhida na cotação (`rotas[n].pracas`), com o `id` de cada uma. Pode reenviar os objetos da cotação como vieram.",
      "items": {
        "type": "object",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Id da praça."
          },
          "nome": {
            "type": "string",
            "description": "Nome da praça."
          }
        }
      }
    },
    "numero_ciot": {
      "type": "string",
      "description": "Número do CIOT da operação de transporte.",
      "nullable": true,
      "maxLength": 50
    },
    "referencia_externa": {
      "type": "string",
      "description": "Sua referência (pedido, viagem).",
      "nullable": true,
      "maxLength": 100
    },
    "origem_cidade": {
      "type": "string",
      "description": "Cidade de origem.",
      "nullable": true
    },
    "origem_uf": {
      "type": "string",
      "description": "UF de origem.",
      "nullable": true,
      "maxLength": 2
    },
    "destino_cidade": {
      "type": "string",
      "description": "Cidade de destino.",
      "nullable": true
    },
    "destino_uf": {
      "type": "string",
      "description": "UF de destino.",
      "nullable": true,
      "maxLength": 2
    },
    "desvio_autorizado_por": {
      "type": "string",
      "description": "No complemento: quem autorizou o desvio.",
      "enum": [
        "embarcador",
        "motorista"
      ],
      "nullable": true
    },
    "emulado": {
      "type": "boolean",
      "description": "**Somente homologação.** Com `true`, a emissão acontece de verdade na operadora (viagem, nº ANTT, recibo, cancelamento) mas **nenhum valor é debitado ou estornado** da Conta Operacional. Em produção o pedido é recusado (422).",
      "nullable": true,
      "default": false
    }
  }
}