62pay/php-sdk

PHP SDK for the 62pay Payment Gateway

Installs: 49

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/62pay/php-sdk

0.0.14 2025-09-13 16:48 UTC

This package is auto-updated.

Last update: 2025-12-13 17:23:12 UTC


README

Um SDK robusto para integrar as soluções de pagamento 62Pay em suas aplicações PHP de forma simples e segura.

📋 Requisitos

  • PHP 8.0 ou superior
  • Composer
  • Conta válida na 62Pay e credenciais de API
  • SSL habilitado para ambientes de produção

💻 Instalação

Instale o SDK via Composer:

composer require 62pay/php-sdk

🔧 Configuração

Inicialize o SDK com sua API Key e ambiente desejado:

use Sixtytwopay\Sixtytwopay;

$sdk = new Sixtytwopay('SIXTYTWOPAY_API_KEY', 'SANDBOX');

⚠️ Importante: Nunca versione sua chave de API. Utilize variáveis de ambiente.

📦 Serviços Disponíveis

Método no SDK Serviço Descrição
$sdk->customer() CustomerService Criação, listagem e atualização de clientes
$sdk->invoice() InvoiceService Emissão e gerenciamento de cobranças
$sdk->payment() PaymentService Processamento e consulta de pagamentos
$sdk->checkout() CheckoutService Pagamento direto via checkout (Cartão de crédito)

🌟 Funcionalidades

  • Gestão de clientes
  • Emissão e gestão de cobranças
  • Processamento de pagamentos
  • Checkout seguro
  • Suporte a múltiplos métodos de pagamento
  • Tratamento de erros e integração com webhooks

📘 Exemplos de Uso

Clientes

Criar cliente (mínimo)

$customer = $sdk->customer()->create([
'name' => 'João da Silva',
]);

Criar cliente (completo)

$customer = $sdk->customer()->create([
'type' => 'LEGAL',
'name' => 'João da Silva',
'legal_name' => 'João A. da Silva',
'email' => 'joao@example.com',
'phone' => '11988887777',
'document_number' => '12345678900',
'address' => 'Rua das Palmeiras',
'address_number' => '123',
'complement' => 'Apto 45',
'postal_code' => '01311000',
'province' => 'Bela Vista',
'city' => 'São Paulo',
'state' => 'SP',
'tags' => ['vip', 'beta-tester'],
]);

Atualizar cliente

$updatedCustomer = $sdk->customer()->update('01987533-17dc-7120-a54b-de803aa04bc0', [
'email' => 'joao.novo@example.com',
'phone' => '11999998888',
'tags' => ['vip', 'premium'],
]);

Buscar cliente por ID

$customer = $sdk->customer()->get('01987533-17dc-7120-a54b-de803aa04bc0');

Listar clientes

$customers = $sdk->customer()->list();

Excluir cliente

$sdk->customer()->delete('01987533-17dc-7120-a54b-de803aa04bc0');

Cobranças

Criar fatura (mínimo)

$invoice = $sdk->invoice()->create([
'customer' => '01987533-17dc-7120-a54b-de803aa04bc0',
'payment_method' => 'PIX',
'amount' => 10000,
'due_date' => '2025-08-15',
'description' => 'Serviço de Assinatura',
]);

Criar fatura (completo, com juros/multa/desconto e parcelas)

$invoice = $sdk->invoice()->create([
'customer' => '01987533-17dc-7120-a54b-de803aa04bc0',
'payment_method' => 'CREDIT_CARD',
'amount' => 250000,
'due_date' => '2025-08-20',
'description' => 'Plano Anual Premium',
'installments' => 6,
'immutable' => false,
'interest_percent' => 500,
'fine_type' => 'PERCENTAGE',
'fine_value' => 200,
'discount_type' => 'PERCENTAGE',
'discount_value' => 1000,
'discount_deadline'=> '2025-08-10',
'tags' => ['campanha-ano', 'premium'],
]);

Atualizar fatura (parcial)

$invoice = $sdk->invoice()->update('01987533-8e9e-7384-a2e3-96fb04d556f2', [
'amount' => 12000,
'due_date' => '2025-08-25',
'description' => 'Serviço de Assinatura (ajustado)',
'installments' => 3,
'immutable' => false,
'tags' => ['ajuste', 'cliente-vip'],
]);

