api

Visão Geral da API e Autenticação

A QuantaPay oferece uma API simples, no estilo REST, para criar pagamentos, consultar transações e gerenciar sua conta de forma programática.

Atualizado: 09/03/2026

A QuantaPay fornece uma API simples, no estilo REST, para criar pagamentos, consultar transações e gerenciar sua conta programaticamente.

Endpoint

Todas as solicitações de API são enviadas para um único endpoint:

POST https://cloud.quantapay.app/api.php

Tipo de Conteúdo

As solicitações usamapplication/x-www-form-urlencoded(codificação de formulário HTML padrão).

curl -X POST https://cloud.quantapay.app/api.php \
  -d "function=get-balances" \
  -d "api-key=YOUR_API_KEY"

Autenticação

Cada solicitação de API deve incluir suaChave de APIcomo um parâmetro POST.

ParâmetroTipoObrigatórioDescrição
api-keystringSimSua chave de API. Encontrada em Configurações → Conta.
functionstringSimO nome da função da API a ser chamada.

Obtendo sua Chave de API

  1. Faça login emcloud.quantapay.app
  2. Vá paraConfigurações → Conta
  3. Copie sua Chave de API

Segurança: Mantenha sua chave de API em segredo. Não a exponha no código do lado do cliente ou em repositórios públicos.

Assinatura HMAC (Opcional)

Paracreate-checkout-session, você pode adicionar a verificação de assinatura HMAC-SHA256 para evitar a adulteração de solicitações.

Como Funciona

  1. Construa a string de dados de assinatura:{price}|{currency}|{order_id}|{timestamp}
  2. Gere HMAC-SHA256 usando suaChave Secreta de Webhookcomo o segredo
  3. Incluaassinaturaetimestampna sua solicitação

Exemplo (PHP)

$webhook_secret = 'your-webhook-secret-key';
$price = '49.99';
$currency = 'usd';
$order_id = 'ORD-12345';
$timestamp = time();

$sign_data = $price . '|' . $currency . '|' . $order_id . '|' . $timestamp;
$signature = hash_hmac('sha256', $sign_data, $webhook_secret);

// Include in your API request:
// signature={$signature}&timestamp={$timestamp}

Exemplo (Node.js)

const crypto = require('crypto');

const webhookSecret = 'your-webhook-secret-key';
const price = '49.99';
const currency = 'usd';
const orderId = 'ORD-12345';
const timestamp = Math.floor(Date.now() / 1000);

const signData = `${price}|${currency}|${orderId}|${timestamp}`;
const signature = crypto.createHmac('sha256', webhookSecret).update(signData).digest('hex');

Nota: O timestamp deve estar dentro de 5 minutos do horário do servidor, ou a solicitação será rejeitada com "Request expired".

Formato da Resposta

Sucesso

{
  "success": true,
  "response": { ... }
}

Erro

{
  "success": false,
  "error_code": "error-code-slug",
  "message": "Human-readable error description"
}

Códigos de Erro

Código de ErroDescrição
missing-function-nameO parâmetrofunctionnão foi incluído na solicitação.
function-not-foundO nome da função especificada não existe.
api-key-not-foundO parâmetroapi-keynão foi incluído.
invalid-api-keyA chave de API fornecida está incorreta.
missing-argumentUm parâmetro obrigatório está faltando para a função especificada.

Limites de Taxa

Não há limites de taxa estritos, mas o excesso de solicitações pode ser limitado. Para uso típico ( < 100 solicitações/minuto), nenhuma limitação ocorrerá.