0% acharam este documento útil (0 voto)
5 visualizações38 páginas

Referência da API TMOVPay 4.2.6

Este documento apresenta uma API de referência para serviços relacionados a contratos de frete, pagamento de pedágios, cadastro e autenticação de usuários. A API contém endpoints para emissão, alteração e cancelamento de contratos de frete, consultas de custos de rotas de pedágio, cadastro de pessoas físicas e jurídicas e módulos de autenticação e pagamento.

Enviado por

Neilor Caldeira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
5 visualizações38 páginas

Referência da API TMOVPay 4.2.6

Este documento apresenta uma API de referência para serviços relacionados a contratos de frete, pagamento de pedágios, cadastro e autenticação de usuários. A API contém endpoints para emissão, alteração e cancelamento de contratos de frete, consultas de custos de rotas de pedágio, cadastro de pessoas físicas e jurídicas e módulos de autenticação e pagamento.

Enviado por

Neilor Caldeira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

API Reference

TMOVPay Docs
API Version: 4.2.6

Swagger documentation

CONTACT

1 of 38
INDEX
1. API PARA ROTEIRIZAÇÃO DE PEDÁGIO 4
1.1 POST /pedagios/consultarCustoRota 4
1.2 GET /pedagios/consultarRotaHistorico 4

2. CONTRATO 6
2.1 POST /v2/contratos 6
2.2 PATCH /v2/contratos 11
2.3 PATCH /v2/contratos/{idContrato}/bloquear 15
2.4 PATCH /v2/contratos/{idContrato}/desbloquear 17
2.5 PATCH /v2/contratos/{idIntegracao}/atualizarLancamentos 19
2.6 GET /v2/contratos/integracao/{idIntegracao} 22
2.7 POST /v2/contratos/cancelarContrato 24

3. MODULO CARTÃO 27
3.1 GET /cartoes/possuiCartaoVinculadoPorCpf/{cpf} 27
3.2 POST /cartoes/vincularCartaoPorDocumento 27
3.3 POST /cartoes/substituirCartao 27
3.4 PUT /cartoes/alterarSenha 28

4. MODULO DE PESSOA JURÍDICA 29


4.1 PUT /pessoaJuridicas 29
4.2 POST /pessoaJuridicas 30
4.3 POST /pessoaJuridicas/enviarDocumentos 32

5. MODULO DE PESSOAFISICAS 33
5.1 POST /pessoaFisicas 33
5.2 POST /pessoaFisicas/enviarDocumentos 33

6. MÓDULO AUTENTICAÇÃO 34
6.1 POST /tmov-pay/token 34

7. MÓDULO DE CONTA 35
7.1 GET /contas/possuiConta/{documento} 35

8. PAGAMENTO DE FRETE 36
8.1 GET /v2/contratoQuitacoesSaldo/buscarPorToken/{token} 36
8.2 POST /v2/contratoQuitacoesSaldo 37
8.3 POST /v2/contratoQuitacoesSaldo/{idIntegracao}/documento 38
8.4 GET /v2/contratoQuitacoesSaldo/download 38

2 of 38
Security and Authentication
SECURITY SCHEMES

KEY TYPE DESCRIPTION


bearer http, bearer, JWT

3 of 38
API
1. API PARA ROTEIRIZAÇÃO DE PEDÁGIO

1.1 POST /pedagios/consultarCustoRota

REQUEST
REQUEST BODY - application/json
{
ExibirDetalhes* boolean
QtdEixos* number
TipoVeiculo* number Tipos do veículo: 0 - Carro, 1 - Moto, 2 - Onibus e 3 - Caminhao
Localizacoes* [{
Array of object:

IbgeCidade* number
}]
}

RESPONSE

STATUS CODE - 200: Roteirização realizada com sucesso

RESPONSE MODEL - application/json


{
Pracas* [{
Array of object:

Nome* string Nome da Praça


Localizacao* {
Latitude* number
Longitude* number
}
Telefone string
Concessao* string
CodigoAntt* string
Precos* [{
Array of object:

precoEixoAdicional* number
valor* number
valorTag* number
}]
}]
CustoTotal* number Custo Total da rota
IdentificadorHistorico* string Identificador do histórico da consulta
}

1.2 GET /pedagios/consultarRotaHistorico

REQUEST
QUERY PARAMETERS
NAME TYPE DESCRIPTION

*idRoteirizacao string

4 of 38
RESPONSE

STATUS CODE - 200: Consulta Histórico realizada com sucesso

RESPONSE MODEL - application/json


{
qtdEixos* number
tipoVeiculo* string
custoTotal* number
ibgeOrigem* number
nomeCidadeOrigem* string
estadoOrigem* string
ibgeDestino* number
nomeCidadeDestino* string
estadoDestino* string
latitudeOrigem* number
longitudeOrigem* number
latitudeDestino* number
longitudeDestino* number
pracas* [{
Array of object:

nome* string
latitude* number
longitude* number
telefone* string
valor* number
precoEixoAdicional* number
enderecoDescricao* string
concessao* string
}]
identificadorHistorico* string
}

5 of 38
2. CONTRATO

2.1 POST /v2/contratos

Emite um contrato de frete dentro do Tmov Pay

Salva um contrato

