Documentação da API

Integre o PagueMax ao seu sistema de forma simples e rápida

Base URL: https://paguemax.com/api/v1

Introdução

A API do PagueMax permite que você integre pagamentos PIX ao seu sistema de forma simples e segura.

Características

  • API RESTful completa
  • Autenticação via Token Bearer
  • Webhooks em tempo real
  • Respostas em JSON

Obter Credenciais de API

Para usar a API, você precisa gerar uma chave de API no painel do sistema.

Passo 1: Crie sua Conta

Cadastre-se gratuitamente na plataforma para ter acesso ao painel de desenvolvedor.

Criar Conta Grátis →

Passo 2: Gere uma nova chave

No painel, acesse "Chave API", clique em "Gerar Nova Chave" e dê um nome descritivo (ex: "Site Principal", "App Mobile").

⚠️ Importante: Copie e guarde o token imediatamente, pois ele só será exibido uma vez!

Passo 3: Configure no seu sistema

Adicione o token gerado nas configurações do seu site/aplicação. O token terá o formato:

nxp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Integração PIX

Crie pagamentos PIX e receba notificações em tempo real quando o pagamento for confirmado.

Endpoint

POST https://paguemax.com/api/v1/payments/pix

Parâmetros

Campo Tipo Obrigatório Descrição
amount float Sim Valor do pagamento (mínimo: R$ 0,01)
payer_name string Sim Nome completo do pagador
payer_email string Sim Email do pagador
payer_cpf string Sim CPF do pagador (apenas números)
description string Não Descrição do pagamento

Resposta de Sucesso (201)

{
  "success": true,
  "data": {
    "transaction_uuid": "550e8400-e29b-41d4-a716-446655440000",
    "amount": 100.00,
    "fee": 4.00,
    "amount_net": 96.00,
    "status": "pending",
    "qr_code": "00020126580014BR.GOV.BCB.PIX...",
    "pix_code": "00020126580014BR.GOV.BCB.PIX...",
    "pix_key": "00020126580014BR.GOV.BCB.PIX...",
    "expires_at": "2024-11-26T12:30:00Z",
    "expires_in_seconds": 300
  }
}

Cashin - Depósitos via PIX

Crie depósitos via PIX para que seus clientes possam adicionar saldo em suas contas.

Endpoint

POST https://paguemax.com/api/v1/cashin/pix

Parâmetros

Campo Tipo Obrigatório Descrição
amount float Sim Valor do depósito (mínimo: R$ 1,00)
customer_name string Sim Nome do cliente
customer_cpf string Sim CPF do cliente

Cashout - Saques via PIX

Realize pagamentos (saques) via PIX para chaves de terceiros.

Endpoint

POST https://paguemax.com/api/v1/withdrawals/pix

Parâmetros

Campo Tipo Obrigatório Descrição
amount float Sim Valor do saque
pix_key string Sim Chave PIX do destinatário
pix_key_type string Sim Tipo da chave (cpf, cnpj, email, phone, random)

Webhooks

Receba notificações automáticas quando o status de uma transação mudar.

Como configurar

Configure a URL do seu webhook no painel do sistema ou envie o parâmetro webhook_url na criação da transação.

Payload de Exemplo

{
  "event": "payment.paid",
  "data": {
    "transaction_uuid": "550e8400-e29b-41d4-a716-446655440000",
    "status": "paid",
    "amount": 100.00,
    "paid_at": "2024-01-01T12:00:00Z"
  }
}

Exemplo em PHP

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://paguemax.com/api/v1/payments/pix",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    "amount" => 100,
    "payer_name" => "João Silva",
    "payer_email" => "joao@email.com",
    "payer_cpf" => "12345678900"
  ]),
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer SEU_TOKEN_AQUI",
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

Exemplo em cURL

curl --request POST \
  --url https://paguemax.com/api/v1/payments/pix \
  --header 'Authorization: Bearer SEU_TOKEN_AQUI' \
  --header 'Content-Type: application/json' \
  --data '{
	"amount": 100,
	"payer_name": "João Silva",
	"payer_email": "joao@email.com",
	"payer_cpf": "12345678900"
}'

Exemplo em Python

Utilizando a biblioteca requests.

import requests
import json

url = "https://paguemax.com/api/v1/payments/pix"

payload = json.dumps({
  "amount": 100,
  "payer_name": "João Silva",
  "payer_email": "joao@email.com",
  "payer_cpf": "12345678900"
})
headers = {
  'Authorization': 'Bearer SEU_TOKEN_AQUI',
  'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

Exemplo em JavaScript

Utilizando a API fetch nativa.

const myHeaders = new Headers();
myHeaders.append("Authorization", "Bearer SEU_TOKEN_AQUI");
myHeaders.append("Content-Type", "application/json");

const raw = JSON.stringify({
  "amount": 100,
  "payer_name": "João Silva",
  "payer_email": "joao@email.com",
  "payer_cpf": "12345678900"
});

const requestOptions = {
  method: "POST",
  headers: myHeaders,
  body: raw,
  redirect: "follow"
};

fetch("https://paguemax.com/api/v1/payments/pix", requestOptions)
  .then((response) => response.text())
  .then((result) => console.log(result))
  .catch((error) => console.error(error));

Códigos de Erro

A API utiliza códigos HTTP padrão para indicar o sucesso ou falha de uma requisição.

Código Significado Descrição
200 OK A requisição foi processada com sucesso.
201 Created O recurso (transação) foi criado com sucesso.
400 Bad Request A requisição é inválida ou mal formatada.
401 Unauthorized Token de API inválido ou não fornecido.
403 Forbidden Você não tem permissão para acessar este recurso.
404 Not Found O recurso solicitado não foi encontrado.
422 Unprocessable Entity Erro de validação nos dados enviados (ex: CPF inválido).
500 Internal Server Error Erro interno no servidor. Tente novamente mais tarde.