API PIX - FlexusPag

Documentação completa para integrar o gateway de pagamentos FlexusPag ao seu sistema

Introdução

A API da FlexusPag permite que você integre pagamentos via PIX de forma simples e segura em sua aplicação. Com ela, você pode:

  • Gerar QR Codes PIX para recebimento
  • Realizar transferências PIX (saques)
  • Receber notificações em tempo real via Webhook
  • Consultar saldo e transações
URL Base da API https://flexuspag.site/v3/pix/

Autenticação

Todas as requisições à API devem incluir suas credenciais de acesso. Suas chaves são únicas e identificam sua conta no sistema FlexusPag.

Headers Obrigatórios
Content-Type: application/x-www-form-urlencoded

Os parâmetros client_id e client_secret devem ser enviados no corpo da requisição (POST body), não nos headers.

Segurança Nunca compartilhe sua Secret Key. Ela deve ser mantida em segurança e usada apenas em requisições do seu servidor para nossa API.

Como obter suas credenciais

  1. Acesse o painel da FlexusPag com sua conta
  2. Vá até a seção "API"
  3. Clique em "Credenciais"
  4. Preencha as informações solicitadas (nome do projeto, domínio, etc.)
  5. Confirme com seu PIN de segurança
  6. Suas chaves Client ID e Client Secret serão geradas
Atenção!

Suas credenciais são únicas e intransferíveis. Nunca compartilhe sua Client Secret com terceiros.

Gerar QR Code PIX

Este endpoint permite a geração de um QR Code PIX para recebimento de pagamentos. Ideal para e-commerces, aplicações mobile e sistemas que necessitam de integração com pagamentos via PIX.

POST https://flexuspag.site/v3/pix/qrcode

Exemplo de Código

PHP
<?php
$apiUrl = 'https://flexuspag.site/v3/pix/qrcode';

$postData = [
    'client_id' => 'SEU_CLIENT_ID',
    'client_secret' => 'SEU_CLIENT_SECRET',
    'nome' => 'Nome do Cliente',
    'cpf' => '12345678901',
    'valor' => 100.00,
    'descricao' => 'Descrição do pagamento',
    'urlnoty' => 'https://seuservidor.com/callback'
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/x-www-form-urlencoded',
]);

$response = curl_exec($ch);
$result = json_decode($response, true);

if (curl_errno($ch)) {
    echo 'Erro cURL: ' . curl_error($ch);
} elseif ($result['success']) {
    echo 'QR Code: ' . $result['data']['qrcode'];
    echo 'Transação ID: ' . $result['data']['transaction_id'];
} else {
    echo 'Erro: ' . $result['message'];
}

curl_close($ch);
?>

Parâmetros da Requisição

ParâmetroDescriçãoTipoObrigatório
client_id Seu Client ID da FlexusPag (fornecido no painel) string Sim
client_secret Sua Client Secret da FlexusPag (fornecido no painel) string Sim
nome Nome completo do pagador string Sim
cpf CPF do pagador (apenas números, 11 dígitos) string Sim
valor Valor da transação em reais (use ponto como separador decimal) float Sim
descricao Descrição da transação (opcional) string Não
urlnoty URL para receber notificações de callback (Webhook) string Não

Respostas da API

Sucesso (200)
{
    "success": true,
    "message": "QR Code gerado com sucesso!",
    "data": {
        "qrcode": "00020126850014br.gov.bcb.pix2563pix...",
        "transaction_id": "e6e6827c1ca7ff368916371791529fvue",
        "external_id": "6a1f623b0b66b",
        "amount": 100.00,
        "status": "PENDING"
    }
}
Erro de Autorização (401)
{
    "success": false,
    "message": "client_id ou client_secret inválidos."
}

Transferência PIX (Saque)

Este endpoint permite realizar transferências PIX para qualquer chave PIX cadastrada. Ideal para sistemas que necessitam de pagamentos automáticos, saques ou transferências entre contas.

POST https://flexuspag.site/v3/pix/payment

Exemplo de Código

