All Projects → substancelab → rconomic

substancelab / rconomic

Licence: MIT License
Ruby wrapper for the e-conomic API - thankfully, integrating with e-conomic doesn't have to suck

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to rconomic

robotframework-zoomba
Extended Robot Framework libraries to make testing GUI, REST/SOAP API, Mobile, and Windows Desktop easier.
Stars: ✭ 121 (+384%)
Mutual labels:  soap
soap-rs
SOAP client for Rust programming language
Stars: ✭ 37 (+48%)
Mutual labels:  soap
xsdata
Naive XML & JSON Bindings for python
Stars: ✭ 144 (+476%)
Mutual labels:  soap
laravel-soap
Laravel Soap Client
Stars: ✭ 140 (+460%)
Mutual labels:  soap
WSD-python
Web Services for Devices (WSD) tools and utilities for cross platform support
Stars: ✭ 22 (-12%)
Mutual labels:  soap
extensiveautomation-server
Extensive Automation server
Stars: ✭ 19 (-24%)
Mutual labels:  soap
LiipSoapRecorderBundle
[DEPRECATED] Recorder/Player for SOAP communications
Stars: ✭ 12 (-52%)
Mutual labels:  soap
xsd-parser-rs
A xsd/wsdl => rust code generator written in rust
Stars: ✭ 45 (+80%)
Mutual labels:  soap
sentry-ruby-api
Ruby wrapper for getsentry/Sentry REST API
Stars: ✭ 19 (-24%)
Mutual labels:  ruby-wrapper
remote-virtualbox
🍰 Little package to do simple things with VirtualBox remotely using it's SOAP API
Stars: ✭ 18 (-28%)
Mutual labels:  soap
PackageBase
Contains base classes from which the generated classes from PackageGenerator inherit
Stars: ✭ 19 (-24%)
Mutual labels:  soap
cxf-spring-boot-starter
Enterprise & production ready SOAP webservices powered by Spring Boot & Apache CXF
Stars: ✭ 129 (+416%)
Mutual labels:  soap
ballerina-integrator
A powerful, simple-to-learn, code-driven approach to programming integrations
Stars: ✭ 36 (+44%)
Mutual labels:  soap
bdd-for-all
Flexible and easy to use library to enable your behavorial driven development (BDD) teams to easily collaborate while promoting automation, transparency and reporting.
Stars: ✭ 42 (+68%)
Mutual labels:  soap
eet-client
Client and library for #EET communication - http://www.etrzby.cz/ , written in Java
Stars: ✭ 49 (+96%)
Mutual labels:  soap
clash-api
Ruby wrapper for the Clash of Clans API
Stars: ✭ 14 (-44%)
Mutual labels:  ruby-wrapper
php-amadeus
Amadeus flight booking client for PHP
Stars: ✭ 65 (+160%)
Mutual labels:  soap
Stubmatic
Mock HTTP calls without coding. Designed specially for testing and testers.
Stars: ✭ 118 (+372%)
Mutual labels:  soap
SoapHttpClient
HttpClient wrapper for sending SOAP messages.
Stars: ✭ 80 (+220%)
Mutual labels:  soap
Huxley2
A cross-platform JSON proxy for the GB railway Live Departure Boards SOAP API
Stars: ✭ 22 (-12%)
Mutual labels:  soap

r-conomic

Ruby wrapper for the e-conomic SOAP API, that aims at making working with the API bearable.

E-conomic is a web-based accounting system. For their marketing speak, see http://www.e-conomic.co.uk/about/. More details about their API at http://www.e-conomic.com/developer.

Build Status Test Coverage Code Climate

Usage example

economic = Economic::Session.new

# Connect using a Private app ID and an access ID provided by the "Grant Access"
# As described here: https://www.e-conomic.com/developer/connect
economic = Economic::Session.new
economic.connect_with_token 'the_private_app_id', 'the_access_id_you_got_from_the_grant'

# Find a debtor:
debtor = economic.debtors.find(:number => 101)

# Creating a debtor:
debtor = economic.debtors.build

debtor.number = economic.debtors.next_available_number
debtor.debtor_group_handle = { :number => 1 }
debtor.name = 'Bob'
debtor.vat_zone = 'HomeCountry' # HomeCountry, EU, Abroad
debtor.currency_handle = { :code => 'DKK' }
debtor.price_group_handle = { :number => 1 }
debtor.is_accessible = true
debtor.ci_number = '12345678'
debtor.term_of_payment_handle = { :id => 1 }
debtor.layout_handle = { :id => 16 }
debtor.save

# Create invoice for debtor:
current_invoice = debtor.current_invoices.build
current_invoice.term_of_payment_handle = debtor.term_of_payment_handle

current_invoice.date = Time.now
current_invoice.due_date = Time.now + 15
current_invoice.exchange_rate = 100
current_invoice.is_vat_included = false

invoice_line = Economic::CurrentInvoiceLine.new
invoice_line.description = 'Line on invoice'
invoice_line.unit_handle = { :number => 1 }
invoice_line.product_handle = { :number => 101 }
invoice_line.quantity = 12
invoice_line.unit_net_price = 19.95
current_invoice.lines << invoice_line

current_invoice.save

# You can delete it by doing:
# current_invoice.destroy

invoice = current_invoice.book

# Create a debtor payment

cash_book = economic.cash_books.all.last # Or find it by its number

# The reason debtor payments are done this way is because we don't want to specify the voucher number. If we build the cash book entry ourselves,
# without specifying the voucher number, the API will complain. This way, E-Conomics will assign a voucher number for us.

cash_book_entry = cash_book.entries.create_debtor_payment(:debtor_handle => debtor.handle, :contra_account_handle => { :number => '1920' })
cash_book_entry.amount = -123.45
cash_book_entry.currency_handle = { "Code" => "DKK" }
cash_book_entry.debtor_invoice_number = invoice.number
cash_book_entry.text = "Payment, invoice #{ invoice.number }"
cash_book_entry.save

cash_book.book

# Find a product:
product = economic.products.find(1234)

# Creating a product:
product = economic.products.build
product.number = 'ESC2014-LED-DISPLAY'
product.product_group_handle = { :number => 1 }
product.name = '100 meter LED display'
product.sales_price = 999999
product.cost_price = 100000
product.recommended_price = 999999
product.is_accessible = true
product.volume = 1
product.save

How to enable e-conomic API access

You need a Developer account and setup an app in their web UI. E-conomic users can then grant that app access to their account.

It doesn't do everything

Not even remotely... For now, limited to a small subset of all the available operations:

                   | Create | Read | Update | Delete
-------------------+--------+------+--------+-------
CashBook           | X      | X    | X      | X
CashBookEntry      | X      | X    | X      | X
Company            | X      | X    | X      | X
Creditor           | X      | X    | X      | X
CreditorEntry      | X      | X    |        |
CreditorContact    | X      | X    | X      | X
CreditorEntry      | X      | X    | X      | X
CurrentInvoice     | X      | X    | X      | X
CurrentInvoiceLine | X      | X    | X      | X
Debtor             | X      | X    | X      | X
DebtorContact      | X      | X    | X      | X
DebtorEntry        | X      | X    | X      | X
Entry              | X      | X    | X      | X
Invoice            | X      | X    |        |
Order              |        | X    |        |
OrderLine          |        | X    | X      |
Product            | X      | X    | X      | X

Credits

Sponsored by Lokalebasen.dk

License

R-conomic is licensed under the MIT license. See LICENSE for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].