GET e POST que devolvem objetos JSON (ou XML, quando o endpoint oferece a opção).GET ...?wsdl.https://{dominio-cliente}-ws.qtrust.com.br{dominio-cliente} pelo domínio específico. Exemplo: o cliente quicksoft resulta em https://quicksoft-ws.qtrust.com.br.💡 Defina dominio-clientecomo variável de ambiente na sua ferramenta de teste (Postman, Insomnia, Apidog) para alternar entre clientes e ambientes sem reescrever cada chamada.
🔒 Use sempre HTTPS. As credenciais viajam em Base64 no header.
| Estilo | Método | Caminho | Para quê |
|---|---|---|---|
| REST | GET | /consulta/operacao | Situação das operações de uma data |
| REST | GET | /consulta/detalheOperacao | Recebíveis de uma operação, pelo nome do arquivo |
| REST | GET | /operacoes/{id}/documentos | Consulta paginada dos recebíveis de uma operação |
| REST | POST | /v1/import-bank-return/ | Importação de arquivo de retorno bancário |
| SOAP | POST | /soap/importacaoArquivoCnab | Importação de arquivo de remessa CNAB |
| SOAP | POST | /soap/aprovacaoOperacaoConsultoria | Aprovação da operação pela Consultoria |
| SOAP | POST | /soap/aprovacaoConsultoria | Aprovação da Consultoria com conta corrente |
| SOAP | POST | /soap/aprovacaoOperacaoGestor | Aprovação da operação pela Gestora |
| SOAP | POST | /soap/cedente/consulta/contaCorrente | Consulta de contas correntes do cedente |
| SOAP | POST | /soap/cadastroCedenteAprovado | Cadastro de cedente aprovado |
| SOAP | POST | /soap/agendador/relatorioEstoque | Agendamento do relatório de estoque |
| SOAP | POST | /soap/agendador/consultarRelatorio | Consulta da situação do agendamento |
| SOAP | POST | /soap/agendador/realizarDownload | Download do relatório de estoque |
| Callback | POST | /v2/certifier-callback/qcertifica | Recebimento do retorno da certificadora |
soap/... também responde a GET com ?wsdl, devolvendo o WSDL da operação. Sem a query string, o GET responde 404.⚠️ Não existe endpoint de geração de token na API QTrust. Não há rota de /authentication, nem JWT, nemBearer. A credencial vai em cada requisição.
| Modo | Como se envia | Onde vale |
|---|---|---|
| 1. Basic | Authorization: Basic base64(usuario:senha) | Todos os endpoints REST e SOAP |
| 2. Headers separados | username: usuario + password: senha | Todos, exceto /v1/import-bank-return/ |
| 3. Token de callback | Header e valor cadastrados por certificadora | Somente /v2/certifier-callback/* |
Authorization; só quando ele está ausente ou malformado é que lê username e password. Prefira sempre o modo 1 — é o padrão HTTP, tem suporte nativo em qualquer cliente e é o único aceito em todos os endpoints.| Código | Significado |
|---|---|
200 OK | Requisição processada. Nos endpoints SOAP isso não garante sucesso — veja a seção 5. |
400 Bad Request | Corpo, envelope ou parâmetros inválidos. |
401 Unauthorized | Credenciais ausentes, recusadas ou — nos endpoints SOAP e de consulta — usuário sem permissão. |
403 Forbidden | Usuário autenticado sem permissão. Só /v1/import-bank-return/ usa este código; os demais devolvem 401 também para falta de permissão. |
404 Not Found | Caminho inexistente, ou GET em rota SOAP sem ?wsdl. |
500 Internal Server Error | Exceção não tratada. |
200 não significa sucesso200 com um envelope de erro no corpo.| Operação | Campo que indica o resultado |
|---|---|
Relatório de estoque (soap/agendador/*) | tipoRetorno — SUCESSO ou ERRO |
Aprovações (soap/aprovacao*) | statusCode e mensagem |
Importação CNAB (soap/importacaoArquivoCnab) | idMensagem |
401) e de envelope/validação de entrada (400) chegam como SOAP Fault.ExceptionResponse — usado por /v1/import-bank-return/:{
"Error": {
"Code": "ValidationError",
"Message": "O campo 'FileName' é obrigatório.",
"Target": null,
"InnerError": null
}
}FromtisError — usado pelas rotas de consulta (/consulta/*, /operacoes/*), por compatibilidade com o contrato Fromtis:{
"error": "ValidationError",
"message": "Parâmetro 'data' inválido. Use o formato DD/MM/AAAA."
}soap/*:<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<S:Fault>
<faultcode>MissingCredentials</faultcode>
<faultstring>Credenciais ausentes. Informe 'username' e 'password' nos headers da requisição.</faultstring>
</S:Fault>
</S:Body>
</S:Envelope>Error.Code, error ou faultcode) é o que você deve usar para ramificar o tratamento — a mensagem é para leitura humana e pode mudar.