承接 lucas-tonolli/asaas-php-actions 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

lucas-tonolli/asaas-php-actions

Composer 安装命令:

composer require lucas-tonolli/asaas-php-actions

包简介

PHP SDK for Asaas payment gateway

README 文档

README

PHP License

Um SDK PHP não oficial, moderno e fluente para interagir com a API Asaas.

Este SDK é construído com foco em princípios de arquitetura limpa, segurança de tipo (type-safety) e uma excelente experiência para desenvolvedores, aproveitando os recursos modernos do PHP 8.1+.

⚠️ Atualmente em desenvolvimento ativo. As APIs podem sofrer alterações antes de um lançamento estável da v1.0.0.

✨ Principais Funcionalidades

  • API Fluida e Intuitiva: Encadeie métodos de forma lógica para acessar recursos e realizar ações (ex: $asaas->cliente()->criar(...)).
  • Tratamento de Erros Robusto e Previsível: Chega de adivinhações sobre o que deu errado. O Theol lança exceções específicas e tipadas para diferentes cenários de erro (ValidationException, NotFoundException, RateLimitException, etc.).
  • Retentativas Automáticas: Resiliência integrada. Requisições que falham devido a problemas de rede ou erros temporários do servidor (5xx, 429) são automaticamente retentadas com uma estratégia inteligente de backoff.
  • Estruturas de Dados Imutáveis e Seguras por Tipo: Utiliza DTOs e Value Objects readonly para garantir a integridade dos dados e prevenir mutações acidentais de estado.
  • PHP 8.1+ Moderno: Aproveita os recursos modernos do PHP, como Enums, propriedades readonly e atributos para uma base de código limpa e de fácil manutenção.

🛠️ Começando

1. Instalação via Composer

composer require lucas-tonolli/asaas-php-sdk

Configuração de Plugins do Composer > Este SDK depende do php-http/discovery para localizar automaticamente as implementações PSR-17 e PSR-18 disponíveis no seu projeto. Como o Composer só respeita a configuração allow-plugins do pacote raiz, você deve permitir explicitamente o uso deste plugin no seu composer.json para evitar prompts interativos ou falhas em ambientes de CI:

composer config allow-plugins.php-http/discovery true

Ou adicione manualmente ao seu composer.json:

"config": {
    "allow-plugins": {
        "php-http/discovery": true
    }
}

2. Exemplos Rápidos

Criando um Cliente

use AsaasPhpSdk\AsaasClient;
use AsaasPhpSdk\Config\AsaasConfig;

// Configura para o ambiente de sandbox
$config = new AsaasConfig(token: 'SUA_TOKEN_SANDBOX', isSandbox: true);

// Instancia o cliente principal
$asaas = new AsaasClient($config);

$novoCliente = $asaas->client()->create([
    'nome' => 'João Silva',
    'cpfCnpj' => '12345678901',
    'email' => 'joao@example.com',
]);

print_r($novoCliente);

Tratamento de Erros de Validação

O Toolkit facilita a captura de erros específicos.

use AsaasPhpSdk\AsaasClient;
use AsaasPhpSdk\Config\AsaasConfig;
use AsaasPhpSdk\Exceptions\Api\ValidationException;

$config = new AsaasConfig(token: 'SUA_TOKEN_SANDBOX', isSandbox: true);
$asaas = new AsaasClient($config);

try {
    // Tenta criar um cliente com dados inválidos
    $asaas->client()->create(['nome' => 'Maria Silva']); // cpfCnpj está faltando
} catch (ValidationException $e) {
    echo "Falha na validação: " . $e->getMessage();
    // Saída: Falha na validação: O campo obrigatório 'cpfCnpj' está faltando.
}

🏛️ Visão Geral da Arquitetura

O SDK segue os princípios de arquitetura limpa, separando as preocupações em camadas distintas.

  • Services: A API pública para um recurso (ex: CustomerService). Este é o seu principal ponto de entrada para interagir com o SDK.
  • Actions: "Casos de uso" internos que executam uma única operação específica (ex: CreateCustomerAction). Eles orquestram a criação de DTOs e as chamadas à API.
  • DTOs (Data Transfer Objects): Objetos estruturados, validados e imutáveis que transportam dados entre as camadas. Eles garantem que os dados são válidos antes que uma chamada à API seja feita.
  • Value Objects: Objetos auto-validáveis e imutáveis que representam um único valor de domínio (ex: Cpf, Email, CreditCard). Eles garantem a consistência dos dados no nível mais baixo.
  • Exceptions: Uma rica hierarquia de exceções personalizadas e tipadas que permitem um tratamento de erros preciso.
  • Helpers: Classes utilitárias sem estado que lidam com preocupações transversais, como sanitização de dados (DataSanitizer), configuração de clientes HTTP (HttpClientFactory) e tratamento de respostas (ResponseHandler).

📂 Estrutura do Projeto

src/
├── Actions/
│   ├── Base/
│   └── {Recurso}/
├── DTOs/
│   ├── Base/
│   └── {Recurso}/
├── Exceptions/
│   ├── Api/
│   └── DTOs/
│   └── ValueObjects/
├── Services/
│   └── Base/
├── Support/
│   ├── Helpers/
│   └── Traits/
├── ValueObjects/
│   ├── Base/
│   ├── Simple/
│   └── Structured/
├── AsaasClient.php
└── Config/

tests/
├── Unit/
└── Integration/

docs/
├── patterns/
└── workflow/

⚡ Fluxo de Desenvolvimento

  • Branching: feature/*, fix/*, docs/*
  • Commits: Siga o Conventional Commits
  • Testes: Testes de Unidade + Integração são obrigatórios para novas funcionalidades.
  • Documentação: Atualize /docs/patterns para quaisquer novas convenções.

📖 Marcos Atuais

  • v0.1.0 → Módulo Cliente (CRUD + Testes + Documentos) ✅
  • v0.2.0 → Módulo Pagamento (DTOs, Actions, Testes, Documentos) ✅
  • v0.3.0 → Módulo Webhook (CRUD + Documentos) ⏳
  • v0.3.0 → Refatorar documentação e padrões ✅
  • v1.0.0 → Lançamento Estável ⏳

📝 Notas

  • A cobertura da API é parcial; alguns endpoints ainda estão em implementação.
  • DTOs e Value Objects são imutáveis. Sempre use seus métodos estáticos from() ou fromArray() para criar novas instâncias.

lucas-tonolli/asaas-php-actions 适用场景与选型建议

lucas-tonolli/asaas-php-actions 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 0 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 10 月 10 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「payment」 「sdk」 「gateway」 「brazil」 「Asaas」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 lucas-tonolli/asaas-php-actions 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 lucas-tonolli/asaas-php-actions 我们能提供哪些服务?
定制开发 / 二次开发

基于 lucas-tonolli/asaas-php-actions 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 32
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-10-10