REQUEST
REQUEST BODY - application/json
{
idIntegracaoExterno* string ID de integraca do contrato do cliente
cnpjCliente* string CNPJ do cliente que emitiu o cte, o mesmo
responsável pelo pagamento
clienteRemetente* {
Dados do Remetente da Viagem

documento* string CNPJ do remetente


razaoSocial* string Razão social do remetente
nomeFantasia* string Nome Fantasia do remetente
tipoPessoa* string
endereco* {
cep* string
cidadeIbge* number
logradouro* string
bairro* string
numero* string
}
}
clienteDestinatario* {
Dados do Destinatário da Viagem

documento* string CNPJ do destinatário


razaoSocial* string Razao Social do destinatario
nomeFantasia* string Nome Fantasia do destinatário
tipoPessoa* string
endereco* {
cep* string
cidadeIbge* number
logradouro* string
bairro* string
numero* string
}
}
contratado* {
Dados do contratado do frete

rntrc* string
documento* string
razaoSocial* string
nomeFantasia* string
tipoPessoa* string
endereco* {
cep* string
cidadeIbge* number
logradouro* string

6 of 38
bairro* string
numero* string
}
}
veiculos* [{
Array of object:

placa* string
rntrc* string
}]
motorista* {
Dados do motorista responsável pelo frete

nome* string
cpf* string
cnh* string
}
coleta* {
Dados da coleta

cidadeIbge* number
cep* string
dataInicioFrete* string
cepPorAPI string
latitude {
}
longitude {
}
cidade {
nome* string
codigoIbge* number
latitude* number
longitude* number
estado* {
nome* string
sigla* string
}
}
}
entrega* {
Dados da entrega

cidadeIbge* number
cep* string
dataPrevisaoTerminoFrete* string
cepPorAPI string
latitude {
}
longitude {
}
cidade {
nome* string
codigoIbge* number
latitude* number
longitude* number
estado* {
nome* string
sigla* string
}
}
}

7 of 38
carga {
Dados da carga sendo transportada

codigoNatureza* number Código da natureza da carga


peso* number
}
ciot {
Dados do ciot

declararCiot boolean DEFAULT:true


subContratacao boolean
ciotPrincipal string
altoDesempenho boolean
destinacaoComercial boolean
freteRetorno {
cep* string
distancia* number
}
}
viagem* {
Dados referente aos valores da viagem

kmDistanciaPercorrida* number
valorMercadoria* number
valorFrete* number
valorAdiantamento number
statusAdiantamento* enum ALLOWED:EM_ABERTO,
BLOQUEADO, CANCELADO, QUITADO,
PAGO_EMBARCADOR, EM_PROCESSAMENTO, FALHA,
AGENDADO
valorSaldo* number
valorEstadia number
valorRpa number
valorCombustivel number
valorIrrpf* number
valorInss* number
valorSestSenat* number
dataEmissao* string
quantidadeTarifas number
valorTarifas number
}
pedagio {
pedagioPagoEmbarcador* boolean
valorPedagio* number
identificadorHistorico* string
quantidadeEixos* number
tipoVeiculo* string Tipos do veículo: 0 - Carro, 1 - Moto, 2 - Onibus e 3 - Caminhao
fornecedor number
}
regras* {
Regras para quitação de saldo

percentualToleranciaPeso* number
tarifaTonelada* number
tipoQuebraMercadoria* enum ALLOWED:INTEGRAL, DIFERENCA, NAO_COBRAR
freteLotacao* boolean
documentosObrigatoriosQuitacao [string]
}
documentosFiscais* [{
Array of object:

numeroDocumento* number
serie* string

8 of 38
pesoSaida* number
valor* number
tipoDocumento* number 0: Outros, 1: CTE, 2: NF_SERVICO, 3: ORDEM_COLETA, 4: NOTA_FISCAL
}]
acrescimosSaldo* [{
Array of object:

descricao* string
valor* number
}]
descontosSaldo* [{
Array of object:

descricao* string
valor* number
}]
idViagem number
clienteTomador* {
Dados referente ao cliente tomador do serviço, pagador da viagem

cpfCnpj* string
nomeFantasia* string
razaoSocial* string
}
filialEmissora* {
Dados referente a unidade/filial que está emitindo o frete

cnpj* string
razaoSocial* string
nomeFantasia* string
codigoFilial* string Código externo da filial
}
distancia* number
dataEmissao string
}

RESPONSE

STATUS CODE - 201: salva um contrato

RESPONSE MODEL - application/json


