AcapaPay · CodeIgniter SDK
Requisitos e Instalação
Requisitos do Sistema
| Componente | Versão Mínima | Notas |
|---|---|---|
| PHP | 8.1+ | Exigido por composer.json (php: ^8.1) |
| CodeIgniter | 4.4+ | Exigido por composer.json (codeigniter4/framework: ^4.4) |
| CURLRequest | Incluído no CodeIgniter | Usado internamente pelo SDK (Services::curlrequest()) para chamadas à API |
| Credenciais SSO | — | Client ID e Client Secret criados no painel Developer do SSO Acapadev |
Instalação via Composer
composer require devkussema/acapapay-codeigniter
Auto-Discovery de Rotas
Ao contrário do SDK Laravel (que regista a rota através de um ServiceProvider), este pacote regista a rota de webhook POST webhooks/acapapay automaticamente via Auto-Discovery do CodeIgniter (ficheiro src/Config/Routes.php do pacote). Não precisa de editar o app/Config/Routes.php da sua aplicação. Confirme apenas que o discovery está ativo em app/Config/Modules.php:
public bool $discoverInComposer = true; // valor padrão numa instalação nova do CodeIgniter 4
Estender a Configuração (Opcional)
Por padrão os valores vêm das variáveis de ambiente (ver a página de Referência). Se precisar de lógica extra — por exemplo, registar o planoProvider usado pela sincronização de planos — crie app/Config/AcapaPay.php na sua aplicação, estendendo a config do pacote:
<?php
namespace Config;
use AcapaPay\CodeIgniter\Config\AcapaPay as BaseAcapaPay;
class AcapaPay extends BaseAcapaPay
{
public ?string $planoProvider = \App\Services\AcapaPayPlanoProvider::class;
}
O helper config('AcapaPay') do CodeIgniter resolve automaticamente para a sua subclasse, se existir.
Testar a Conexão (Diagnóstico)
Antes de escrever qualquer código, o pacote disponibiliza um comando spark de diagnóstico que envia um ping M2M à infraestrutura central e valida as suas credenciais e a conectividade de rede:
php spark acapapay:test-connection
- ✅ Sucesso: Confirmação de que as credenciais são válidas e o servidor responde.
- ❌ Falha: Relatório detalhado indicando o problema exato (credenciais inválidas, firewall, SSL, etc.), incluindo o
modo,hosteapiHostatualmente configurados.
Internamente, este comando invoca (new AcapaPay())->testarConexao(), que autentica via OAuth2 e depois chama GET /v1/ping com o token obtido.