Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[flake8]
max-line-length = 127
extend-ignore = E203, W503, E501
exclude =
.git,
__pycache__,
build,
dist,
.eggs,
*.egg-info,
.venv,
venv,
example
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@ jobs:
run: |
pip install flake8
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
flake8 sofizpay tests --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
flake8 sofizpay tests --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics

- name: Run tests with pytest
run: |
Expand Down
84 changes: 35 additions & 49 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,60 +5,46 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.2.0] - 2026-08-22




## [1.0.2] - 2025-08-01
sd

## [1.0.2] - 2025-08-01
sd
### Added
- **CIB & EDAHABIA Sandbox Environment Support**:
- `is_sandbox` parameter in `SofizPayClient` and `make_cib_transaction`.
- Dedicated `make_sandbox_cib_transaction` method.
- Dedicated `check_sandbox_cib_status` method.
- Support for `webhook_url`, `invoice_id`, `language`, `keep_return_url`, and `redirect` parameters.
- **CIB Status Verification**:
- `check_cib_transaction` and `check_cib_status` methods.
- Parsing and status classification (`paid`, `pending`, `Amount`, `errorMessage`, `orderStatus`).
- **Algerian Utility & Telecom Services**:
- `get_products`: Products catalog search & listing.
- `get_operation_history`: Service operation history.
- `get_operation_details`: Individual operation status tracking by UUID.
- `pay_bill`, `pay_ade_bill`: Water bill payment for Algérienne Des Eaux.
- `pay_sonelgaz_bill`: Electricity & gas bill payment for Sonelgaz.
- `pay_algerie_telecom_bill`: Landline and internet bill payment for Algérie Télécom.
- `recharge_phone`: Flexy mobile balance top-ups (Mobilis, Djezzy, Ooredoo).
- `recharge_internet`: IDOOM 4G and ADSL subscriptions.
- `recharge_game`: Gaming vouchers (PUBG UC, Free Fire Diamonds).
- **Search by Memo**:
- `search_transactions_by_memo` in `SofizPayClient` and `TransactionManager`.
- **Top-level Convenience Exports**:
- All utility and CIB methods exposed at the package root level in `sofizpay`.
- **Documentation**:
- Comprehensive guide, Sandbox test card directory, and security best practices in `README.md`.

## [1.0.2] - 2025-08-01
hello

## [1.0.2] - 2025-08-01
hello
### Added
- Bug fixes and optimizations for Stellar transaction handlers.

## [1.0.1] - 2025-07-16

### Added
- Initial release of SofizPay SDK for Python
- Payment operations using Stellar network
- DZT asset support with default issuer configuration
- Real-time transaction streaming and monitoring
- Balance checking for DZT and other assets
- Transaction history retrieval
- Transaction lookup by hash
- Comprehensive error handling and validation
- Async/await support for all operations
- Rate limiting for API calls
- Context manager support
- Extensive documentation and examples
- Full test suite with pytest

### Features
- **Payment Management**: Send DZT payments with memo support
- **Transaction Monitoring**: Real-time transaction streaming
- **Balance Checking**: Get DZT balances and all account assets
- **Transaction History**: Retrieve transaction records with filtering
- **Error Handling**: Comprehensive exception hierarchy
- **Validation**: Input validation for all operations
- **Rate Limiting**: Built-in rate limiting for API stability
- **Examples**: Complete examples for all major operations

### Technical Details
- Compatible with Python 3.8+
- Uses stellar-sdk 8.0+ for Stellar operations
- Async/await support throughout
- Comprehensive test coverage
- Type hints for better IDE support
- PEP 8 compliant code style

### Documentation
- Complete API documentation
- Usage examples in Arabic and English
- Installation and setup instructions
- Error handling guidelines
- Development setup guide
- Initial release of SofizPay SDK for Python.
- Payment operations using Stellar network (DZT asset).
- Real-time transaction streaming and monitoring.
- Balance checking for DZT and account assets.
- Transaction history and lookup by hash.
- Cryptographic RSA signature verification.
- Async/await support for core operations.
Loading
Loading