Changelog

View Source

All notable changes to the AbacatePay Elixir SDK will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

0.1.0 - 2025-01-XX

Added

  • Initial release of AbacatePay Elixir SDK
  • Complete API client implementation with all endpoints:
    • BillingClient - Create and list billing/invoices
    • CustomerClient - Customer management operations
    • PixClient - PIX QR code creation and payment handling
    • CouponClient - Discount coupon management
    • WithdrawClient - Withdrawal operations (production only)
    • StoreClient - Store details and balance information
  • HttpClient - Robust HTTP client with automatic authentication
  • Comprehensive error handling with structured responses
  • VCR testing support with 19 pre-recorded API interactions
  • Support for both sandbox and production environments
  • Automatic request authentication with Bearer tokens
  • JSON request/response handling with proper encoding
  • Environment-based configuration system
  • Complete test suite with ExUnit and ExVCR
  • Production-ready security features:
    • Sensitive data filtering in logs
    • HTTPS-only API communication
    • Secure token management

Dependencies

  • req ~> 0.5.10 - Modern HTTP client for Elixir
  • jason ~> 1.4 - JSON encoding/decoding
  • exvcr ~> 0.15 - VCR testing support (test only)
  • excoveralls ~> 0.18 - Test coverage reports (test only)

Documentation

  • Comprehensive README with usage examples
  • API reference documentation
  • Testing guide with VCR setup
  • Configuration examples for development and production
  • Error handling patterns and best practices

Testing

  • 18 test cases covering all client operations
  • VCR cassettes for reliable offline testing
  • Real API integration tests with development tokens
  • Coverage for success and error scenarios
  • Separate test configurations for different environments