Para interagir com a nossa API e realizar transações via POS, é necessário entender a hierarquia de credenciais e como utilizá-las nos cabeçalhos de suas requisições.
1. O que são as Credenciais?
A estrutura de credenciais do Connect Stone é composta por dois ecossistemas que trabalham juntos: Pagar.me (gestão de contas e chaves) e Stone (processamento e terminais).
Estrutura Hierárquica
- Merchant (Parceiro): É a entidade principal (você). Possui visão global de todos os clientes.
- Account (Clientes): Cada estabelecimento comercial abaixo do parceiro possui uma conta única.
- Secret Key (SK): Uma chave transacional exclusiva vinculada a cada Account. É ela que autoriza as operações.
- Stonecode: É a identificação do estabelecimento dentro da Stone. Ele está vinculado à Account e é o que conecta o software aos terminais físicos (POS).
2. Como obter suas Chaves
As chaves de API são geradas após a conclusão do processo de Setup no Partner Hub! Você pode acessa-las tanto pelo próprio Partner Hub, quanto pela Dashboard Pagar.me.
Passo a Passo Partner Hub:
- Acesse o Partner Hub e faça login.
- No menu lateral, navegue até Integração > Setup.
- Selecione o Connect Stone e vá em Setup > Ativação Connect.
Passo a Passo Pagar.me:
- Acesse este link e faça login com seu usuário.
- Após acessar o Dash, navegue até a área de Desenvolvimento e em seguida clique em Chaves.
3. Autenticação nas Requisições
Utilizamos o padrão Basic Auth para garantir a segurança das chamadas de API. A sua Secret Key deve ser enviada no cabeçalho Authorization, com o padrão já aplicado.
curl --location --request POST https://api.pagar.me/core/v5/orders' \
-H 'Authorization: Basic c2tfdGVzdF9*Og==' \
-H 'Content-Type: application/json' \
var fs = require('fs');
const request = require("request");
var body = JSON.parse(fs.readFileSync('body.json', 'utf8'));
var options = {
method: 'POST',
uri: 'https://api.pagar.me/core/v5/orders',
headers: {
'Authorization': 'Basic ' + Buffer.from("sk_test_*:").toString('base64'),
'Content-Type': 'application/json'
},
json : body
};
request(options, function(error, response, body) {
console.log(response.body);
});
Como utilizar a SecretKey
Para montar a requisição Basic Auth, você deve utilizar a SecretKey da seguinte maneira:
User: SecretKey
Password: vazio
SEGURANÇA DOS DADOS: Suas chaves secretas permitem a movimentação de transações reais. Nunca as inclua em repositórios públicos de código (como GitHub público) ou em códigos de front-end que fiquem visíveis ao usuário final, ou compartilhe com terceiros.