ℹ️ Nota: O buildUpdatePayload() só aceita um subconjunto de campos (sem juros/multa/desconto). Para alterar regras de juros/multa/desconto após criação, verifique as políticas/recursos da sua API.

Buscar fatura por ID

$invoice = $sdk->invoice()->get('01987533-8e9e-7384-a2e3-96fb04d556f2');

Listar faturas

$faturas = $sdk->invoice()->list();

Estornar/Refund

$sdk->invoice()->refund('01987533-8e9e-7384-a2e3-96fb04d556f2');

Excluir fatura

$sdk->invoice()->delete('01987533-8e9e-7384-a2e3-96fb04d556f2');

Pagamentos

Buscar pagamento por ID de fatura

$payment = $sdk->payment()->get('01987533-8e9e-7384-a2e3-96fb04d556f2');

Atualizar regras de pagamento (juros/multa/desconto/descrição)

$payment = $sdk->payment()->update('01987533-8e9e-7384-a2e3-96fb04d556f2', [
'interest_percenter' => 500,
'fine_type' => 'PERCENTAGE',
'fine_value' => 200,
'discount_type' => 'FIXED',
'discount_value' => 1000,
'discount_deadline' => '2025-08-31',
'description' => 'Pagamento ajustado com condições promocionais',
]);

Estornar pagamento (refund)

$sdk->payment()->refund('01987533-8e9e-7384-a2e3-96fb04d556f2', [
'reason' => 'CUSTOMER_REQUESTED',
]);

ℹ️ Notas

  • Os métodos recebem o ID da fatura (invoice) no path: payments/{invoice}.
  • refund() não retorna corpo (void) de acordo com o serviço.
  • O update() aplica apenas os campos aceitos em buildUpdatePayload(); envie somente o que deseja alterar.
  • Valide se a chave correta é interest_percenter ou interest_percent conforme sua API.

Checkout

Pagar fatura com cartão de crédito (mínimo)

$response = $sdk->checkout()->payWithCreditCard('01987533-8e9e-7384-a2e3-96fb04d556f2', [
'holder_name' => 'João da Silva',
'number' => '4111111111111111',
'card_expiry_date' => '12/28',
'ccv' => '123',
'billing_name' => 'João da Silva',
'billing_email' => 'joao@example.com',
'billing_document_number' => '12345678900',
'billing_postal_code' => '01311000',
'billing_address_number' => '123',
'billing_phone' => '11988887777',
]);

Com parcelas e endereço completo

$response = $sdk->checkout()->payWithCreditCard('01987533-8e9e-7384-a2e3-96fb04d556f2', [
'holder_name' => 'Maria Oliveira',
'number' => '5555444433331111',
'card_expiry_date' => '07/29',
'ccv' => '987',
'installments' => 6,
'billing_name' => 'Maria Oliveira',
'billing_email' => 'maria@example.com',
'billing_document_number' => '98765432100',
'billing_postal_code' => '20031000',
'billing_address_number' => '456',
'billing_address_complement' => 'Apto 1203',
'billing_phone' => '21977776666',
]);

⚡ Boas Práticas

Sempre utilize variáveis de ambiente para credenciais

Ative o error reporting no ambiente de desenvolvimento

Valide todos os dados de entrada

Trate exceções de forma adequada

Mantenha o SDK atualizado

🔍 Tratamento de Erros

use Sixtytwopay\Exceptions\ApiException;

try {
$fatura = $sdk->invoice()->create($dadosFatura);
} catch (ApiException $e) {
echo "Erro da API: " . $e->getMessage();
} catch (\Exception $e) {
echo "Erro geral: " . $e->getMessage();
}

🛠️ Desenvolvimento

composer install --dev
composer test

🤝 Contribuindo

1. Faça um fork do repositório
2. Crie uma branch para sua feature (git checkout -b feature/minha-feature)
3. Commit suas alterações (git commit -m 'Minha nova feature')
4. Faça o push (git push origin feature/minha-feature)
5.Abra um Pull Request

🔒 Segurança

Para reportar vulnerabilidades, siga nossa Política de Segurança.

📄 Licença

Este projeto está licenciado sob a MIT License – veja o arquivo LICENSE para mais detalhes.

💬 Suporte

  • Para dúvidas sobre a API: suporte@62pay.com.br

  • Para problemas com o SDK: abra uma issue no GitHub

  • Para casos urgentes: entre em contato com nosso time de suporte