Overview da API - Parceiros conciliadores

Esta seção é destinada a parceiros Stone que desejam acessar os arquivos de conciliação de terceiros.

Antes de integrar a nossa solução, é necessário que você entenda o fluxo operacional para que sua integração possa ocorrer sem problemas.

Você é um cliente Stone (lojista) acessando seu próprio arquivo? Consulte o Overview da API - Cliente Stone. O fluxo de autenticação é diferente.

Fluxo para parceiros conciliadores

Para conseguir acesso ao arquivo de Conciliação, é preciso seguir 3 passos:

  1. Solicitar as credenciais da API
  2. Solicitar concessão de acesso ao arquivo, para o estabelecimento
  3. Buscar o arquivo em nossa API

1. Solicitar Credenciais de API

As credenciais para acesso aos arquivos de conciliação são: ClientId e ClientSecret.

Para obter suas credenciais, acesse e preencha o formulário de Parcerias disponível nesta página. Se já for um parceiro, entre em contato com [email protected].

Importante: Caso você seja um lojista, informe sua conciliadora para que ela entre em contato com nosso canal de Parcerias.

2. Solicitar Concessão de Acesso ao Arquivo

Para que uma empresa terceira (conciliadora) acesse os dados de conciliação de um estabelecimento, é necessário o consentimento do lojista.

O fluxo ocorre da seguinte forma:

  1. A conciliadora solicita o acesso ao arquivo do lojista via nossa API (Pedido de consentimento);
  2. O lojista recebe um e-mail, podendo aprovar ou recusar o pedido através dos links disponíveis.
  3. Ao aprovar, nosso sistema registra a concessão e envia um e-mail de confirmação.
  4. As credenciais de acesso são enviadas automaticamente à conciliadora via webhook (Resposta de Consentimento);
  5. Após receber e decriptar a senha utilizando AES CBC PKCS7 (Decriptando senha), a conciliadora pode se autenticar utilizando o endpoint de autenticação Gerando seu token de acesso .
❗️

Pontos importantes sobre o consentimento:

  • O token obtido na autenticação permite o acesso aos arquivos de conciliação nos fluxos disponíveis e tem validade de 24 horas. Recomenda-se implementar cache com renovação automática baseada no tempo de expiração.
  • O consentimento é vinculado ao documento (CNPJ), não ao StoneCode. Uma vez que o lojista aprova o acesso para um documento, todos os StoneCodes associados a esse documento ficam acessíveis com as mesmas credenciais — inclusive StoneCodes criados no futuro.
  • A webhookUrl deve obrigatoriamente usar HTTPS. As URLs com HTTP serão recusadas com erro 400.
  • Recomenda-se usar a mesma webhookUrl para todos os lojistas. Caso seja necessário alterar a URL, há um cache por clientId de 10 minutos — a nova URL só passa a receber eventos após esse prazo.
  • O e-mail de consentimento é enviado para o endereço principal vinculado aoaffiliationCode(StoneCode) informado no pedido. Se o e-mail estiver desatualizado, a atualização deve ser feita pelo próprio lojista no Portal ou com ajuda do RC ([email protected]). Após atualizado, o pedido deve ser refeito.
  • Se dois pedidos de consentimento forem aceitos para o mesmo documento, dois usernames e passwords distintos serão gerados. Ambos são válidos e podem ser usados normalmente, basta selecionar qual utilizará.

3. Buscar o arquivo em nossa API

Com o token retornado, é possível consultar e baixar os arquivos de conciliação:

📘

Ao solicitar acesso, a conciliadora terá autorização para arquivos XML e de Pix (CSV).
Atenção: Os métodos de integração para cada tipo de arquivo são diferentes, siga o fluxo específico de cada um.



Erros comuns


No pedido de consentimento (POST /v2/merchant/consents)

SintomaCausa provávelSolução
400webhookUrl usando HTTPTrocar para HTTPS
400document com pontuação (pontos, traços, barras)Enviar apenas números
400affiliationCode sem e-mail vinculadoSolicitar vinculação de e-mail via Admin/credenciamento
Webhook não chega após aprovaçãoCache da webhookUrl(trocou URL recentemente)Aguardar 10 minutos após a troca
Webhook não chega (URL não trocou)URL inacessível externamente ou firewall bloqueandoVerificar se a URL está acessível pela internet

Na geração do token (POST /auth/.../oauth/token)

SintomaCausa provávelSolução
401Senha não foi decriptada antes do usoDecriptar com AES CBC PKCS7 conforme documentação
401clientId ou clientSecret incorretosVerificar credenciais

No extrato (GET /v2/merchant/stoneCode/conciliation-file/date)

SintomaCausa provávelSolução
401Faltando prefixo Bearer no AuthorizationCorrigir para Bearer <token>
401Token expirado (validade de 24h)Gerar novo token
403Token não pertence ao documento do Stone CodeVerificar se o consentimento foi feito para o documento correto
404Stone Code com letras ou data fora do formato AAAAMMDDCorrigir parâmetros
Arquivo não encontradoSolicitação antes das 5h do dia seguinteAguardar disponibilidade

Próximos passos