Pular para o conteúdo principal

Provedores Bancários

Configuração e gestão de provedores bancários integrados à plataforma.

Endpoints

MétodoEndpointDescriçãoPermissão
POST/baas/api/v1/providersCriar provedorBAAS_PROVIDERS_CREATE
GET/baas/api/v1/providersListar provedoresBAAS_PROVIDERS_READ
GET/baas/api/v1/providers/:idObter provedor por IDBAAS_PROVIDERS_READ
PATCH/baas/api/v1/providers/:idAtualizar provedorBAAS_PROVIDERS_UPDATE
DELETE/baas/api/v1/providers/:idExcluir provedorBAAS_PROVIDERS_DELETE
POST/baas/api/v1/provider-configs/:id/testTestar conexão com provedorBAAS_PROVIDERS_UPDATE
POST/baas/api/v1/provider-configs/:id/set-defaultDefinir provedor padrãoBAAS_PROVIDERS_UPDATE

Atributos

CampoTipoDescrição
namestringNome do provedor
codestringCódigo identificador único
typeenumTipo: BANKING, PIX, BOLETO, FULL
statusenumStatus: ACTIVE, INACTIVE, SUSPENDED
credentialsobjectCredenciais de acesso ao provedor
settingsobjectConfigurações específicas do provedor
supportedFeaturesarrayFuncionalidades suportadas
metadataobjectDados adicionais
createdAtdatetimeData de criação
updatedAtdatetimeData da última atualização

Estrutura de Credenciais (credentials)

CampoTipoDescrição
clientIdstringID do cliente no provedor
clientSecretstringSecret do cliente (write-only)
apiKeystringChave de API (alternativa)
certificatestringCertificado digital (base64)
environmentenumsandbox ou production

Tipos de Provedor

TipoDescrição
BANKINGContas e transferências
PIXApenas Pix
BOLETOApenas boletos
FULLTodos os serviços

Criar Provedor

POST /baas/api/v1/providers

Configura um novo provedor bancário na organização.

Atributos

CampoTipoObrigatórioDescrição
namestringSimNome do provedor
codestringSimCódigo identificador
typeenumSimTipo do provedor
credentialsobjectSimCredenciais de acesso
settingsobjectNãoConfigurações adicionais
metadataobjectNãoDados adicionais
curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/providers' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "providers",
"attributes": {
"name": "Banco Principal",
"code": "BANK_001",
"type": "FULL",
"credentials": {
"clientId": "seu-client-id",
"clientSecret": "seu-client-secret",
"environment": "sandbox"
},
"settings": {
"webhookUrl": "https://api.exemplo.com/webhooks/bank",
"autoReconciliation": true,
"defaultBranch": "0001"
}
}
}
}'

Response (201 Created)

