Get the latest update on our Vizio court case 



News 

Press Releases  


Press  


Blog  


Vizio Lawsuit in the News  


Our Issues in the News  




About 

Sponsors  


Sustainers  


Board of Directors  


Staff  


Evaluation Committee  


Outside Counsel, et alia  


Transparency  


Contact  




Our Work 

Copyleft Compliance  


We defend and uphold the rights of software users and consumers under copyleft licenses.  

Impact Litigation  


We defend the legal rights of software users. Learn the details, status, and stakes of our court cases.  

Give Up GitHub  


We urge FOSS Developers to Give Up GitHub! Learn why.  

Outreachy  


We offer internships for anyone who faces under­representation, systemic bias, or discrimination in the tech industry.  

FOSSY  


Our annual community-oriented conference focused on the creation and impact of free and open source software.  



Tools 

Member Projects  


We provide non-profit infrastructure and services to our members creating Free/Libre and Open Source Software.  

Use The Source  


Our tool for evaluating the source code candidates companies must provide for GPLed software.  

OpenWrt One  


We designed and built the first ever wireless Internet router designed with software freedom and right to repair in mind.  



Learn 

The Corresponding Source  


A bi-weekly oggcast about legal, policy, and many other issues in the Free, Libre, and Open Source Software (FLOSS) world.   

Glossary of Terms  


A list of terms you might be unfamiliar with but occur frequently in our work.  

FAQ About the Vizio Lawsuit  


Your most frequently asked questions about the Vizio lawsuit, answered in one place.  



Donate 



Software Freedom Conservancy


News 

Press Releases  


Press  


Blog  


Vizio Lawsuit in the News  


Our Issues in the News  




About 

Sponsors  


Sustainers  


Board of Directors  


Staff  


Evaluation Committee  


Outside Counsel, et alia  


Transparency  


Contact  




Our Work 

Copyleft Compliance  


We defend and uphold the rights of software users and consumers under copyleft licenses.  

Impact Litigation  


We defend the legal rights of software users. Learn the details, status, and stakes of our court cases.  

Give Up GitHub  


We urge FOSS Developers to Give Up GitHub! Learn why.  

Outreachy  


We offer internships for anyone who faces under­representation, systemic bias, or discrimination in the tech industry.  

FOSSY  


Our annual community-oriented conference focused on the creation and impact of free and open source software.  



Tools 

Member Projects  


We provide non-profit infrastructure and services to our members creating Free/Libre and Open Source Software.  

Use The Source  


Our tool for evaluating the source code candidates companies must provide for GPLed software.  

OpenWrt One  


We designed and built the first ever wireless Internet router designed with software freedom and right to repair in mind.  



Learn 

The Corresponding Source  


A bi-weekly oggcast about legal, policy, and many other issues in the Free, Libre, and Open Source Software (FLOSS) world.   

Glossary of Terms  


A list of terms you might be unfamiliar with but occur frequently in our work.  

FAQ About the Vizio Lawsuit  


Your most frequently asked questions about the Vizio lawsuit, answered in one place.  



Donate
 



Thanks to so many donors, we met our largest match donation ever of $211,939.  Two generous anonymous donors have provided another $40,012ofadditional matching funds.  Give now to help us reach this stretch goal!
  For only 4 more days, the   next $13,079offinancial support we receive will be matched!  

$26,933 matched!  

$13,079 to go!  



$211,927 fully matched!  








Home / News

[RSS] Conservancy Blog


Displaying posts tagged Accounting [RSS]

NPO Accounting Software for Currency Conversions


byBrett Smith  on November 22, 2017

Photo of coins in several different currencies Photo by Marco Verch under CC-BY 2.0

Conservancy helps project participants from all over the world travel to all kinds of conferences and hackfests (around 150 people in 2017!). Because of that, our day-to-day accounting work can involve a lot of currency conversions. Someone on a single trip might have expenses in multiple currencies, and want to be reimbursed in another currency different from all of those.

We previously used rates published by the Bank of Canada to do these conversions. It was a trustworthy source of data, but it wasnt very user-friendly: we had to go through a multipart web form to get rates, save those in our records, and then convert amounts by hand. When they stopped publishing rates earlier this year, one thing we hoped to find in a replacement was an API that we could use to build some higher-level accounting tooling.

We evaluated several alternatives and found what we wanted in Open Exchange Rates. In particular, it has a historical rates API that meets our needs very well: give it a date, and it returns all the rates for that date in a JSON object. Its easy to save those results in our books, and use the data for higher-level conversions.

I wrote oxrlib as the tooling we needed on top of that API. It starts as a simple command-line wrapper over the API: give it a date, and it shows you all the rates for that date. From there, you can pass more arguments to answer more specific questions. Name a currency or two, and it will show you the rates between just those currencies. Add an amount, and it will convert that amount from one currency to the other. It can even output all this information in the same format our Ledger books use, so its easy to insert directly into an entry were working on. All this functionality has already reduced the amount of time we spend processing reimbursement requests. A process that used to require several tools, copying data by hand between them, is now handled by a single command.

My bigger hope is that it will save us even more time developing more NPO Accounting tools. I put lib in the name oxrlib for a reason: its a fully-fledged Python module that Ive developed with an eye toward reusing in the future. All the functionality we have today in the command-line wrapper should be easy to incorporate into other tools in the future. oxrlib gives us a starting point to automate bookkeeping in multiple currencies. Im hopeful this pattern will let us make useful incremental progress on NPO Accounting. Today we build small, practical, reusable pieces that solve an immediate problem. Tomorrow we can use those to build more fully-featured programs that solve bigger problems.

You can find oxrlib on our Kallithea Git server, and even use it today with an account and API key from Open Exchange Rates. Expect to hear from me again soon about more NPO Accounting tools like this.

[permalink]

Tags:   conservancy,  Accounting






See all blog posts

Blog Index by Year



2026
2025
2024
2023
2022
2021
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010

Blogs by Tag



conservancy

GPL

supporter

licensing

conferences

law

events

software freedom for everyone

Member Projects

Outreachy

FOSS Sustainability

diversity

resources

Copyleft Conf

ContractPatch

Filings

Godot

Reproducible Builds

Year In Review 2016

fundraiser

CLA

Wine

Year In Review 2015

Kallithea

QEMU

Selenium

Google Summer of Code

Homebrew

inkscape

patent

security

Clojars

Git

Hackfests

Racket

cyborg

phpMyAdmin

pypy

volunteer

Accounting

LibreHealth

Shotwell

inclusion

jQuery

microblocks

sourceware

Blogs by Author



Vladimir Bejdo

Kate Chapman

Pamela Chestek

Denver Gingerich

Bradley M. Kühn and Denver Gingerich

Will Hawkins

Fred Jennings

Deb and Karen

Jeff King

Bradley M. Kühn

Conservancy + Bro LT

Christine Lemmer-Webber

Deb Nicholson

Sourceware PLC

Rick Sanders

Bradley M. Kühn and Karen M. Sandler

Karen Sandler

Tony Sebro

Sage A. Sharp

Brett Smith

Conservancy's Staff

Daniel Takamori

Outreachy Team

Marina Zhurakhinskaya

Molly deBlanc

 







Main Page

Contact

Sponsors

RSS Feed

Donate
 


Software Freedom Conservancy is a 501(c)(3) non-profit charity.
 




Privacy Policy last updated 22 December 2020.
 


This page and its contents are licensed under a Creative Commons Attribution-Share Alike 4.0 International License.