Skip to main content

Bindings for the Amatino API, a double-entry accounting system

Project description

Amatino Python

Amatino is a double-entry accounting system. It provides double entry accounting as a service via an HTTP API. Amatino Python is a library for interacting with the Amatino API from within a Python application. By using Amatino Python, a Python developer can utilise Amatino services without needing to deal with raw HTTP requests.

About Amatino

Amatino gives you a full set of tools to store, organise and retrieve financial information. You don't need to set up databases or write any of your own double-entry accounting logic. All you need is this library, an Amatino account (Try free for two weeks!), and you are off and running.

Under construction

Right now, the Amatino API offers a full range of accounting services via HTTP requests. However, this Amatino Python library is in an 'Alpha' state. Its capabilities are limited. One class is available: AmatinoAlpha.

AmatinoAlpha is a thin wrapper around asynchronous HTTP requests to the Amatino API. It facilitates testing and experimentation with the Amatino API without having to resort to raw HTTP request manipulation and HMAC computation.

Amatino Python will eventually offer expressive, object-oriented interfaces for all Amatino API services. To be notified when Amatino Python enters a Beta state, with all capabilities available, sign up to the Amatino Development Newsletter.

In the mean time, you may wish to review Amatino's HTTP documentation to see what capabilities you can expect from Amatino Python in the future.

Installation

Amatino JS may be installed via PIP.

$ pip install amatino

To use Amatino Python, you will need an active Amatino subscription. You can start a free trial at https://amatino.io/subscribe.

Example Usage

The AmatinoAlpha object allows you to use the Amatino API without dealing with raw HTTP requests or HMACs. It lacks the expressive syntax, input validation, and error handling that Amatino Python will have in the beta stage.

Initialise an AmatinoAlpha instance like so:

from Amatino import AmatinoAlpha

amatino_alpha = AmatinoAlpha(
    email="clever@cookie.com",
    secret="high entropy passphrase"
)

Requests may then be made:

entity = amatino_alpha.request(
    path="/entities",
    query_string=None,
    method="POST"
    body=[{
        "name": "My First Entity",
        "description": None,
        "region_id": None
    }]
)

Wherein path, query_string, method and body parameters are formed according to the requirements laid out in the Amatino API HTTP documentation.

For example, the above request created an Entity. The requirements for Entity creation are available at https://amatino.io/documentation/entities#action-Create.

For more examples of AmatinoAlpha usage, see the getting started guide.

API stability & versioning

Amatino Python obeys the Semantic Version convention. Until v1.0.0, the Python API (not to be confused with the Amatino HTTP API) should be considered unstable and liable to change at any time.

Watch out! API currently unstable!

You can see available versions in GitHub's releases section or in PyPi's release history section.

Tell us what your think/want/like/hate

Please join us on the Amatino discussion forums and give us your feedback. We would love to hear from you. Amatino is in its earliest stages of development, and your feedback will influence the direction it moves in.

Pull requests, comments, issues, forking, and so on are also most welcome on Github!

Useful links

Get in contact

To quickly speak to a human about Amatino, email hugh@amatino.io or yell at him on Twitter (@hugh_jeremy).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

amatino-0.0.3.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

amatino-0.0.3-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

Details for the file amatino-0.0.3.tar.gz.

File metadata

  • Download URL: amatino-0.0.3.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for amatino-0.0.3.tar.gz
Algorithm Hash digest
SHA256 d742cdad86f3e9981c1b704cdad9a2c7f3f17ce6212cd9ca42d753f7c2954085
MD5 1074437fd556d1aa1ac57e32555dcf82
BLAKE2b-256 7ec2d398923030ce0aa11139b9e2e4d0f7aa6b41513bbe2d17ca4b42bfaff91f

See more details on using hashes here.

File details

Details for the file amatino-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for amatino-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 74b9580ddadda8078a73e0d6daaf4e6d03a2f2e4224aeefe64ac84304d48dc35
MD5 446425d0d7e43e200a0c3a27affb6ece
BLAKE2b-256 39f67abe56c11c252b8e0ebf5d8d68fe4e7703cc102cd344130995de833ce34d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page