{
"data": {
"type": "providers",
"id": "550e8400-e29b-41d4-a716-446655440001",
"links": {
"self": "/baas/api/v1/providers/550e8400-e29b-41d4-a716-446655440001"
},
"attributes": {
"name": "Banco Principal",
"code": "BANK_001",
"type": "FULL",
"status": "ACTIVE",
"credentials": {
"clientId": "seu-client-id",
"clientSecret": "********",
"environment": "sandbox"
},
"settings": {
"webhookUrl": "https://api.exemplo.com/webhooks/bank",
"autoReconciliation": true,
"defaultBranch": "0001"
},
"supportedFeatures": [
"ACCOUNTS",
"TRANSFERS",
"PIX",
"BOLETO",
"STATEMENTS",
"RECONCILIATION"
],
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
},
"links": {
"self": "/baas/api/v1/providers/550e8400-e29b-41d4-a716-446655440001"
}
}

Listar Provedores

GET /baas/api/v1/providers

Lista provedores bancários configurados na organização.

Query Parameters

ParâmetroTipoDescrição
page[number]integerNúmero da página
page[size]integerItens por página
filter[status]enumFiltrar por status
filter[type]enumFiltrar por tipo
curl 'https://baas.stg.catalisa.app/baas/api/v1/providers?filter[status]=ACTIVE' \
-H 'Authorization: Bearer SEU_TOKEN'

Obter Provedor por ID

GET /baas/api/v1/providers/:id

Obtém os detalhes de um provedor específico.

curl 'https://baas.stg.catalisa.app/baas/api/v1/providers/550e8400-e29b-41d4-a716-446655440001' \
-H 'Authorization: Bearer SEU_TOKEN'

Atualizar Provedor

PATCH /baas/api/v1/providers/:id

Atualiza a configuração de um provedor bancário.

Atributos Atualizáveis

CampoTipoDescrição
namestringNome do provedor
statusenumStatus do provedor
credentialsobjectCredenciais (atualização parcial)
settingsobjectConfigurações
metadataobjectDados adicionais
curl -X PATCH 'https://baas.stg.catalisa.app/baas/api/v1/providers/550e8400-e29b-41d4-a716-446655440001' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "providers",
"id": "550e8400-e29b-41d4-a716-446655440001",
"attributes": {
"credentials": {
"environment": "production",
"clientId": "prod-client-id",
"clientSecret": "prod-client-secret"
},
"settings": {
"webhookUrl": "https://api.exemplo.com/webhooks/bank-prod"
}
}
}
}'

Excluir Provedor

DELETE /baas/api/v1/providers/:id

Remove um provedor bancário. O provedor não pode ter contas ativas vinculadas.

curl -X DELETE 'https://baas.stg.catalisa.app/baas/api/v1/providers/550e8400-e29b-41d4-a716-446655440001' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (204 No Content)

Sem corpo de resposta.


Testar Conexão com Provedor

POST /baas/api/v1/provider-configs/:id/test

Testa a conexão com o provedor bancário, validando se as credenciais configuradas estão corretas e se o provedor está acessível. Útil para verificar a configuração antes de ativá-la em produção.

curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/provider-configs/550e8400-e29b-41d4-a716-446655440001/test' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (200 OK)

{
"data": {
"type": "provider-test",
"attributes": {
"providerId": "550e8400-e29b-41d4-a716-446655440001",
"status": "SUCCESS",
"latencyMs": 245,
"errorMessage": null,
"testedAt": "2024-01-15T10:30:00Z",
"features": {
"accounts": true,
"transfers": true,
"pix": true,
"boleto": true
}
}
}
}
Dica

Execute este teste após configurar ou atualizar as credenciais do provedor para garantir que a integração está funcionando corretamente.


Definir Provedor Padrão

POST /baas/api/v1/provider-configs/:id/set-default

Define um provedor como padrão para a organização. O provedor padrão será utilizado automaticamente quando nenhum providerId específico for informado ao criar contas ou realizar operações.

curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/provider-configs/550e8400-e29b-41d4-a716-446655440001/set-default' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (200 OK)

{
"data": {
"type": "providers",
"id": "550e8400-e29b-41d4-a716-446655440001",
"attributes": {
"name": "Banco Principal",
"code": "BANK_001",
"type": "FULL",
"status": "ACTIVE",
"isDefault": true,
"updatedAt": "2024-01-15T10:30:00Z"
}
}
}
Provedor padrão

Apenas um provedor pode ser definido como padrão por vez. Ao definir um novo provedor padrão, o anterior deixa de ser padrão automaticamente.


Erros Comuns

CódigoErroDescrição
400VALIDATIONDados inválidos (credenciais, tipo, etc.)
404NOT_FOUNDProvedor não encontrado
409CONFLICTCódigo já em uso por outro provedor
409CONFLICTProvedor possui contas ativas (exclusão)
422UNPROCESSABLECredenciais inválidas ou provedor não acessível
422CONNECTION_FAILEDTeste de conexão falhou (credenciais ou rede)