All Projects → ledermann → Datev

ledermann / Datev

Licence: mit
Ruby gem for DATEV exports via CSV

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Datev

invoices-cli
Generates html and pdf invoices using html template files, CSV databases for products, clients, and transactions
Stars: ✭ 34 (+3.03%)
Mutual labels:  csv, accounting
Pmwr
Portfolio Management with R: Backtesting investment and trading strategies, computing profit-and-loss and returns, reporting, and more.
Stars: ✭ 31 (-6.06%)
Mutual labels:  accounting
Kalulu
Uganda Elections Tools and Resources
Stars: ✭ 24 (-27.27%)
Mutual labels:  csv
English synonyms antonyms list
List of English synonyms and antonyms parsed from the public domain book of James C. Fernald, 1896
Stars: ✭ 20 (-39.39%)
Mutual labels:  csv
Ps Webapi
(Migrated from CodePlex) Let PowerShell Script serve or command-line process as WebAPI. PSWebApi is a simple library for building ASP.NET Web APIs (RESTful Services) by PowerShell Scripts or batch/executable files out of the box.
Stars: ✭ 24 (-27.27%)
Mutual labels:  csv
Diff Table
Stars: ✭ 21 (-36.36%)
Mutual labels:  csv
Poetry
非常全的古诗词数据,收录了从先秦到现代的共计85万余首古诗词。
Stars: ✭ 920 (+2687.88%)
Mutual labels:  csv
Youtubetospotify
A Python script to fetch tracks of music channels on Youtube, find them on Spotify and add them to a playlist
Stars: ✭ 33 (+0%)
Mutual labels:  csv
Ethereum Etl
Python scripts for ETL (extract, transform and load) jobs for Ethereum blocks, transactions, ERC20 / ERC721 tokens, transfers, receipts, logs, contracts, internal transactions. Data is available in Google BigQuery https://goo.gl/oY5BCQ
Stars: ✭ 956 (+2796.97%)
Mutual labels:  csv
Clevercsv
CleverCSV is a Python package for handling messy CSV files. It provides a drop-in replacement for the builtin CSV module with improved dialect detection, and comes with a handy command line application for working with CSV files.
Stars: ✭ 887 (+2587.88%)
Mutual labels:  csv
Xsv
A fast CSV command line toolkit written in Rust.
Stars: ✭ 7,831 (+23630.3%)
Mutual labels:  csv
Csvrecord
csvrecord library / gem - read in comma-separated values (csv) records with typed structs / schemas
Stars: ✭ 11 (-66.67%)
Mutual labels:  csv
Virustotal Tools
Submits multiple domains to VirusTotal API
Stars: ✭ 29 (-12.12%)
Mutual labels:  csv
Invoicing
🧾💰App for issuing invoices, track expenses and managing clients for all the sole traders of New Zealand. That are registered for GST. And can host a Rails app. And are able to configure Google OAuth.
Stars: ✭ 24 (-27.27%)
Mutual labels:  accounting
Kitchen Terraform
Test Kitchen plugins for testing Terraform configurations
Stars: ✭ 963 (+2818.18%)
Mutual labels:  rubygems
Apskaita5
Open source accounting system designed for Lithuania
Stars: ✭ 20 (-39.39%)
Mutual labels:  accounting
Axegrinder
Crawl websites for accessibility issues from the command line.
Stars: ✭ 12 (-63.64%)
Mutual labels:  csv
Rust Csv
A CSV parser for Rust, with Serde support.
Stars: ✭ 911 (+2660.61%)
Mutual labels:  csv
Data Forge Ts
The JavaScript data transformation and analysis toolkit inspired by Pandas and LINQ.
Stars: ✭ 967 (+2830.3%)
Mutual labels:  csv
Csvquery
A handy SQL runner to work with CSV files
Stars: ✭ 32 (-3.03%)
Mutual labels:  csv

Datev

Ruby gem to export bookings and more to DATEV format as CSV file

Supported DATEV format: v7.0

Build Status Code Climate Coverage Status

Installation

Add this line to your application's Gemfile:

gem 'datev'

And then execute:

$ bundle

Or install it yourself as:

$ gem install datev

Usage

To export bookings, you need an BookingExport instance with an array of records. Example:

export = Datev::BookingExport.new(
  'Herkunft'        => 'XY',
  'Exportiert von'  => 'Chief Accounting Officer',
  'Berater'         => 1001,
  'Mandant'         => 456,
  'WJ-Beginn'       => Date.new(2018,1,1),
  'Datum vom'       => Date.new(2018,2,1),
  'Datum bis'       => Date.new(2018,2,28),
  'Bezeichnung'     => 'Beispiel-Buchungen'
) # For available hash keys see /lib/datev/base/header.rb

export << {
  'Belegdatum'                     => Date.new(2018,2,21),
  'Buchungstext'                   => 'Fachbuch: Controlling für Dummies',
  'Umsatz (ohne Soll/Haben-Kz)'    => 24.95,
  'Soll/Haben-Kennzeichen'         => 'H',
  'Konto'                          => 1200,
  'Gegenkonto (ohne BU-Schlüssel)' => 4940,
  'BU-Schlüssel'                   => '8'
} # For available hash keys see /lib/datev/base/booking.rb

export << {
  'Belegdatum'                     => Date.new(2018,2,22),
  'Buchungstext'                   => 'Honorar FiBu-Seminar',
  'Umsatz (ohne Soll/Haben-Kz)'    => 5950.00,
  'Soll/Haben-Kennzeichen'         => 'S',
  'Konto'                          => 10000,
  'Gegenkonto (ohne BU-Schlüssel)' => 8400,
  'Belegfeld 1'                    => 'RE201802-135'
}

export.to_file('EXTF_Buchungsstapel.csv')

Result: CSV file

All records are validated against the defined schema.

Beside bookings, some other exports are available, too:

  • AccountExport ("Kontenbeschriftungen")
  • ContactExport ("Stammdaten")

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/ledermann/datev. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.

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].