PHP
<?php
$apiUrl = 'https://flexuspag.site/v3/pix/payment';

$postData = [
    'client_id' => 'SEU_CLIENT_ID',
    'client_secret' => 'SEU_CLIENT_SECRET',
    'nome' => 'Nome do Destinatário',
    'cpf' => '12345678901',
    'chave_pix' => '11970142332',
    'valor' => 100.00,
    'descricao' => 'Pagamento via API',
    'urlnoty' => 'https://seuservidor.com/callback'
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/x-www-form-urlencoded',
]);

$response = curl_exec($ch);
$result = json_decode($response, true);

if (curl_errno($ch)) {
    echo 'Erro cURL: ' . curl_error($ch);
} elseif ($result['success']) {
    echo 'Transferência solicitada com sucesso!';
    echo 'Transação ID: ' . $result['data']['transaction_id'];
} else {
    echo 'Erro: ' . $result['message'];
}

curl_close($ch);
?>

Parâmetros da Requisição

ParâmetroDescriçãoTipoObrigatório
client_id Seu Client ID da FlexusPag string Sim
client_secret Sua Client Secret da FlexusPag string Sim
nome Nome do destinatário string Sim
cpf CPF do destinatário (apenas números) string Sim
chave_pix Chave PIX do destinatário (CPF, Email, Telefone ou Aleatória) string Sim
valor Valor da transferência float Sim
descricao Descrição da transferência (opcional) string Não
urlnoty URL para receber notificações string Não

Respostas da API

Sucesso (200)
{
    "success": true,
    "message": "Transferência solicitada com sucesso!",
    "data": {
        "transaction_id": "e7940527273174f0afe5ec5fd8ekrn3dp",
        "external_id": "e106c4fa1bc2c91e04ad74cda565ch8us",
        "amount": 100.00,
        "tax": 5.00,
        "net_amount": 105.00,
        "status": "PENDING"
    }
}
Erro (400)
{
    "success": false,
    "message": "Saldo insuficiente para realizar a transferência."
}

Webhook - Pagamento Confirmado

Quando um pagamento PIX for confirmado, a FlexusPag enviará uma notificação para a URL informada no parâmetro urlnoty.

Payload Enviado
{
    "event": "payment.confirmed",
    "transaction_id": "c327ce8bee2a18565ec2m1zdu6px2keu",
    "external_id": "seu_id_interno",
    "status": "completed",
    "amount": 100.00,
    "paid_at": "2026-06-14T15:30:00-03:00",
    "pix_data": {
        "end2end_id": "E12345678202406141530abcdef12345"
    }
}
Validação de Segurança

Para garantir a autenticidade do webhook, validamos a assinatura no header X-Signature. Exemplo de validação em PHP:

$payload = file_get_contents('php://input');
$signature = $_SERVER['HTTP_X_SIGNATURE'] ?? '';
$secretKey = 'SUA_CLIENT_SECRET';

$expected = hash_hmac('sha256', $payload, $secretKey);

if (!hash_equals($expected, $signature)) {
    http_response_code(401);
    exit('Assinatura inválida');
}

$data = json_decode($payload, true);
// Atualize o status do pedido no seu sistema

Webhook - Transferência Concluída

Quando uma transferência PIX for concluída, a FlexusPag enviará uma notificação para a URL informada no parâmetro urlnoty.

Payload Enviado
{
    "event": "withdrawal.completed",
    "transaction_id": "a2f5aeca7762c4b1fbd65ef0f0ee6014",
    "external_id": "seu_id_interno",
    "status": "completed",
    "amount": 100.00,
    "updated_at": "2026-06-14T15:30:00-03:00",
    "pix_data": {
        "end2end_id": "E29477089202606142626111199e7408",
        "recipient_name": "NOME DO DESTINATÁRIO"
    }
}

Precisa de Ajuda?

Estamos aqui para ajudar! Entre em contato com nosso suporte técnico:

  • Telegram: @gerenteraspaay
Atendimento 24/7

Nosso suporte está disponível todos os dias, incluindo fins de semana e feriados.