--- title: 9.1. Anexar Lastros Avulsos url: https://docs.vehub.com.br/API/Integra%C3%A7%C3%A3o%20FIDC/9.%20Lastros%20Avulsos/9.1.%20Anexar%20Lastros%20Avulsos/ --- | Método | URL | |--------|-----| | ![POST](https://img.shields.io/badge/POST-green) | `https://BASE_URL/public/v1/recebiveis/lotes/{idOperacao}/lastros/avulsos/nfe` | Anexa arquivos XML de NF-e como lastros diretamente na operação e empresa (cedente) informadas, **sem vínculo a um lote**. Útil quando o lastro está disponível antes (ou independente) do fluxo de cessão em lote — por exemplo, integrações que enviam a NF-e assim que ela é emitida pelo ERP do cedente. O casamento com o título (pela `chaveNfe`) é feito de forma **assíncrona**, da mesma maneira que em [Anexar Lastros](../2.%20Cess%C3%A3o%20de%20Direitos%20Credit%C3%B3rios/2.3.%20Anexar%20Lastros.md): o endpoint apenas confirma o recebimento do arquivo e cria a "fotografia" da sessão de importação. Use os `idsLogIntegracao` retornados aqui para consultar o detalhamento via [Consultar Importação de Lastros Avulsos](9.2.%20Consultar%20Importa%C3%A7%C3%A3o%20de%20Lastros%20Avulsos.md). ## Path Params | Campo | Tipo | Descrição | |-------|------|-----------| | `idOperacao` | Número | Identificador da operação, fornecido pela Vertrau. | ## Query Params | Campo | Tipo | Descrição | |-------|------|-----------| | `idEmpresa` | Número | Identificador da empresa (cedente) dona do lastro, fornecido pela Vertrau. | ## Request Body A requisição deve ser enviada como `multipart/form-data`. | Campo | Tipo | Descrição | |-------|------|-----------| | `arquivo` | Lista de arquivos | Um ou mais arquivos XML de NF-e. | ```` bash title="Exemplo de cURL" curl -X POST "https://BASE_URL/public/v1/recebiveis/lotes/23/lastros/avulsos/nfe?idEmpresa=9" \ -H "Authorization: Bearer {token}" \ -H "GrupoEconomico: {grupo}" \ -F "arquivo=@/caminho/para/nota-fiscal-1.xml" \ -F "arquivo=@/caminho/para/nota-fiscal-2.xml" ```` ```` json title="Response Body — 200 OK" { "status": "sucesso", "mensagem": "Lastro anexado com sucesso.", "idsLogIntegracao": [44580, 44581] } ```` ## Anexar via Base64 (JSON) | Método | URL | |--------|-----| | ![POST](https://img.shields.io/badge/POST-green) | `https://BASE_URL/public/v1/recebiveis/lotes/{idOperacao}/lastros/avulsos/nfe/base64` | Alternativa ao envio via `multipart/form-data`. Anexa o mesmo tipo de lastro (XML de NF-e), porém com o conteúdo do arquivo codificado em base64 no corpo da requisição. Cada chamada aceita **um único arquivo**. ### Path Params | Campo | Tipo | Descrição | |-------|------|-----------| | `idOperacao` | Número | Identificador da operação, fornecido pela Vertrau. | ### Request Body A requisição deve ser enviada como `application/json`. | Campo | Tipo | Obrigatório | Descrição | |-------|------|-------------|-----------| | `nomeArquivo` | Texto | Sim | Nome do arquivo, incluindo a extensão (máximo de 255 caracteres). | | `conteudoBase64` | Texto | Sim | Conteúdo do arquivo XML da NF-e codificado em base64. | | `idEmpresa` | Número | Sim | Identificador da empresa (cedente) dona do lastro, fornecido pela Vertrau. | ```` json title="Request Body" { "nomeArquivo": "nfe_123.xml", "conteudoBase64": "", "idEmpresa": 9 } ```` ```` bash title="Exemplo de cURL" curl -X POST "https://BASE_URL/public/v1/recebiveis/lotes/23/lastros/avulsos/nfe/base64" \ -H "Authorization: Bearer {token}" \ -H "GrupoEconomico: {grupo}" \ -H "Content-Type: application/json" \ -d '{ "nomeArquivo": "nfe_123.xml", "conteudoBase64": "", "idEmpresa": 9 }' ```` ```` json title="Response Body — 200 OK" { "status": "sucesso", "mensagem": "Lastro anexado com sucesso.", "idsLogIntegracao": [44582] } ```` ### Erros Erros retornam HTTP `400 Bad Request` com o envelope `RetornoPadrao`. ```` json title="Response Body — 400 Bad Request (base64 inválido)" { "status": "erro", "mensagem": "O conteúdo do arquivo 'nfe_123.xml' não é um base64 válido." } ```` ```` json title="Response Body — 400 Bad Request (conteúdo vazio)" { "status": "erro", "mensagem": "O conteúdo do arquivo 'nfe_123.xml' está vazio." } ```` ```` json title="Response Body — 400 Bad Request (operação inexistente)" { "status": "erro", "mensagem": "Não foi possível identificar a operação 23." } ```` ```` json title="Response Body — 400 Bad Request (empresa inexistente)" { "status": "erro", "mensagem": "Não foi possível identificar a empresa 9." } ```` # Modelo de dados ## Retorno | Campo | Tipo | Descrição | |-------|------|-----------| | `status` | Texto | Status do processamento. | | `mensagem` | Texto | Mensagem retornada pela API. | | `idsLogIntegracao` | Lista de números | Identificadores de log de integração gerados — um por arquivo enviado. Use cada id no endpoint de consulta de fotografia para acompanhar o resultado individual. | # Observações - **Sem lote:** este endpoint não exige (nem cria) um lote — o arquivo é anexado direto na operação e empresa informadas. Para anexar lastros a um lote já existente, utilize [Anexar Lastros](../2.%20Cess%C3%A3o%20de%20Direitos%20Credit%C3%B3rios/2.3.%20Anexar%20Lastros.md). - **Casamento assíncrono:** assim como no fluxo vinculado a lote, o vínculo com o título (pela `chaveNfe`) acontece em segundo plano, depois da resposta `200 OK`. Consulte [Consultar Importação de Lastros Avulsos](9.2.%20Consultar%20Importa%C3%A7%C3%A3o%20de%20Lastros%20Avulsos.md) para confirmar se o arquivo foi vinculado, ficou pendente de vínculo ou foi rejeitado. - **Operação/empresa inexistente:** se `idOperacao` ou `idEmpresa` não existirem (ou não pertencerem ao grupo econômico autenticado), a importação é rejeitada com `400 Bad Request` antes de qualquer gravação.