Exemplo de Utilização
Endpoint: | https://dev.raas.varejo.totvs.com.br/api/fiscal-motor-starting/api/v1/starting/ciot |
Método: | POST |
Descrição: | Utilize este recurso para realizar o cálculo do CIOT |
Modelo JSON (envio): | { "idTransporte": "XPTO123", "idAtor": "A0006", "valorFrete": 100.0, "tipoAcao": "GERACAO", "territorioOrigem": { "cidade": "JOINVILLE", "uf": "SC", "pais": "Brasil" }, "territorioDestino": { "cidade": "JOINVILLE", "uf": "SC", "pais": "Brasil" }, "dataTransporte": "2023-01-16", "urlRetorno": "http://seu-webhook", "servicoTransporte": true } |
Status de retorno: | - 200 - OK
- 400 - Bad Request (Um ou mais campos estão inválidos. Faça o preenchimento correto e tente novamente)
- 401 - Unauthorized (Falha na autenticação)
- 500 - Internal Error (Falha de comunicação com a fila: fiscal-motor-starting-calculating-topic ou Dados mínimos precisam ser preenchidos)
|
Exemplo de Retorno: | { "identificador":"XPTO123", "impostos":[ { "imposto":"IRRF", "base":1000.0, "aliquota":7.5, "valor":75.0, "acumulado":75.0 }, { "imposto":"INSS", "base":1000.0, "aliquota":10.5, "valor":75.0, "acumulado":2.0 } ], "valorReceber":850.0, "tipoAcao":"GERACAO", "origemIbge":"Origem", "destinoIbge":"Destino", "urlRetorno":"http://retorno.com", "retornoValidacao":null } |
Observação | O Json de retorno do calculo está sendo salvo no banco de dados(mongoDB) na collection "retornoCalculando" |
Observações
Atributo | Exemplo |
---|
tipoAcao | - GERAÇÃO: Efetua cálculo dos tributos e vincula a movimentação na retenção de tributos;
- SIMULACAO: Efetua cálculo dos tributos e retorna apuração dos tributos;
- CANCELAMENTO: Efetua cancelamento de movimentações de retenção de tributos do ator indicado;
|
territorioOrigem | Caso não informe este campo, o território utilizado na escolha do melhor cenário será o endereço principal do Expedidor ou Remetente. Regras: - Caso informe a tag territorioOrigem, independente de apresentar os atores: Expedidor e/ou Remetente, para a escolha do melhor cenário é utilizado o endereço preenchido no territorioOrigem;
- Caso informe os atores de Origem: Expedidor e Remetente e não informe o territorioOrigem para a escolha do melhor cenário é utilizado o endereço principal do ator Expedidor;
- Caso não informe o territorioOrigem, Expedidor e Remetente ocorre o erro:
{ "status": 400, "timestamp": "2022-12-01T14:44:47.969961", "title": "Erro em regra de negocio.", "detail": "Não foi possível encontrar Território de Origem. Informe os dados de Território Origem, Expedidor ou Remetente" }
|
territorioDestino | Caso não informe este campo, o território utilizado na escolha do melhor cenário será o endereço principal do Recebedor ou Destinatário Regras: - Caso informe a tag territorioDestino, independente de apresentar os atores: Recebedor e/ou Destino, para a escolha do melhor cenário é utilizado o endereço preenchido no territorioDestino;
- Caso informe os atores de Destino: Recebedor e Destinatário e não informe o territórioDestino, para a escolha do melhor cenário é utilizado o endereço principal do ator Recebedor;
- Caso não informe o territorioDestino Recebedor e Destinatário ocorre o erro:
{ "status": 400, "timestamp": "2022-12-01T14:44:47.969961", "title": "Erro em regra de negocio.", "detail": "Não foi possível encontrar Território de Destino. Informe os dados de Território Destino, Recebedor ou Destinatario" }
|
Retorno do cancelamento | { "identificador":"XPTO123", "tipoAcao":"CANCELAMENTO", "urlRetorno":"http://retorno.com", "retornoValidacao":null } |