Pular para o conteúdo principal

Documentos do lote de contratos

Cada configuração de contrato define os documentos da operação. Alguns a QI Tech gera a partir de modelos, com os dados do lote e dos contratos; outros você envia, e eles passam pela validação de lastro, a primeira das duas validações. O lote só segue para a análise quando todos os documentos exigidos estão prontos.

Disponível em
PerfilHostPermissão exigida
Gestoramanager-apiEscrita (leitura no download)
Consultoriaconsultant-apiOperar contratos (Ler contratos no download)
Cedenteassignor-apiEscrita (leitura no download)

URL base de cada host: Ambientes (Hosts).

Onde estou no fluxo?

Este é o 4º passo, depois do encerramento da inserção. Em seguida, envie o lote para análise.

O que a configuração exige​

A consulta do lote traz em expected_documents a lista do que a configuração exige, e em documents o que já existe:

sourcevalidation_typeQuem produzO que acontece
generatedinternalQI TechGerado já validado.
generatedinternal_signatureQI TechGerado e assinado pelas partes na assinatura.
uploadexternal_signatureVocêValidado contra os dados do contrato e assinado pelas partes.
uploadexternal_uploadVocêValidado contra os dados do contrato.
uploadreceived_signedVocêRecebido já assinado; não passa por validação.

Quando per_contract é true, o documento é exigido para cada contrato do lote.

Tipos de documento (document_type):

ValorDocumento
financing_contractContrato de financiamento
debt_acknowledgment_contractInstrumento de confissão de dívida
contractContrato
purchase_orderPedido de compra
assignment_termTermo de cessão

Gerar os documentos​

Gera, de uma vez, todos os documentos dos modelos da configuração. O lote precisa estar em pending_documents e passa a pending_asset_documents.

ENDPOINT
/trade_contract/fund_class/{fund_class_key}/assignment/{assignment_key}/generate_documents
MÉTODO
POST

Sem body.

Response Body — 201
{
"assignment_key": "9a8b7c6d-5e4f-4a3b-2c1d-0e9f8a7b6c5d",
"documents_created": 2,
"status": "pending_asset_documents"
}

A geração é assíncrona: os documentos aparecem na consulta do lote com status generated e passam a validated (ou ficam prontos para assinatura) quando o arquivo fica pronto.

Enviar um documento​

Envia um documento de lastro. Aceito com o lote em pending_documents ou pending_asset_documents; o primeiro envio também leva o lote a pending_asset_documents.

ENDPOINT
/trade_contract/fund_class/{fund_class_key}/assignment/{assignment_key}/document
MÉTODO
POST
Request Body
{
"document_type": "purchase_order",
"document_b64": "JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFI+PgpzdHJlYW0K...",
"contract_external_id": "FIN-2026-000147-01"
}
CampoTipoObrigatoriedadeDescrição
document_typestringobrigatórioUm dos tipos da tabela acima. Tipos gerados pela QI Tech são recusados (TRC000042).
document_b64stringobrigatórioArquivo em Base64.
contract_external_idstringcondicionalexternal_id do contrato a que o documento pertence, até 50 caracteres. Obrigatório nos documentos validados contra o contrato (external_signature e external_upload) (TRC000057).
Response Body — 201
{
"document_key": "3c2b1a09-8f7e-4d6c-b5a4-938271605f4e",
"status": "pending_validation",
"asset_documents_key": "b8a7c6d5-e4f3-4a2b-9c1d-0e8f7a6b5c4d"
}
statusSignificado
pending_validationEm validação de lastro. O resultado aparece na consulta do lote: validated ou rejected.
uploadedRecebido; não passa por validação.
signedRecebido já assinado (received_signed).
Um documento recusado recusa o lote

Se a validação recusar um documento, o lote vai para rejected com o motivo asset_documents. Confira o documento antes de enviar: um contrato com valores diferentes dos informados na inserção é o motivo mais comum.

Enviar um documento adicional​

Anexa ao lote um documento que a configuração não exige, como uma procuração ou um comprovante. Não passa por validação nem muda o status do lote. Aceito em qualquer status, exceto canceled e rejected.

ENDPOINT
/trade_contract/fund_class/{fund_class_key}/assignment/{assignment_key}/additional_document
MÉTODO
POST
Request Body
{
"document_b64": "JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFI+PgpzdHJlYW0K...",
"contract_external_id": "FIN-2026-000147-01"
}
CampoTipoObrigatoriedadeDescrição
document_b64stringobrigatórioArquivo em Base64.
contract_external_idstringopcionalContrato a que o documento se refere, até 50 caracteres.
Response Body — 201
{
"document_key": "6f5e4d3c-2b1a-4098-8f7e-6d5c4b3a2918",
"status": "uploaded"
}

Baixar um documento gerado​

Devolve um link temporário para o arquivo de um documento gerado pela QI Tech: a minuta, o termo, o contrato assinado. Os documentos que você enviou não são baixados por aqui (TRC000065).

ENDPOINT
/trade_contract/fund_class/{fund_class_key}/assignment/{assignment_key}/document/{document_key}/file
MÉTODO
GET
Response Body — 200
{
"document_key": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"document_type": "financing_contract",
"validation_type": "internal_signature",
"status": "signed",
"contract_key": "e7d6c5b4-a3f2-4e1d-9c0b-8a7f6e5d4c3b",
"file_url": "https://...",
"expires_in": 900
}

O file_url vale por expires_in segundos (15 minutos). Peça um novo quando expirar.

Erros​

StatusCódigoQuando acontece
400QIT000001O body não segue o formato.
404TRC000011Não existe lote com essa assignment_key neste fundo.
409TRC000012O lote não está num status que aceita a operação.
400TRC000019A configuração não tem modelos ativos para gerar. Fale com o time de integração.
400TRC000038Falta um dado exigido pelo modelo do documento. A description diz qual.
400TRC000018Contrato de financiamento com purchase_order_value maior que total_value.
400TRC000042O tipo de documento é gerado pela QI Tech e não pode ser enviado.
400TRC000057Documento validado contra o contrato sem contract_external_id.
400TRC000056A configuração não tem validação de lastro para documentos enviados. Fale com o time de integração.
404TRC000015Não existe documento com essa document_key no lote.
404TRC000064O arquivo ainda não está pronto. Tente de novo em alguns instantes.
409TRC000065O documento foi enviado por você; o arquivo não é baixado por esta rota.
403QIT000004 / QIT000005 / QIT000008A integração não tem acesso a este lote.