{
id* number
idIntegracao* string
contratoVeiculos* [string]
motorista* {
nome* string
cnh* string
cpf* string
rg* string
}
contratoCarga* {
cidadeColeta* {
}
cepColeta* string
dataInicio* string
cidadeEntrega* {
}
cepEntrega* string
dataPrevisaoEntrega* string
cargaCodigoNatureza* {

9 of 38
descricao* string
codigo* number
ativo* boolean
}
cargaPeso* number
valorMercadoria* number
valorFrete* number
valorCombustivel* number
ativo* boolean
}
ciotDeclarar* boolean
ciotSubContratacao* boolean
ciotAltoDesempenho* boolean
ciotDestinacaoComercial* boolean
ciotPrincipal* string
pedagioPagoEmbarcador* boolean
distancia* number
irrpf* number
inss* number
outrosDescontos* number
outrosAcrescimos* number
debitosInclusos* number
creditosInclusos* number
sestSenat* number
quantidadeTarifas* number
valorTarifas* number
distanciaRetorno* number
cepRetorno* string
dataEmissao* string
contratoLancamentos* [{
Array of object:

id* number
valorOriginal* number
valorPago* number
geraProtocolo boolean
dadosPedagio* {
fornecedor* number
tipoVeiculo* string
idroteirizacao* string
quantidadeEixos* number
dataFinal* string
numeroRegistro* number
origem* string
protocolo* string
avisoTransportador* string
status* number
ativo* boolean
}
contratoLancamentoTipo* {
descricao* string
codigo* string
ativo* boolean
}
contratoLancamentoStatus* {
descricao* string
codigo* string
ativo* boolean

10 of 38
}
contratoQuitacaoSaldo* {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
formaPagamento* {
descricao* string
codigo* string
}
token* string
ativo* boolean
dataPagamento* string
cartao* boolean
dataCodigoSeguranca* string
dataBloqueio* string
}]
contratoCiot* {
ciot* string
codigoVerificador* string
avisoTransportador* string
senhaAlteracao* string
emContingencia* boolean
ativo* boolean
}
ativo* boolean
}

2.2 PATCH /v2/contratos

Faz a atualização de um contrato e seus lançamentos

Se hover alteração de status de lançamento para quitado. O Lançamento será pago ao motorista

REQUEST
REQUEST BODY - application/json
{
idViagem number ID do contrato no TMOV Pay
idIntegracao* string ID de integração do cliente parceiro
lancamentos {
contratoLancamento* [{
Array of object:

id* number ID do lançamento no tmovpay


valor* number
valorPago* number
tipo* enum ALLOWED:ADIANTAMENTO, SALDO, ESTADIA, RPA,
PEDAGIO, AJUSTE_SALDO
status* enum ALLOWED:EM_ABERTO, BLOQUEADO, CANCELADO,
QUITADO, PAGO_EMBARCADOR, EM_PROCESSAMENTO,
FALHA, AGENDADO
habilitarPagamentoCartao* boolean
token string

11 of 38
contratoQuitacaoSaldo {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
dataPagamento* string
dadosPedagio* {
identificadorHistorico* string
quantidadeEixos* number
tipoVeiculo* string
fornecedor* number
}
}]
}
documentosFiscais* [{
Array of object:

numeroDocumento* number
serie* string
pesoSaida* number
valor* number
tipoDocumento* number 0: Outros, 1: CTE, 2: NF_SERVICO, 3: ORDEM_COLETA, 4: NOTA_FISCAL
}]
clienteTomador {
Dados do cliente tomador/pagador do serviço

cpfCnpj* string
nomeFantasia* string
razaoSocial* string
}
filialEmissora {
Dados da filial que emitiu o contrato

cnpj* string
razaoSocial* string
nomeFantasia* string
codigoFilial* string Código externo da filial
}
coleta {
cidadeIbge* number
cep* string
dataInicioFrete* string
cepPorAPI string
latitude {
}
longitude {
}
cidade {
nome* string
codigoIbge* number
latitude* number
longitude* number
estado* {
nome* string
sigla* string
}
}

12 of 38
}
entrega {
cidadeIbge* number
cep* string
dataPrevisaoTerminoFrete* string
cepPorAPI string
latitude {
}
longitude {
}
cidade {
nome* string
codigoIbge* number
latitude* number
longitude* number
estado* {
nome* string
sigla* string
}
}
}
distancia* number
dataEmissao* string
}

RESPONSE

STATUS CODE - 201: Atualiza o contrato TmovPay

RESPONSE MODEL - application/json


{
id* number
idIntegracao* string
contratoVeiculos* [string]
motorista* {
nome* string
cnh* string
cpf* string
rg* string
}
contratoCarga* {
cidadeColeta* {
}
cepColeta* string
dataInicio* string
cidadeEntrega* {
}
cepEntrega* string
dataPrevisaoEntrega* string
cargaCodigoNatureza* {
descricao* string
codigo* number
ativo* boolean
}
cargaPeso* number
valorMercadoria* number
valorFrete* number

13 of 38
valorCombustivel* number
ativo* boolean
}
ciotDeclarar* boolean
ciotSubContratacao* boolean
ciotAltoDesempenho* boolean
ciotDestinacaoComercial* boolean
ciotPrincipal* string
pedagioPagoEmbarcador* boolean
distancia* number
irrpf* number
inss* number
outrosDescontos* number
outrosAcrescimos* number
debitosInclusos* number
creditosInclusos* number
sestSenat* number
quantidadeTarifas* number
valorTarifas* number
distanciaRetorno* number
cepRetorno* string
dataEmissao* string
contratoLancamentos* [{
Array of object:

id* number
valorOriginal* number
valorPago* number
geraProtocolo boolean
dadosPedagio* {
fornecedor* number
tipoVeiculo* string
idroteirizacao* string
quantidadeEixos* number
dataFinal* string
numeroRegistro* number
origem* string
protocolo* string
avisoTransportador* string
status* number
ativo* boolean
}
contratoLancamentoTipo* {
descricao* string
codigo* string
ativo* boolean
}
contratoLancamentoStatus* {
descricao* string
codigo* string
ativo* boolean
}
contratoQuitacaoSaldo* {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number

14 of 38
valorQuebraFrete* number
}
formaPagamento* {
descricao* string
codigo* string
}
token* string
ativo* boolean
dataPagamento* string
cartao* boolean
dataCodigoSeguranca* string
dataBloqueio* string
}]
contratoCiot* {
ciot* string
codigoVerificador* string
avisoTransportador* string
senhaAlteracao* string
emContingencia* boolean
ativo* boolean
}
ativo* boolean
}

2.3 PATCH /v2/contratos/{idContrato}/bloquear

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*idContrato number

RESPONSE

STATUS CODE - 200: Atualiza o bloquear contrato por id

RESPONSE MODEL - application/json


{
id* number
idIntegracao* string
contratoVeiculos* [string]
motorista* {
nome* string
cnh* string
cpf* string
rg* string
}
contratoCarga* {
cidadeColeta* {
}
cepColeta* string
dataInicio* string
cidadeEntrega* {
}

15 of 38
cepEntrega* string
dataPrevisaoEntrega* string
cargaCodigoNatureza* {
descricao* string
codigo* number
ativo* boolean
}
cargaPeso* number
valorMercadoria* number
valorFrete* number
valorCombustivel* number
ativo* boolean
}
ciotDeclarar* boolean
ciotSubContratacao* boolean
ciotAltoDesempenho* boolean
ciotDestinacaoComercial* boolean
ciotPrincipal* string
pedagioPagoEmbarcador* boolean
distancia* number
irrpf* number
inss* number
outrosDescontos* number
outrosAcrescimos* number
debitosInclusos* number
creditosInclusos* number
sestSenat* number
quantidadeTarifas* number
valorTarifas* number
distanciaRetorno* number
cepRetorno* string
dataEmissao* string
contratoLancamentos* [{
Array of object:

id* number
valorOriginal* number
valorPago* number
geraProtocolo boolean
dadosPedagio* {
fornecedor* number
tipoVeiculo* string
idroteirizacao* string
quantidadeEixos* number
dataFinal* string
numeroRegistro* number
origem* string
protocolo* string
avisoTransportador* string
status* number
ativo* boolean
}
contratoLancamentoTipo* {
descricao* string
codigo* string
ativo* boolean
}
contratoLancamentoStatus* {

16 of 38
descricao* string
codigo* string
ativo* boolean
}
contratoQuitacaoSaldo* {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
formaPagamento* {
descricao* string
codigo* string
}
token* string
ativo* boolean
dataPagamento* string
cartao* boolean
dataCodigoSeguranca* string
dataBloqueio* string
}]
contratoCiot* {
ciot* string
codigoVerificador* string
avisoTransportador* string
senhaAlteracao* string
emContingencia* boolean
ativo* boolean
}
ativo* boolean
}

2.4 PATCH /v2/contratos/{idContrato}/desbloquear

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*idContrato number

RESPONSE

STATUS CODE - 200: Atualiza o desbloquear contrato por idContrato

RESPONSE MODEL - application/json


{
id* number
idIntegracao* string
contratoVeiculos* [string]
motorista* {
nome* string
cnh* string

17 of 38
cpf* string
rg* string
}
contratoCarga* {
cidadeColeta* {
}
cepColeta* string
dataInicio* string
cidadeEntrega* {
}
cepEntrega* string
dataPrevisaoEntrega* string
cargaCodigoNatureza* {
descricao* string
codigo* number
ativo* boolean
}
cargaPeso* number
valorMercadoria* number
valorFrete* number
valorCombustivel* number
ativo* boolean
}
ciotDeclarar* boolean
ciotSubContratacao* boolean
ciotAltoDesempenho* boolean
ciotDestinacaoComercial* boolean
ciotPrincipal* string
pedagioPagoEmbarcador* boolean
distancia* number
irrpf* number
inss* number
outrosDescontos* number
outrosAcrescimos* number
debitosInclusos* number
creditosInclusos* number
sestSenat* number
quantidadeTarifas* number
valorTarifas* number
distanciaRetorno* number
cepRetorno* string
dataEmissao* string
contratoLancamentos* [{
Array of object:

id* number
valorOriginal* number
valorPago* number
geraProtocolo boolean
dadosPedagio* {
fornecedor* number
tipoVeiculo* string
idroteirizacao* string
quantidadeEixos* number
dataFinal* string
numeroRegistro* number
origem* string
protocolo* string

18 of 38
avisoTransportador* string
status* number
ativo* boolean
}
contratoLancamentoTipo* {
descricao* string
codigo* string
ativo* boolean
}
contratoLancamentoStatus* {
descricao* string
codigo* string
ativo* boolean
}
contratoQuitacaoSaldo* {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
formaPagamento* {
descricao* string
codigo* string
}
token* string
ativo* boolean
dataPagamento* string
cartao* boolean
dataCodigoSeguranca* string
dataBloqueio* string
}]
contratoCiot* {
ciot* string
codigoVerificador* string
avisoTransportador* string
senhaAlteracao* string
emContingencia* boolean
ativo* boolean
}
ativo* boolean
}

2.5 PATCH /v2/contratos/{idIntegracao}/atualizarLancamentos

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*idIntegracao string

REQUEST BODY - application/json


{
contratoLancamento* [{

19 of 38
Array of object:

id* number ID do lançamento no tmovpay


valor* number
valorPago* number
tipo* enum ALLOWED:ADIANTAMENTO, SALDO, ESTADIA, RPA,
PEDAGIO, AJUSTE_SALDO
status* enum ALLOWED:EM_ABERTO, BLOQUEADO, CANCELADO, QUITADO,
PAGO_EMBARCADOR, EM_PROCESSAMENTO, FALHA,
AGENDADO
habilitarPagamentoCartao* boolean
token string
contratoQuitacaoSaldo {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
dataPagamento* string
dadosPedagio* {
identificadorHistorico* string
quantidadeEixos* number
tipoVeiculo* string
fornecedor* number
}
}]
}

RESPONSE

STATUS CODE - 200: Atualiza os Lançamentos de um Contrato

RESPONSE MODEL - application/json


{
id* number
idIntegracao* string
contratoVeiculos* [string]
motorista* {
nome* string
cnh* string
cpf* string
rg* string
}
contratoCarga* {
cidadeColeta* {
}
cepColeta* string
dataInicio* string
cidadeEntrega* {
}
cepEntrega* string
dataPrevisaoEntrega* string
cargaCodigoNatureza* {
descricao* string
codigo* number
ativo* boolean

20 of 38
}
cargaPeso* number
valorMercadoria* number
valorFrete* number
valorCombustivel* number
ativo* boolean
}
ciotDeclarar* boolean
ciotSubContratacao* boolean
ciotAltoDesempenho* boolean
ciotDestinacaoComercial* boolean
ciotPrincipal* string
pedagioPagoEmbarcador* boolean
distancia* number
irrpf* number
inss* number
outrosDescontos* number
outrosAcrescimos* number
debitosInclusos* number
creditosInclusos* number
sestSenat* number
quantidadeTarifas* number
valorTarifas* number
distanciaRetorno* number
cepRetorno* string
dataEmissao* string
contratoLancamentos* [{
Array of object:

id* number
valorOriginal* number
valorPago* number
geraProtocolo boolean
dadosPedagio* {
fornecedor* number
tipoVeiculo* string
idroteirizacao* string
quantidadeEixos* number
dataFinal* string
numeroRegistro* number
origem* string
protocolo* string
avisoTransportador* string
status* number
ativo* boolean
}
contratoLancamentoTipo* {
descricao* string
codigo* string
ativo* boolean
}
contratoLancamentoStatus* {
descricao* string
codigo* string
ativo* boolean
}
contratoQuitacaoSaldo* {
contratoLancamento* {

21 of 38
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
formaPagamento* {
descricao* string
codigo* string
}
token* string
ativo* boolean
dataPagamento* string
cartao* boolean
dataCodigoSeguranca* string
dataBloqueio* string
}]
contratoCiot* {
ciot* string
codigoVerificador* string
avisoTransportador* string
senhaAlteracao* string
emContingencia* boolean
ativo* boolean
}
ativo* boolean
}

2.6 GET /v2/contratos/integracao/{idIntegracao}

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*idIntegracao string

RESPONSE

STATUS CODE - 200: busca um contrato por idIntegração

RESPONSE MODEL - application/json


{
id* number
idIntegracao* string
contratoVeiculos* [string]
motorista* {
nome* string
cnh* string
cpf* string
rg* string
}
contratoCarga* {
cidadeColeta* {
}

22 of 38
cepColeta* string
dataInicio* string
cidadeEntrega* {
}
cepEntrega* string
dataPrevisaoEntrega* string
cargaCodigoNatureza* {
descricao* string
codigo* number
ativo* boolean
}
cargaPeso* number
valorMercadoria* number
valorFrete* number
valorCombustivel* number
ativo* boolean
}
ciotDeclarar* boolean
ciotSubContratacao* boolean
ciotAltoDesempenho* boolean
ciotDestinacaoComercial* boolean
ciotPrincipal* string
pedagioPagoEmbarcador* boolean
distancia* number
irrpf* number
inss* number
outrosDescontos* number
outrosAcrescimos* number
debitosInclusos* number
creditosInclusos* number
sestSenat* number
quantidadeTarifas* number
valorTarifas* number
distanciaRetorno* number
cepRetorno* string
dataEmissao* string
contratoLancamentos* [{
Array of object:

id* number
valorOriginal* number
valorPago* number
geraProtocolo boolean
dadosPedagio* {
fornecedor* number
tipoVeiculo* string
idroteirizacao* string
quantidadeEixos* number
dataFinal* string
numeroRegistro* number
origem* string
protocolo* string
avisoTransportador* string
status* number
ativo* boolean
}
contratoLancamentoTipo* {
descricao* string

23 of 38
codigo* string
ativo* boolean
}
contratoLancamentoStatus* {
descricao* string
codigo* string
ativo* boolean
}
contratoQuitacaoSaldo* {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
formaPagamento* {
descricao* string
codigo* string
}
token* string
ativo* boolean
dataPagamento* string
cartao* boolean
dataCodigoSeguranca* string
dataBloqueio* string
}]
contratoCiot* {
ciot* string
codigoVerificador* string
avisoTransportador* string
senhaAlteracao* string
emContingencia* boolean
ativo* boolean
}
ativo* boolean
}

2.7 POST /v2/contratos/cancelarContrato

REQUEST
REQUEST BODY - application/json
{
idIntegracao* string
}

RESPONSE

STATUS CODE - 201: cancela um contrato

RESPONSE MODEL - application/json


{
id* number
idIntegracao* string
contratoVeiculos* [string]

24 of 38
motorista* {
nome* string
cnh* string
cpf* string
rg* string
}
contratoCarga* {
cidadeColeta* {
}
cepColeta* string
dataInicio* string
cidadeEntrega* {
}
cepEntrega* string
dataPrevisaoEntrega* string
cargaCodigoNatureza* {
descricao* string
codigo* number
ativo* boolean
}
cargaPeso* number
valorMercadoria* number
valorFrete* number
valorCombustivel* number
ativo* boolean
}
ciotDeclarar* boolean
ciotSubContratacao* boolean
ciotAltoDesempenho* boolean
ciotDestinacaoComercial* boolean
ciotPrincipal* string
pedagioPagoEmbarcador* boolean
distancia* number
irrpf* number
inss* number
outrosDescontos* number
outrosAcrescimos* number
debitosInclusos* number
creditosInclusos* number
sestSenat* number
quantidadeTarifas* number
valorTarifas* number
distanciaRetorno* number
cepRetorno* string
dataEmissao* string
contratoLancamentos* [{
Array of object:

id* number
valorOriginal* number
valorPago* number
geraProtocolo boolean
dadosPedagio* {
fornecedor* number
tipoVeiculo* string
idroteirizacao* string
quantidadeEixos* number
dataFinal* string

25 of 38
numeroRegistro* number
origem* string
protocolo* string
avisoTransportador* string
status* number
ativo* boolean
}
contratoLancamentoTipo* {
descricao* string
codigo* string
ativo* boolean
}
contratoLancamentoStatus* {
descricao* string
codigo* string
ativo* boolean
}
contratoQuitacaoSaldo* {
contratoLancamento* {
}
pesoChegada* number
valorQuebraMercadoria* number
valorQuebraMercadoriaCalculado* number
valorQuebraFrete* number
}
formaPagamento* {
descricao* string
codigo* string
}
token* string
ativo* boolean
dataPagamento* string
cartao* boolean
dataCodigoSeguranca* string
dataBloqueio* string
}]
contratoCiot* {
ciot* string
codigoVerificador* string
avisoTransportador* string
senhaAlteracao* string
emContingencia* boolean
ativo* boolean
}
ativo* boolean
}

26 of 38
3. MODULO CARTÃO

3.1 GET /cartoes/possuiCartaoVinculadoPorCpf/{cpf}

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*cpf string

RESPONSE

STATUS CODE - 200: Verifica se uma Pessoa Física Possui CPF

RESPONSE MODEL - application/json


{
id* number Identificador do cartão
cpf* string CPF do motorista
nome* string Nome do motorista
possuiVinculo* boolean Se possui vínculo de cartão
status* string Status do cartão
numeroCartaoFinal* string 4 ùltimos digitos do cartão
}

STATUS CODE - 400: Pessoa Física possui documentação pendente.

STATUS CODE - 404: Pessoa Física não encontrada para o CPF informado

3.2 POST /cartoes/vincularCartaoPorDocumento

REQUEST
REQUEST BODY - application/json
{
documento* string CPF/CNPJ do titular da conta em que o cartão será vinculado
idCartao* number ID do Cartão
cvv* string CVV do cartão
}

RESPONSE

STATUS CODE - 200: Víncular um cartão a uma pessoa física ou pessoa jurídica.

RESPONSE MODEL - application/json


{recursive}

STATUS CODE - 400: Pessoa com documento informado já possui cartão vinculado.

3.3 POST /cartoes/substituirCartao

REQUEST

27 of 38
REQUEST BODY - application/json
{
documento* string CPF/CNPJ do titular da conta em que o cartão será vinculado
idCartao* number ID do Cartão
cvv* string CVV do cartão
ignorarCartaoBloqueado* boolean Se enviado true, irá validar se o titular da conta já possui algum cartão bloqueado por
tentativa de senha incorreta, e não permitirá a substituição
}

RESPONSE

STATUS CODE - 200: Cartão trocado com sucesso

STATUS CODE - 400: Documento informado não possui uma Conta Digital ou não está cadastro em nossa base.

STATUS CODE - 403: Existe um cartão bloqueado por senha incorreta após três tentativas, favor realizar o desbloqueio
pelo atendimento de Desbloqueio de Cartão.

3.4 PUT /cartoes/alterarSenha

REQUEST
REQUEST BODY - application/json
{
documento* string CPF/CNPJ do titular da conta
destination* string Celular do titular da conta
senha* string Nova senha
}

RESPONSE

STATUS CODE - 200: Alterar Senha do Cartão ou Conta Digital

STATUS CODE - 400: Documento informado não possui cadastro no TMOV Pay

28 of 38
4. MODULO DE PESSOA JURÍDICA

4.1 PUT /pessoaJuridicas

REQUEST
REQUEST BODY - application/json
{
cnpj* string CNPJ da Pessoa Jurídica
razaoSocial* string
nomeFantasia* string
cnaePrincipal* string Código CNAE principal da empresa
naturezaLegal* string Código da natureza legal da empresa
dataAbertura* string
email* string
receitaAnual* number
telefoneTipo* string
telefoneDdd* string
telefoneNumero* string
logradouro* string
bairro* string
enderecoNumero* number
cep* string
complemento* string
cidadeIbge* number
responsaveis* [{
Array of object:

responsavelEmail* string
responsavelNome* string
responsavelCpf* string
responsavelNomeMae* string
responsavelDataNascimento* string
responsavelPerfil* string Perfil do responsável, se é representante legal ou um sócio
responsavelTipo* string Master para o respresentante legal, Regular para sócios
responsavelLogradouro* string
responsavelBairro* string
responsavelEnderecoNumero* number
responsavelCep* string
responsavelComplemento* string
responsavelCidadeIbge* number
responsavelTelefoneTipo* string
responsavelTelefoneDdd* string
responsavelTelefoneNumero* string
responsavelPep* boolean
}]
responsaveisPj* [{
Array of object:

responsavelCnpj* string
responsavelRazaoSocial* string
}]
}

RESPONSE

29 of 38
STATUS CODE - 200: Atualização realizada com sucesso

RESPONSE MODEL - application/json


{
cnpj* string
razaoSocial* string
nomeFantasia* string
inscricaoEstadual* string
pessoa* {
telefones* [string]
emails* [string]
enderecos* [string]
}
dataAbertura* string
receitaAnual* number
cnaePrincipal* {
}
naturezaLegal* {
}
pessoaJuridicaResponsaveis* [string]
idRegistrationDock* string
idCompanyDock* string
fingerprint* string
pessoaJuridicaStatusDock* {
}
statusSPD* {
status* string
idStatusSPDDock* number
statusSPDDock* string
pessoasJuridicas* [string]
pessoasFisicas* [string]
cashinPermitido* boolean
cashOutPermitido* boolean
dataAlteracao* string
dataCriacao* string
ativo* boolean
}
ativo* boolean
dataAlteracao* string
dataCriacao* string
documentacaoEnviada* boolean
}

4.2 POST /pessoaJuridicas

REQUEST
REQUEST BODY - application/json
{
cnpj* string CNPJ da Pessoa Jurídica
razaoSocial* string
nomeFantasia* string
cnaePrincipal* string Código CNAE principal da empresa
naturezaLegal* string Código da natureza legal da empresa
dataAbertura* string
email* string

30 of 38
receitaAnual* number
telefoneTipo* string
telefoneDdd* string
telefoneNumero* string
logradouro* string
bairro* string
enderecoNumero* number
cep* string
complemento* string
cidadeIbge* number
responsaveis* [{
Array of object:

responsavelEmail* string
responsavelNome* string
responsavelCpf* string
responsavelNomeMae* string
responsavelDataNascimento* string
responsavelPerfil* string Perfil do responsável, se é representante legal ou um sócio
responsavelTipo* string Master para o respresentante legal, Regular para sócios
responsavelLogradouro* string
responsavelBairro* string
responsavelEnderecoNumero* number
responsavelCep* string
responsavelComplemento* string
responsavelCidadeIbge* number
responsavelTelefoneTipo* string
responsavelTelefoneDdd* string
responsavelTelefoneNumero* string
responsavelPep* boolean
}]
responsaveisPj* [{
Array of object:

responsavelCnpj* string
responsavelRazaoSocial* string
}]
}

RESPONSE

STATUS CODE - 200: Cadastro realizada com sucesso

RESPONSE MODEL - application/json


{
cnpj* string
razaoSocial* string
nomeFantasia* string
inscricaoEstadual* string
pessoa* {
telefones* [string]
emails* [string]
enderecos* [string]
}
dataAbertura* string
receitaAnual* number
cnaePrincipal* {
}
naturezaLegal* {

31 of 38
}
pessoaJuridicaResponsaveis* [string]
idRegistrationDock* string
idCompanyDock* string
fingerprint* string
pessoaJuridicaStatusDock* {
}
statusSPD* {
status* string
idStatusSPDDock* number
statusSPDDock* string
pessoasJuridicas* [string]
pessoasFisicas* [string]
cashinPermitido* boolean
cashOutPermitido* boolean
dataAlteracao* string
dataCriacao* string
ativo* boolean
}
ativo* boolean
dataAlteracao* string
dataCriacao* string
documentacaoEnviada* boolean
}

4.3 POST /pessoaJuridicas/enviarDocumentos

REQUEST
FORM DATA PARAMETERS
NAME TYPE DESCRIPTION

documento string CNPJ da empresa


categoria string Categoria do documento sendo enviado

RESPONSE

STATUS CODE - 200: Documento da Pessoa Juridica enviado com sucesso.

32 of 38
5. MODULO DE PESSOAFISICAS

5.1 POST /pessoaFisicas

REQUEST
REQUEST BODY - application/json
{
nome* string
cpf* string
nomeMae* string
dataNascimento* string
email* string
telefoneDdd* string
telefoneNumero* string
telefoneTipo* string
logradouro* string
bairro* string
enderecoNumero* number
cep* string
complemento* string
cidadeIbge* number
pep* boolean Informa se o indivíduo é uma pessoa exposta politicamente
renda* number
}

RESPONSE

STATUS CODE - 200: Pessoa Fisica Salva Com Sucesso

STATUS CODE - 400: Ocorreu um erro ao validar os dados da Pessoa Física

5.2 POST /pessoaFisicas/enviarDocumentos

REQUEST
FORM DATA PARAMETERS
NAME TYPE DESCRIPTION

documento string CPF da Pessoa Fisica


categoria string Categoria do documento sendo enviado

RESPONSE

STATUS CODE - 200: Documentação da pessoa física enviada

33 of 38
6. MÓDULO AUTENTICAÇÃO

6.1 POST /tmov-pay/token

REQUEST
REQUEST BODY - application/json
{
grant_type* string
password* string
username* string
refresh_token string
}

RESPONSE

STATUS CODE - 200: Sucesso

RESPONSE MODEL - application/json


{
access_token* string
expires_in* number
refresh_token* string
refresh_expires_in* number
id_token* string
expiry_date_token* string
expiry_date_refresh_token* string
}

STATUS CODE - 400: Parametros inválidos

STATUS CODE - 500: Erro interno no servidor

34 of 38
7. MÓDULO DE CONTA

7.1 GET /contas/possuiConta/{documento}

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*documento string

RESPONSE

STATUS CODE - 200:

35 of 38
8. PAGAMENTO DE FRETE

8.1 GET /v2/contratoQuitacoesSaldo/buscarPorToken/{token}

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*token string

QUERY PARAMETERS
NAME TYPE DESCRIPTION

*buscarPorTmovPay string

RESPONSE

STATUS CODE - 200: Buscar as informações necessárias para quitação de saldo de um contrato

RESPONSE MODEL - application/json


{
id* number
idContrato* number
contratoStatus* {
descricao* string
codigo* string
ativo* boolean
}
token* string
valorOriginal* number
cidadeColeta* string
cidadeEntrega* string
pesoSaida* number
pesoChegada* number
liberado* boolean
deveAgendar* boolean
dataAgendamento* string
dataPagamento* string
dataDescarga* string
cartao* boolean
documentosFiscais* [string]
statusAdiantamento* string
statusPedagio* string
valorFrete* number
valorAdiantamento* number
valorPedagio* number
valorOutrosDescontos* number
valorOutrosAcrescimos* number
valorImpostos* number
valorQuebraMercadoria* number
valorQuebraFrete* number
valorSaldo* number

36 of 38
valorSaldoOriginal* number
valorMercadoria* number
percentualToleranciaPeso* number
percentualToleranciaPesoCliente* number
valorTarifaTonelada* number
tipoQuebraMercadoria* string
codigoTipoLancamento* string
estabelecimentoQuitacao* string
cnpjEstabelecimentoQuitacao* string
codigoStatusLancamento* string
usuarioQuitacao* string
freteLotacao* boolean
contratoVeiculos* [string]
motorista* {
nome* string
cnh* string
cpf* string
rg* string
}
documentosObrigatorios* [string]
proprietarioVeiculos* {
nome* string
documento* string
}
diferencaPeso* number
valorQuebraMercadoriaCalculado* number
valorInclusaoDebitos* number
valorInclusaoCreditos* number
taxasCliente* [string]
clienteContrato* {
getLogoUrl string
}
clienteContratoTomador* {
getLogoUrl string
}
}

8.2 POST /v2/contratoQuitacoesSaldo

REQUEST
REQUEST BODY - application/json
{
token* string
pesoChegada* number
dataDescarga* string
valorSaldo* number Valor a pagar ao contratado
valorQuebraFrete* number
valorQuebraMercadoria* number
nomeUsuarioQuitacao string
documentoUsuarioQuitacao string
}

RESPONSE

STATUS CODE - 201: Cria a quitação do saldo

37 of 38
RESPONSE MODEL - application/json
{
token* string
pesoChegada* number
dataDescarga* string
valorSaldo* number Valor a pagar ao contratado
valorQuebraFrete* number
valorQuebraMercadoria* number
nomeUsuarioQuitacao string
documentoUsuarioQuitacao string
}

8.3 POST /v2/contratoQuitacoesSaldo/{idIntegracao}/documento

REQUEST
PATH PARAMETERS
NAME TYPE DESCRIPTION

*idIntegracao string

QUERY PARAMETERS
NAME TYPE DESCRIPTION

*idDocumento number

RESPONSE

STATUS CODE - 200: Upload do arquivo de documento efetuado com sucesso.

8.4 GET /v2/contratoQuitacoesSaldo/download

REQUEST
QUERY PARAMETERS
NAME TYPE DESCRIPTION

*idDocumentoQuitacao number
*idIntegracao string

RESPONSE

STATUS CODE - 200: Download do arquivo de documento efetuado com sucesso.

38 of 38

Você também pode gostar