This is an example repository extracted from a production application to demonstrate QuickBooks API integration patterns in Elixir. The code is close to working but does not currently function as a complete library.
This codebase demonstrates:
- OAuth 2.0 authentication flow with QuickBooks Online API
- Ecto-based data modeling for QuickBooks entities
- HTTP client implementation using Tesla
- Multi-tenant architecture supporting multiple companies
- Data transformation between Elixir structs and QuickBooks API formats
The code has been extracted and refactored from a larger production application, but several issues remain:
- Some module references may be incorrect or missing
- Configuration may need adjustment for your environment
- Database migrations have been generated but schemas may need updates
- Test coverage is incomplete
- Some dependencies or setup steps may be missing
- Authentication: OAuth 2.0 flow via
AuthClient - API Client: HTTP requests via
Client - Data Models: Ecto schemas for Companies, Tokens, and QuickBooks entities
- Utilities: Data encoding/parsing between Elixir and QuickBooks formats
# Install dependencies
mix deps.get
# Create and migrate database
mix ecto.create
mix ecto.migrate
# Run tests (may have failures)
mix testThis is primarily an example repository. While contributions are welcome to improve the example, this is not intended as a production-ready library.