Discussion
Loading...

#Tag

  • About
  • Code of conduct
  • Privacy
  • Users
  • Instances
  • About Bonfire
Open Risk
@openrisk@mastodon.social  ·  activity timestamp 4 days ago

There is a saying in French: "good accounts make good friends". Contemporary #accounting is very far from being good, ignoring vital aspects of life in favor of stylized monetary figures. Alternatives are a long but worthwhile road to travel.

In a new piece I explore why and how graphs can be used to express double-entry accounting in a natural way and how to extend also in the direction of consistent economic-network accounts (quadruple-entry).

#sustainablefinance

https://www.openriskmanagement.com/graphs_for_double_and_quadruple_entry_accounting/

Visual representation of quadruple-entry accounting (accounting that reconciles balances between entities) using a mathematical graph framework. The accounts of entities are nodes, their exchanges are edges. Transactions happen internally within the perimeter of entities or externally. The nature of directed graphs means that the double-entry balance requirements of standard accounting are satisfied naturally.
Visual representation of quadruple-entry accounting (accounting that reconciles balances between entities) using a mathematical graph framework. The accounts of entities are nodes, their exchanges are edges. Transactions happen internally within the perimeter of entities or externally. The nature of directed graphs means that the double-entry balance requirements of standard accounting are satisfied naturally.
Visual representation of quadruple-entry accounting (accounting that reconciles balances between entities) using a mathematical graph framework. The accounts of entities are nodes, their exchanges are edges. Transactions happen internally within the perimeter of entities or externally. The nature of directed graphs means that the double-entry balance requirements of standard accounting are satisfied naturally.
  • Copy link
  • Flag this post
  • Block
Aral Balkan
@aral@mastodon.ar.al  ·  activity timestamp 4 weeks ago

Oh, why am I spending my morning looking through the source code of a Chrom(ium) extension that clicks OK buttons repeatedly, you ask?

Because I have about 1,000 transactions from Stripe from our Gaza Verified Emergency Appeal to reconcile in Xero and apparently the galaxy brains at Big Business, Inc., think that making you click a button 1,000 times is just fine, actually.

Fucking capitalists can’t even do capitalism right.

*smdh*

#xero #capitalism #usability #design #BigTech #business #accounting #money #bullshit

Screenshot detail of code: 

function match_statement(matched, statement){
    //get reference id from xero
    var id_set = null;
    var set_spans = matched.querySelectorAll('.c0 .details span');
    if(set_spans.length > 0){
        var i;
        for(i=0; i < set_spans.length; i++) {
            if(id_set=set_spans[i].textContent.match(id_set_regex)){
                id_set = id_set[1];
                if(id_set){break;}
            }
        }
    }
    if(!id_set){return false;}

    var id_rec = null;
    var rec_spans = statement.querySelectorAll(".statement.no-shadow div.info div.line-details span");
    if(rec_spans.length > 0) {
   …
Screenshot detail of code: function match_statement(matched, statement){ //get reference id from xero var id_set = null; var set_spans = matched.querySelectorAll('.c0 .details span'); if(set_spans.length > 0){ var i; for(i=0; i < set_spans.length; i++) { if(id_set=set_spans[i].textContent.match(id_set_regex)){ id_set = id_set[1]; if(id_set){break;} } } } if(!id_set){return false;} var id_rec = null; var rec_spans = statement.querySelectorAll(".statement.no-shadow div.info div.line-details span"); if(rec_spans.length > 0) { …
Screenshot detail of code: function match_statement(matched, statement){ //get reference id from xero var id_set = null; var set_spans = matched.querySelectorAll('.c0 .details span'); if(set_spans.length > 0){ var i; for(i=0; i < set_spans.length; i++) { if(id_set=set_spans[i].textContent.match(id_set_regex)){ id_set = id_set[1]; if(id_set){break;} } } } if(!id_set){return false;} var id_rec = null; var rec_spans = statement.querySelectorAll(".statement.no-shadow div.info div.line-details span"); if(rec_spans.length > 0) { …
  • Copy link
  • Flag this post
  • Block
Open Source JobHub
@osjobhub@fosstodon.org  ·  activity timestamp 6 months ago

New Job Alert: @ThePSF is hiring a part-time, remote Senior Financial Analyst/Accountant to support its non-profit mission. Learn more and apply now on #OSJH
https://opensourcejobhub.com/job/24116/senior-financial-analyst/?utm_source=smm
#Python #ThePSF #finance #accounting #RemoteWork #jobs #OpenSource #career #FOSS #PyConUS

python SOFTWARE FOUNDATION
python SOFTWARE FOUNDATION
python SOFTWARE FOUNDATION
  • Copy link
  • Flag this post
  • Block
Log in

bonfire.cafe

A space for Bonfire maintainers and contributors to communicate

bonfire.cafe: About · Code of conduct · Privacy · Users · Instances
Bonfire social · 1.0.0 no JS en
Automatic federation enabled
  • Explore
  • About
  • Members
  • Code of Conduct
Home
Login