Processe seu Primeiro Pagamento
Este tutorial orienta você na realização da sua primeira requisição de API para a Get Smart API Cloud. Você iniciará um pagamento no Ambiente de Teste utilizando credenciais de exemplo.
Ao final deste tutorial, você terá:
- Construído um objeto de pagamento JSON válido.
- Gerado a assinatura criptográfica necessária.
- Enviado uma requisição
POSTpara a API. - Recebido uma confirmação
200 OK.
Pré-requisitos
- Cliente de API: Uma ferramenta como
curl, Postman ou um ambiente de código (Python, Node.js, etc.). - Credenciais de Teste: Utilizaremos os seguintes valores de exemplo encontrados na documentação:
- Código de Estabelecimento (
comercio):777888991 - Terminal:
1 - Secret Key (Chave Secreta):
AAABBB(Utilizada para assinatura)
- Código de Estabelecimento (
Passo 1: Definir os Dados de Pagamento
Para iniciar um pagamento, você deve construir um objeto JSON contendo os detalhes da transação. A estrutura requer uma hierarquia específica.
Crie um objeto JSON com os seguintes campos:
{
"comercio": "777888991",
"terminal": 1,
"timestamp": "20250428 111217",
"notificacion": {
"urlNotificacion": "[https://www.miservicio.es/servicio/notificaciones/tpvpc](https://www.miservicio.es/servicio/notificaciones/tpvpc)",
"correoNotificacion": "[email protected]"
},
"datosOperacion": {
"importe": "15.00",
"factura": "FACTURA1"
}
}Notas sobre os campos:
timestamp: Deve estar no formatoYYYYMMDD HHmmss.importe: O valor no formatoXXXXXXXXX.XX(ex.:15.00).factura: Seu ID de referência único para a compra (máx. 250 caracteres).
Passo 2: Gerar a Assinatura
A segurança na API Cloud é aplicada via uma assinatura SHA-256. Você não pode simplesmente enviar o JSON acima; você deve assiná-lo.
A lógica da assinatura funciona da seguinte forma:
- Pegue a string JSON exata do objeto
info(minimizada, sem espaços extras). - Adicione sua Secret Key ao final dessa string.
- Calcule o hash SHA-256 da string combinada.
Para um mergulho profundo no algoritmo de assinatura, consulte o guia de Lógica de Assinatura e Segurança.
Exemplo de Cálculo
Payload (minimizado): {"comercio":"777888991","timestamp":"...","datosOperacion":{"importe":"15.00",...}}
Secret Key: AAABBB
String Combinada: {"comercio":"..."...}AAABBB
Assinatura Resultante: 0ED5D16230C0E2683CF304A713154B90D887D592EF72437AA214CBA305B00646
Passo 3: Enviar a Requisição
Combine seu objeto info e sua signature calculada no corpo final da requisição. Envie este payload para o Endpoint do Ambiente de Teste.
Endpoint: https://tpvpc-i.redsys.es:27443/TPV_PC/services/rest/tpvpcwss/v1/pago
Requisição via cURL
Aqui está um exemplo completo e executável usando curl.
curl -X POST "https://tpvpc-i.redsys.es:27443/TPV_PC/services/rest/tpvpcwss/v1/pago" \\
-H "Content-Type: application/json" \\
-d '{
"info": {
"comercio": "777888991",
"terminal": 1,
"timestamp": "20250428 111217",
"notificacion": {
"urlNotificacion": "https://www.miservicio.es/servicio/notificaciones/tpvpc",
"correoNotificacion": "[email protected]"
},
"datosOperacion": {
"importe": "15.00",
"factura": "FACTURA1"
}
},
"signature": "0ED5D16230C0E2683CF304A713154B90D887D592EF72437AA214CBA305B00646"
}'A assinatura no exemplo acima é válida apenas para os dados e timestamp exatos exibidos (20250428 111217). Se você alterar o timestamp ou o valor, você deve recalcular a assinatura.
Passo 4: Verificar a Resposta
Se sua requisição for bem-sucedida, a API retornará um status 200 OK e uma resposta JSON.
Exemplo de Resposta de Sucesso:
{
"signature": "CD8E8EC1C53E945C03A37E6B3B2E2273AC4DF11E1C6AE0F9556007F505DABE39",
"info": {
"resultado": {
"codigo": "0"
}
}
}codigo: "0": Indica que a API recebeu e validou sua requisição com sucesso.- Processamento Assíncrono: Esta resposta não significa que o pagamento está concluído. Significa apenas que o sistema na nuvem aceitou o comando. O terminal físico agora irá ativar e solicitar o cartão ao portador.
Próximos Passos
Você iniciou um pagamento com sucesso!
- Configurar Webhooks e Notificações: Aprenda como receber o resultado final (Aprovado/Negado) assim que o cliente terminar de interagir com o terminal.
- Configurar Ambientes e Credenciais: Mude destas credenciais de teste para suas chaves de produção.