PIX
Criar Cobranca PIX
Crie uma nova transacao PIX e receba o QR Code para pagamento.
Endpoint
POST
/api/v1/transactionsCria uma nova transacao PIX com QR Code dinamico
Corpo da Requisicao
| Parametro | Tipo | Descricao |
|---|---|---|
amountobrigatorio | number | Valor da transacao em centavos (ex: 500 = R$ 5,00) |
paymentMethodobrigatorio | string | Metodo de pagamento. Use 'PIX' |
customerobrigatorio | object | Objeto com dados do cliente |
customer.nameobrigatorio | string | Nome completo do cliente |
customer.emailobrigatorio | string | Email do cliente |
customer.cpfCnpjobrigatorio | string | CPF ou CNPJ do cliente (apenas numeros) |
externalId | string | ID externo para referencia no seu sistema |
expiresInMinutes | number | Tempo de expiracao em minutos (padrao: 30) |
Exemplo de Requisicao
cURL
bash
curl -X POST https://rayopay.com.br/api/v1/transactions \ -H "X-Client-Id: e1c98954cc404cbcb2868af9b40c7a33" \ -H "X-API-Key: sua-api-key-secreta" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{ "amount": 500, "paymentMethod": "PIX", "customer": { "name": "João Silva", "email": "joao@email.com", "cpfCnpj": "12345678900" }, "externalId": "pedido-123", "expiresInMinutes": 30 }'Resposta de Sucesso
Status Code: 200 OK
response.json
json
{ "data": { "id": "f2d96218-6635-4839-81d7-9f2d5aaf4f14", "status": "WAITING_PAYMENT", "paymentMethod": "PIX", "amount": 500, "externalId": "pedido-123", "customer": { "name": "João Silva", "email": "joao@email.com", "cpfCnpj": "12345678900" }, "pix": { "qrCode": "00020126580014br.gov.bcb.pix0136...", "qrCodeBase64": "data:image/png;base64,iVBORw0KGgo...", "expiresAt": "2024-01-15T15:30:00Z" }, "createdAt": "2024-01-15T15:00:00Z", "updatedAt": "2024-01-15T15:00:00Z" }, "status": 200, "message": "Transação criada com sucesso."}Campos da Resposta
| Parametro | Tipo | Descricao |
|---|---|---|
id | string | ID unico da transacao |
status | string | Status da transacao (WAITING_PAYMENT, PAID, EXPIRED, CANCELLED) |
pix.qrCode | string | Codigo PIX Copia e Cola (EMV) |
pix.qrCodeBase64 | string | Imagem do QR Code em Base64 |
pix.expiresAt | string | Data/hora de expiracao do QR Code (ISO 8601) |
Status da Transacao
| Status | Descricao |
|---|---|
WAITING_PAYMENT | Aguardando pagamento |
PAID | Pagamento confirmado |
EXPIRED | QR Code expirado |
CANCELLED | Transacao cancelada |
Exemplos de Codigo
Node.js / JavaScript
node.js
javascript
const response = await fetch('https://rayopay.com.br/api/v1/transactions', { method: 'POST', headers: { 'X-Client-Id': process.env.RAYO_CLIENT_ID, 'X-API-Key': process.env.RAYO_API_KEY, 'Content-Type': 'application/json', 'Accept': 'application/json' }, body: JSON.stringify({ amount: 500, paymentMethod: 'PIX', customer: { name: 'João Silva', email: 'joao@email.com', cpfCnpj: '12345678900' }, externalId: 'pedido-123' })}); const data = await response.json();console.log(data.data.pix.qrCode); // PIX Copia e ColaPython
python
python
import requestsimport os response = requests.post( 'https://rayopay.com.br/api/v1/transactions', headers={ 'X-Client-Id': os.environ['RAYO_CLIENT_ID'], 'X-API-Key': os.environ['RAYO_API_KEY'], 'Content-Type': 'application/json', 'Accept': 'application/json' }, json={ 'amount': 500, 'paymentMethod': 'PIX', 'customer': { 'name': 'João Silva', 'email': 'joao@email.com', 'cpfCnpj': '12345678900' }, 'externalId': 'pedido-123' }) data = response.json()print(data['data']['pix']['qrCode']) # PIX Copia e ColaPHP
php
php
<?php$curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => 'https://rayopay.com.br/api/v1/transactions', CURLOPT_RETURNTRANSFER => true, CURLOPT_POST => true, CURLOPT_HTTPHEADER => [ 'X-Client-Id: ' . $_ENV['RAYO_CLIENT_ID'], 'X-API-Key: ' . $_ENV['RAYO_API_KEY'], 'Content-Type: application/json', 'Accept: application/json' ], CURLOPT_POSTFIELDS => json_encode([ 'amount' => 500, 'paymentMethod' => 'PIX', 'customer' => [ 'name' => 'João Silva', 'email' => 'joao@email.com', 'cpfCnpj' => '12345678900' ], 'externalId' => 'pedido-123' ])]); $response = curl_exec($curl);$data = json_decode($response, true); echo $data['data']['pix']['qrCode']; // PIX Copia e ColaDica
Use o campo externalId para vincular a transacao ao seu sistema interno. Isso facilita a reconciliacao e tracking dos pagamentos.