Autenticação

Endpoints e Integração com a APICopied!

A API da Pay2WIN permite que você integre checkouts diretamente à nossa plataforma, fornecendo uma experiência robusta e flexível de pagamentos. Aqui você encontrará detalhes sobre os endpoints disponíveis e como utilizá-los.

Endpoint:

https://api.pay2w.com

O modo sandbox é ideal para testes e desenvolvimento, simulando o comportamento real da API sem impactar transações reais. Para usar o sandbox, é necessário mudar o status do token lá nas credenciais de PRODUÇÃO para DESENVOLVIMENTO

A API utiliza o método Basic Authentication para validar as requisições. Isso significa que, para acessar os endpoints, você deverá enviar um cabeçalho Authorization contendo suas credenciais codificadas em Base64.

Formato do CabeçalhoCopied!

O cabeçalho deve seguir o seguinte padrão:

Authorization: Basic {encoded_credentials}

Onde {encoded_credentials} é a string resultante da codificação em Base64 da seguinte concatenação:

client_id:client_secret

Passo a Passo para Gerar as CredenciaisCopied!

Concatenar as Credenciais

Una o seu client_id e client_secret utilizando dois pontos : como separador.


Codificar em Base64

Codifique a string resultante em Base64.

Exemplo:

A string minha_aplicacao:senha_super_secreta pode ser codificada para:

bWluaGFfYXBsaWNhY2FvOnNlbnhhX3N1cGVyX3NlY3JldGE=

Montar o Cabeçalho

Insira a string codificada no cabeçalho Authorization conforme o formato exigido.

Exemplo de Cabeçalho Completo:

Authorization: Basic bWluaGFfYXBsaWNhY2FvOnNlbnhhX3N1cGVyX3NlY3JldGE=

Exemplo de Requisição

curl -X GET "https://api.pay2w.com/algum-endpoint" \
  -H "Authorization: Basic bWluaGFfYXBsaWNhY2FvOnNlbnhhX3N1cGVyX3NlY3JldGE=" \
  -H "Content-Type: application/json"

import axios from 'axios';

// Defina suas credenciais
const clientId = 'sua_public_key';
const clientSecret = 'sua_secret_key';

// Concatene as credenciais e faça a codificação em Base64
const credentials = `${clientId}:${clientSecret}`;
const encodedCredentials = Buffer.from(credentials).toString('base64');

// Configuração do cabeçalho com a autenticação básica
const config = {
  headers: {
    'Authorization': `Basic ${encodedCredentials}`,
    'Content-Type': 'application/json'
  }
};

// URL do endpoint (substitua "algum-endpoint" pelo endpoint desejado)
const url = 'https://api.pay2w.com/algum-endpoint';

// Realiza a requisição GET
axios.get(url, config)
  .then(response => {
    console.log('Resposta da API:', response.data);
  })
  .catch(error => {
    if (error.response) {
      // A requisição foi feita e o servidor respondeu com um status fora do intervalo de 2xx
      console.error('Erro na resposta da API:', error.response.data);
    } else if (error.request) {
      // A requisição foi feita, mas nenhuma resposta foi recebida
      console.error('Nenhuma resposta recebida:', error.request);
    } else {
      // Ocorreu um erro na configuração da requisição
      console.error('Erro na configuração da requisição:', error.message);
    }
  });

Importante

  • Tratamento de Erros: Caso as credenciais sejam inválidas ou ausentes, a API retornará um status 401 Unauthorized acompanhado de uma mensagem de erro detalhada.

  • Segurança das Credenciais: Mantenha seu client_id e client_secret seguros e evite expô-los publicamente