SwiftPay SDK & API — Documentação e Reference

Integração completa com a API PIX da SwiftPay

Introdução

Esta documentação fornece tanto a referência completa do SwiftPay SDK quanto a referência direta da API PIX, permitindo integração segura e precisa em PHP.

Instalação

composer require kseven/swiftpay-sdk

Certifique-se de ter PHP >= 8.0 e Guzzle 7 instalados.

Configuração

.env

SWIFTPAY_URI=https://swiftpay.com.br/api/
SWIFTPAY_TOKEN=seu_token
SWIFTPAY_SECRET=seu_secret
WEBHOOK_SECRET=seu_webhook_secret
LOG_PATH=./logs/swiftpay.log

SwiftPay SDK — Reference

SwiftPayClient

MétodoDescriçãoParâmetrosRetorno
deposit(array $data) Cria um pagamento PIX (Depósito) amount, debtor_name, email, debtor_document_number, phone, method_pay, postback array com idTransaction, qrcode, qr_code_image_url
withdraw(array $data) Realiza um saque via PIX amount, pixKey, pixKeyType, baasPostbackUrl array com id, amount, pixKey, pixKeyType, withdrawStatusId

WebhookHandler

MétodoDescriçãoParâmetrosRetorno
__construct(string $secret) Inicializa handler com segredo para validar HMAC secret void
handle(Request $request) Valida webhook e retorna dados Request $request array com status, idTransaction, typeTransaction

API PIX Direta — Reference

Depósito (PIX IN)

POST https://swiftpay.com.br/api/wallet/deposit/payment
Headers: Content-Type: application/json, Accept: application/json
Body: {
  "token": "seu_token",
  "secret": "seu_secret",
  "postback": "rota_callback",
  "amount": 100.00,
  "debtor_name": "Nome",
  "email": "email@dominio.com",
  "debtor_document_number": "CPF",
  "phone": "Telefone",
  "method_pay": "pix"
}
Response: { "idTransaction": "TX123", "qrcode": "código", "qr_code_image_url": "url" }

Saque (PIX OUT)

POST https://swiftpay.com.br/api/pixout
Headers: Content-Type: application/json, Accept: application/json
Body: {
  "token": "seu_token",
  "secret": "seu_secret",
  "baasPostbackUrl": "url_callback",
  "amount": 100.00,
  "pixKey": "chave_pix",
  "pixKeyType": "cpf"
}
Response: { "id": "uuid", "amount": 100, "pixKey": "chave", "pixKeyType": "cpf", "withdrawStatusId": "PendingProcessing" }

Webhook

O SDK e a API enviam POST para sua URL configurada, incluindo dados de status e assinatura HMAC.

{
  "nome": "Cliente Teste",
  "cpf": "12345678900",
  "email": "cliente@email.com",
  "status": "pago"
}

Checklist de Segurança