Logo

Cash In

Criar Transação PIX

POST/v1/transactions

Cria uma nova transação de pagamento via PIX. Retorna o payload do QR Code para ser apresentado ao cliente.

Definição do Body

Interface TypeScripttypescript
interface CreateTransactionRequest {
  external_id?: string;        // Sua referência interna (opcional)
  total_amount: number;        // Valor em BRL (ex: 100.50)
  payment_method: "PIX";       // Apenas PIX disponível
  webhook_url?: string;        // URL para receber atualizações de status
  items: TransactionItem[];    // Itens da transação
  ip?: string;                 // IP do cliente (opcional)
  customer: Customer;          // Dados do cliente
}

interface TransactionItem {
  id: string;
  title: string;
  description?: string;
  price: number;
  quantity: number;
  is_physical: boolean;        // true = produto físico, false = digital
}

interface Customer {
  name: string;
  email: string;
  phone: string;
  document_type: "CPF" | "CNPJ";
  document: string;            // Apenas dígitos
}

Parâmetros Principais

CampoTipoDescrição
external_id
stringSua referência interna para a transação. Use para cruzar com seus próprios registros.
total_amountobrigatório
numberValor total da transação em BRL (ex: 100.50). Deve ser positivo.
payment_methodobrigatório
"PIX"Método de pagamento. Atualmente apenas PIX é suportado.
webhook_url
stringURL que receberá notificações POST quando o status da transação mudar.
itemsobrigatório
TransactionItem[]Array com os itens da transação.
ip
stringEndereço IP do cliente.
customerobrigatório
CustomerDados completos do cliente pagador.

TransactionItem

CampoTipoDescrição
idobrigatório
stringIdentificador do item
titleobrigatório
stringNome do produto ou serviço
description
stringDescrição adicional do item
priceobrigatório
numberPreço unitário em BRL
quantityobrigatório
numberQuantidade
is_physicalobrigatório
booleantrue para produto físico, false para digital/serviço

Customer

CampoTipoDescrição
nameobrigatório
stringNome completo do cliente
emailobrigatório
stringEmail do cliente
phoneobrigatório
stringTelefone do cliente (apenas dígitos)
document_typeobrigatório
"CPF" | "CNPJ"Tipo do documento
documentobrigatório
stringNúmero do documento (apenas dígitos)

Como usar o payload PIX

O campo pix.payload contém o código PIX (copia e cola) que deve ser apresentado ao cliente para pagamento. Use este valor para gerar um QR Code ou permitir que o cliente copie diretamente.

Erros Possíveis

400Parâmetros obrigatórios ausentes ou com formato inválido
401API Secret ausente ou inválido
500Erro interno ao processar a transação
POSThttps://api.genesys.finance/v1/transactions
Headers
api-secret: seu_api_secret_aqui
Content-Type: application/json
Request Body (JSON)
{
  "external_id": "pedido_12345",
  "total_amount": 100.50,
  "payment_method": "PIX",
  "webhook_url": "https://sua-api.com/webhooks/transactions",
  "items": [
    {
      "id": "item_001",
      "title": "Assinatura Premium",
      "price": 100.50,
      "quantity": 1,
      "is_physical": false
    }
  ],
  "customer": {
    "name": "João Silva",
    "email": "joao.silva@exemplo.com",
    "phone": "11999999999",
    "document_type": "CPF",
    "document": "12345678901"
  }
}
cURL
curl -X POST "https://api.genesys.finance/v1/transactions" \
  -H "api-secret: seu_api_secret_aqui" \
  -H "Content-Type: application/json" \
  -d '{
    "total_amount": 100.50,
    "payment_method": "PIX",
    "customer": {
      "name": "João Silva",
      "email": "joao@exemplo.com",
      "phone": "11999999999",
      "document_type": "CPF",
      "document": "12345678901"
    },
    "items": [
      {
        "id": "item_001",
        "title": "Assinatura Premium",
        "price": 100.50,
        "quantity": 1,
        "is_physical": false
      }
    ]
  }'
Response 200
{
  "id": "c22dc7e1-8b10-4580-9dc4-ebf78ceca475",
  "external_id": "pedido_12345",
  "status": "PENDING",
  "total_value": 100.50,
  "payment_method": "PIX",
  "pix": {
    "payload": "00020126580014br.gov.bcb.pix..."
  },
  "hasError": false
}