Skip to main content

Billomat (http://www.billomat.com/): Online service for quoting, billing and more.

Invoices, estimates, reminders, credit notes, order confirmations, delivery notes,…

The billomat[API] is an open data and programming interface which enables you to access the data in your Billomat account.

python-billomat can be used in Google App Engine (GAE).

Features

  • Can be used in Google App Engine (GAE)

  • Recurrings

    • Recurring-Items

    • Recurring-Tags

    • Recurring-Email-Receivers

  • Invoices

    • Invoice-Items

    • Invoice-Tags

    • Invoice-Payments

  • Clients

    • Client-Properties

    • Client-Tags

  • Contacts

  • Articles

    • Article-Properties

    • Article-Tags

  • Reminders

    • Reminder-Items

    • Reminder-Tags

  • Email-Templates

  • Reminder-Texts

  • Customfield for metadata for every Billomat object

  • Credit-Notes

    • Credit-Note-Items

    • Credit-Note-Tags

Installation

pip install python-billomat

Examples

Clients

import pybillomat

conn = pybillomat.Connection(
    billomat_id = "<BillomatId>",
    billomat_api_key = "<BillomatApiKey",
)


# Load one client
client = pybillomat.Client(conn = conn, id = 422909)
print client
# --> Client(id=422909, name=u'TESTFIRMA', ...)


# Iterate over ALL clients.
# It loads the clients gradually. In pages of 30 clients.
clients_iterator = pybillomat.ClientsIterator(conn = conn)
clients_iterator.search()
for client in clients_iterator:
    assert isinstance(client, pybillomat.Client)
    print client.name


# Iterate over the first 10 clients
clients_iterator = pybillomat.ClientsIterator(conn = conn, per_page = 10)
clients_iterator.search()
for client in clients_iterator[:10]:
    assert isinstance(client, pybillomat.Client)
    print client.name


# Create new client
client = pybillomat.Client.create(
    conn = conn,
    name = u"TEST-CUSTOMER with Umlauts ÖÄÜ",
    zip = u"6020",
    city = u"Innsbruck",
    country_code = u"AT",
    first_name = u"TEST-FIRSTNAME",
    last_name = u"TEST-LASTNAME",
    www = u"http://halvar.at/"
)
assert isinstance(client, pybillomat.Client)
print client.name, unicode(client.id)

Invoices

import pybillomat

conn = pybillomat.Connection(
    billomat_id = "<BillomatId>",
    billomat_api_key = "<BillomatApiKey",
)


# Load one invoice
invoice = pybillomat.Invoice(conn = conn, id = 884447)
print invoice
# --> Invoice(address=u'TESTADRESSE', status=u'PAID', ...)


# Iterate over the last 10 invoices
invoices_iterator = pybillomat.InvoicesIterator(conn = conn, per_page = 10)
invoices_iterator.search(order_by = "id DESC")
for invoice in invoices_iterator[:10]:
    assert isinstance(invoice, pybillomat.Invoice)
    print invoice.invoice_number, invoice.status


# Iterate over all DRAFT-invoices
invoices_iterator = pybillomat.InvoicesIterator(conn = conn)
invoices_iterator.search(status = "DRAFT")
for invoice in invoices_iterator:
    assert isinstance(invoice, pybillomat.Invoice)
    print invoice.label, repr(invoice.address), invoice.open_amount


#
# Iterate over all DRAFT-invoices and complete all of them
#
invoices_iterator = pybillomat.InvoicesIterator(conn = conn)

# Search DRAFT-invoices
invoices_iterator.search(status = "DRAFT")
print "Found :", len(invoices_iterator)

# Complete all DRAFT-invoices
for invoice in invoices_iterator:
    assert isinstance(invoice, pybillomat.Invoice)
    invoice.complete()

# Search remaining DRAFT-invoices
invoices_iterator.search(status = "DRAFT")
print "Found:", len(invoices_iterator)

Licenses

  • GNU Library or Lesser General Public License (LGPL)

  • MIT License

Release files for python-billomat 0.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for python-billomat 0.5.2
File Size Uploaded
python-billomat-0.5.2.tar.gz 45.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for python-billomat 0.5.2
File Interpreter ABI Platform
python_billomat-0.5.2-py2-none-any.whl Python 2 none any Details

Total release size: 128.6 kB

Release files / python-billomat-0.5.2.tar.gz

Download URL python-billomat-0.5.2.tar.gz
Size 45.7 kB
Tags Source
SHA-256 checksum
How to use checksums
f31bafbcee44d98120a8310ac8a375ac287303c4beb45919f2420530ef1b6b98
BLAKE2b-256 checksum
How to use checksums
13b674baaa6d36a2e7fc18fec26c1c3e10288217ad63a12301f3eca3c6f3a8ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / python_billomat-0.5.2-py2-none-any.whl

Download URL python_billomat-0.5.2-py2-none-any.whl
Size 82.9 kB
Tags Python 2
SHA-256 checksum
How to use checksums
5444ff986a9874dca51c5967914e6e27cc597b4d3fe8580886c9de07f6f70fd4
BLAKE2b-256 checksum
How to use checksums
8a620354dd4730e02d3f201daa67f8d18eaa822b442b847d7e627abec83ddd56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.5.2 This release

2 release files

0.5.1

2 release files

0.4.1

1 release file

0.4.0

1 release file

0.3.8

1 release file

0.3.6

1 release file

0.3.4

1 release file

0.3.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page