BeeL Python SDK
Official Python SDK for the BeeL invoicing API. Fully typed.
Installation
pip install beel-sdk
Quick Start
from beel import BeeL
# The client validates your API key on construction
beel = BeeL('beel_sk_live_...')
# List invoices
invoices = beel.invoices.list()
# Get a specific invoice
invoice = beel.invoices.get('550e8400-e29b-41d4-a716-446655440000')
Usage
Invoices
# List with filters
invoices = beel.invoices.list(page=1, limit=20, status='paid')
# Create
from beel_generated.models import CreateInvoiceRequest, CreateInvoiceRequestLinesInner
invoice = beel.invoices.create(CreateInvoiceRequest(
customer_id='uuid',
issue_date='2026-03-10',
lines=[CreateInvoiceRequestLinesInner(
description='Service',
quantity=1,
unit_price=100
)]
))
# Issue, send, mark paid
beel.invoices.issue('invoice-id')
beel.invoices.send_email('invoice-id', SendEmailRequest(to='client@example.com'))
beel.invoices.mark_paid('invoice-id', MarkInvoicePaidRequest(payment_date='2026-03-10'))
# Download PDF
pdf = beel.invoices.download_pdf('invoice-id')
Customers
customers = beel.customers.list()
created = beel.customers.create(CreateCustomerRequest(name='ACME', nif='B12345678'))
beel.customers.update('id', UpdateCustomerRequest(email='new@acme.com'))
beel.customers.delete('id')
Products
products = beel.products.list()
results = beel.products.search(q='hosting')
Series
series = beel.series.list()
beel.series.set_default('series-id')
Configuration
tax = beel.config.get_tax_configuration()
vf = beel.config.get_verifactu_configuration()
Error Handling
from beel import BeeL, BeeLError
try:
beel = BeeL('invalid_key')
except BeeLError as e:
print(e) # "Invalid API key..."
print(e.status_code) # 401
Configuration
# Production (default)
beel = BeeL('beel_sk_live_...')
# Test environment
beel = BeeL('beel_sk_live_...', base_url='https://test.beel.es/api')
# Skip validation
beel = BeeL('beel_sk_live_...', skip_validation=True)
# Context manager
with BeeL('beel_sk_live_...') as beel:
invoices = beel.invoices.list()
Requirements
- Python 3.9+
Links
Metadata
Release files for beel-sdk 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| beel_sdk-1.0.0.tar.gz | 141.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| beel_sdk-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 630.7 kB
Release files / beel_sdk-1.0.0.tar.gz
| Download URL | beel_sdk-1.0.0.tar.gz |
|---|---|
| Size | 141.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1cf33ca9a101580a8662ccb5d310dc33adc6f940147c8a72ee46d741cc02383e
|
|
BLAKE2b-256 checksum How to use checksums |
14020ba97dcc95caa9c5cf19b7b678daa8ac7241296a161d407917a1d06586dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|
Release files / beel_sdk-1.0.0-py3-none-any.whl
| Download URL | beel_sdk-1.0.0-py3-none-any.whl |
|---|---|
| Size | 488.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9b4aec828c0f6aa09a82429a50b2e8c184f627eaa18e278db59de8423ca557b1
|
|
BLAKE2b-256 checksum How to use checksums |
9d6f742ebba80654e70759fe737a5563a217ab2c9e89c37b79826239c855e587
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|