AuraPay Developers Documentação v1
Documentação da API AuraPay
Pagamentos Pix para o seu negócio. Ligue o seu site ou aplicação à AuraPay, receba de clientes no Brasil e acompanhe os valores na sua carteira em Moçambique.
- Pix
- Pagamentos em BRL
- 5% + R$ 1
- Por pagamento API
- Manual
- Saque pela carteira
O que é a AuraPay?
A AuraPay é uma plataforma tecnológica para comercializar produtos digitais, processar pagamentos e disponibilizar acessos. Produtores podem vender cursos, e-books e outros conteúdos; afiliados podem divulgar produtos; empresas e programadores podem integrar cobranças Pix nos seus próprios sistemas.
Produtos digitais
Produtos, checkout e área de membros na mesma plataforma.
API e integrações
Cobranças, estados de pagamento e eventos assinados para o seu sistema.
Carteira e saques
Valores confirmados na carteira, com pedidos de saque manuais.

Começar
O seu sistema cria a cobrança, o cliente paga com Pix e o processador confirma o resultado. A AuraPay regista o pagamento e disponibiliza o valor líquido na carteira.
URL base da API
https://aurapay.site/api/public/v1- Crie uma integração em API e Integrações → Integrações e chaves.
- Gere uma chave de API (comece pelo ambiente Sandbox).
- Faça a primeira requisição para criar uma cobrança Pix.
- Apresente o QR Code ou o código copia-e-cola ao seu cliente.
- Receba a confirmação automática via webhook e atualize a encomenda.
- Valide a integração e ative o ambiente de produção.
Autenticação
Todas as requisições usam o cabeçalho Authorization: Bearer SUA_CHAVE_SECRETA. As chaves de produção começam por ak_live_ e as de teste por ak_test_.
Nunca coloque a chave secreta numa página HTML pública ou numa aplicação móvel distribuída: guarde-a num backend que controla. HTTPS é obrigatório.
Cobranças Pix
/pix/chargesEnvie um corpo JSON com amount em reais. currency aceita BRL; description identifica a compra e external_reference liga a cobrança ao pedido do seu sistema. As respostas abaixo são exemplos, não transações reais.
Criar cobrança (cURL)
curl -X POST "https://aurapay.site/api/public/v1/pix/charges" \
-H "Authorization: Bearer SUA_CHAVE_SECRETA" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: pedido-12345" \
-d '{
"amount": 50.00,
"currency": "BRL",
"description": "Compra na minha loja",
"external_reference": "pedido-12345"
}'Resposta (201)
{
"id": "8f3e…",
"status": "pending",
"amount": 50.00,
"currency": "BRL",
"external_reference": "pedido-12345",
"environment": "production",
"pix": {
"copy_paste": "00020126…",
"qrcode": "data:image/svg+xml,…"
},
"fee_percentage": 5,
"platform_fee": 0,
"net_amount": 0,
"created_at": "2026-10-19T05:00:00Z",
"expires_at": "2026-10-19T05:30:00Z"
}Consultar: GET /pix/charges/{id} · Cancelar (só pendentes): POST /pix/charges/{id}/cancel. Valor mínimo R$ 10,00, máximo R$ 100.000,00.
Estados de pagamento
| Estado | Significado |
|---|---|
| pending | Criada, a aguardar pagamento |
| paid | Pagamento confirmado pelo processador |
| failed | Falha na criação junto do fornecedor |
| expired | Prazo de 30 minutos esgotado sem pagamento |
| cancelled | Cancelada pelo proprietário |
| refunded | Reembolsada pela administração |
A confirmação resulta sempre do processador de pagamentos — nunca de uma página de retorno do cliente.
Idempotência
Envie o cabeçalho Idempotency-Key ao criar cobranças. Se a requisição for repetida (falha de rede, timeout), a API devolve a cobrança original em vez de criar uma duplicada. A chave é única por integração.
Webhooks
Registe um endpoint HTTPS em Webhooks. Cada entrega é assinada com HMAC-SHA256 no cabeçalho x-aurapay-signature: t={timestamp},v1={assinatura}, calculada sobre {timestamp}.{corpo} com o segredo do endpoint. Rejeite mensagens com mais de 5 minutos.
Validar assinatura (Node.js)
const crypto = require("crypto");
function validar(segredo, cabecalho, corpoBruto) {
const partes = Object.fromEntries(
cabecalho.split(",").map((p) => p.split("="))
);
const esperado = crypto
.createHmac("sha256", segredo)
.update(partes.t + "." + corpoBruto)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(partes.v1), Buffer.from(esperado)
);
}Validar assinatura (Python)
import hmac, hashlib
def validar(segredo: str, cabecalho: str, corpo: bytes) -> bool:
partes = dict(p.split("=") for p in cabecalho.split(","))
esperado = hmac.new(
segredo.encode(),
(partes["t"] + ".").encode() + corpo,
hashlib.sha256,
).hexdigest()
return hmac.compare_digest(partes["v1"], esperado)Validar assinatura (PHP)
function validar($segredo, $cabecalho, $corpo) {
parse_str(str_replace(",", "&", $cabecalho), $p);
$esperado = hash_hmac("sha256", $p["t"] . "." . $corpo, $segredo);
return hash_equals($p["v1"], $esperado);
}Entregas falhadas são repetidas automaticamente (1 min, 5 min, 30 min, 2 h — máx. 5 tentativas). A sua aplicação deve tratar eventos repetidos de forma idempotente.
Taxas e liquidação
Exemplo de cálculo para um pagamento confirmado de R$ 100,00.
| Descrição | Valor |
|---|---|
| Valor pago pelo cliente | R$ 100,00 |
| Taxa AuraPay (5%) | R$ 5,00 |
| Taxa fixa | R$ 1,00 |
| Total de taxas | R$ 6,00 |
| Valor líquido | R$ 94,00 |
| Taxa de saque AuraPay | R$ 0,00 |
Sem assinatura nem mensalidade de R$ 50,00. A taxa de 5% + R$ 1,00 aplica-se apenas a novas transações efetivamente pagas — nunca a cobranças pendentes, falhadas ou expiradas. Cobranças de Sandbox não movimentam dinheiro nem têm taxas. O líquido entra na sua carteira AuraPay. Solicite o saque manual no seu painel; a AuraPay não efetua pagamentos automáticos.
Códigos de erro
| HTTP | Código | Significado |
|---|---|---|
| 401 | invalid_credentials | Credencial ausente, inválida, revogada ou expirada |
| 403 | insufficient_scope / integration_suspended | Permissão insuficiente ou integração suspensa |
| 404 | charge_not_found | Cobrança não encontrada |
| 409 | invalid_state / idempotency_conflict | Estado incompatível ou conflito de idempotência |
| 422 | invalid_params / invalid_amount | Parâmetros inválidos |
| 429 | rate_limited | Limite de requisições excedido |
| 500 | internal_error | Erro interno — indique o request_id ao suporte |
Exemplos de integração
JavaScript / Node.js — criar e consultar
const res = await fetch("https://aurapay.site/api/public/v1/pix/charges", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.AURAPAY_KEY,
"Content-Type": "application/json",
"Idempotency-Key": "pedido-12345",
},
body: JSON.stringify({
amount: 50.0,
currency: "BRL",
description: "Compra na minha loja",
external_reference: "pedido-12345",
}),
});
if (!res.ok) {
const { error } = await res.json();
throw new Error(error.code + ": " + error.message);
}
const cobranca = await res.json();
console.log(cobranca.pix.copy_paste); // apresentar ao clientePHP — criar cobrança
$ch = curl_init("https://aurapay.site/api/public/v1/pix/charges");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer " . getenv("AURAPAY_KEY"),
"Content-Type: application/json",
"Idempotency-Key: pedido-12345",
],
CURLOPT_POSTFIELDS => json_encode([
"amount" => 50.00,
"currency" => "BRL",
"description" => "Compra na minha loja",
"external_reference" => "pedido-12345",
]),
]);
$cobranca = json_decode(curl_exec($ch), true);
echo $cobranca["pix"]["copy_paste"];Python — criar cobrança
import os, requests
res = requests.post(
"https://aurapay.site/api/public/v1/pix/charges",
headers={
"Authorization": "Bearer " + os.environ["AURAPAY_KEY"],
"Idempotency-Key": "pedido-12345",
},
json={
"amount": 50.00,
"currency": "BRL",
"description": "Compra na minha loja",
"external_reference": "pedido-12345",
},
timeout=15,
)
res.raise_for_status()
cobranca = res.json()
print(cobranca["pix"]["copy_paste"])OpenAPI
A especificação OpenAPI 3.0 da API está disponível em https://aurapay.site/api/public/v1/openapi.json (JSON). Corresponde exatamente aos endpoints implementados.
Sandbox e produção
Sandbox
ak_test_…Use para validar pedidos, respostas e tratamento de eventos. As cobranças de teste não movimentam dinheiro nem geram taxas.
Produção
ak_live_…Use para pagamentos reais. Confirme a integração, proteja a chave e valide a confirmação do pagamento antes de entregar o seu produto ou serviço.
Os dois ambientes usam a mesma referência de endpoints; o ambiente é determinado pela chave. Não misture credenciais ou resultados de teste com transações reais.
Segurança e boas práticas
- Proteja as credenciais. Guarde chaves e segredos no seu servidor, nunca no código público, em imagens, mensagens ou registos de erro. Revogue uma chave comprometida no painel e substitua-a.
- Use apenas as permissões necessárias. Cada chave está associada a uma integração e a permissões específicas. Uma resposta 403 pode indicar falta de permissão ou suspensão.
- Confirme no servidor. Uma página de sucesso ou um comprovativo enviado pelo cliente não confirma o pagamento. Consulte a cobrança ou valide o evento assinado do processador.
- Trate repetições e falhas. Use idempotência, valide assinaturas sobre o corpo original e não entregue o mesmo pedido duas vezes. Em caso de 429, reduza a frequência e volte a tentar após o intervalo indicado.
- Minimize dados pessoais. Envie apenas o necessário e não inclua palavras-passe, documentos ou outros dados sensíveis em descrições e metadados.
UTILIZAÇÃO RESPONSÁVEL
Termos de uso da API
Esta secção reúne as orientações de utilização da API e as condições já previstas nos Termos de Uso da AuraPay. Não substitui os termos completos nem a Política de Privacidade.
Conta e responsabilidade
Mantenha dados verdadeiros e credenciais em segurança. A conta é pessoal e o titular é responsável pela atividade realizada com as suas credenciais. A verificação de identidade é necessária para receber valores, conforme as regras da plataforma.
Utilização permitida
Utilize a API para cobranças legítimas relacionadas com os seus produtos ou serviços. Não a utilize para fraude, transações simuladas, conteúdo ilegal, violação de direitos de terceiros ou exploração de dados pessoais sem base legal.
Pagamentos e taxas
A cobrança só está paga após confirmação do processador. A taxa API é de 5% + R$ 1,00 por nova transação confirmada, sem assinatura ou mensalidade; cobranças pendentes, falhadas, expiradas e de Sandbox não são tarifadas. Consulte os valores registados pela plataforma, sem calcular o saldo a partir de respostas de teste.
Saldo e saque manual
O valor líquido entra na carteira AuraPay. Não existe pagamento automático: o titular solicita o saque no seu painel e acompanha a aprovação administrativa. A taxa de saque AuraPay para estes valores é de 0%; aplicam-se as condições de verificação e os métodos disponíveis na conta.
Entrega, cancelamento e reembolso
O integrador é responsável pelo seu produto, pela entrega e pelo suporte ao cliente. O cancelamento pela API aplica-se apenas a cobranças pendentes. Pedidos de reembolso são analisados pelas vias da plataforma e respeitam os direitos legais aplicáveis; nunca trate um pagamento devolvido como receita disponível.
Dados e privacidade
Trate os dados do comprador apenas para finalidades legítimas e necessárias, com proteção adequada e respeito pela legislação aplicável. A recolha, partilha e conservação pela AuraPay são descritas na Política de Privacidade.
Limitações e suspensão
Respeite as permissões e os limites da integração. Violações podem resultar em medidas proporcionais, incluindo limitação ou suspensão, conforme os Termos de Uso. Dependências externas podem afetar o processamento; prepare a sua integração para erros e novas tentativas, sem assumir disponibilidade ininterrupta.
Dúvidas frequentes e suporte
Preciso de entrar para consultar a documentação?
Não. A documentação é pública. Para criar integrações, gerir chaves, consultar transações privadas e pedir saques, entre na sua conta AuraPay.
Preciso de criar um produto para usar a API?
A API permite integrar cobranças no seu próprio sistema, sem criar um produto no marketplace. A gestão de produtos é uma funcionalidade separada.
O saldo é pago automaticamente?
Não. Os pagamentos confirmados geram saldo na carteira. Solicite o saque manual no seu painel e acompanhe o estado do pedido.
Como pedir ajuda com uma requisição?
Consulte primeiro o código de erro e o estado da cobrança. Ao contactar o suporte indicado nos Termos de Uso, envie o request_id, horário, endpoint e código de erro. Nunca envie a chave secreta ou dados pessoais completos do comprador.
