Can you #IATI that for me? (1)

The IATI Standard lets you publish information on your organisation’s activities and money flows. But how exactly would you write something in IATI? That doesn’t always seem obvious, and certainly not for someone new to the XML standard.

This is the first of a series of sketches of situations that I encounter (or envision), with the question: can you #IATI that for me? We’ll start of simple.

IATI skecth 1Our organisation, called Us, is going to publish data in IATI. We found out that our organisation identifier is zz-us. (Not quite as we’d like to see, but the quiz is not about organisation identifiers.)

  • We receive funding from Donor A. They will contribute €20,000 to us. They publish IATI data too, and we found the IATI activity identifier for their grant to us in their file: X-A-123.
  • We also receive funding from Donor B. They will contribute €10,000 to our work this year.
  • We run two projects, Project 1 and Project 2, each with a budget of €15,000.

Some questions:

  1. How do we indicate the budgets from our donors for our work?
  2. If we actually receive the money (€20,000) from donor A on, say, April 1st, how can we add that to our data?

Feel free to make up more information if you need it. Post your solutions as comments below. They’ll be kept hidden for the first few days, but then will be published for further discussion.

Do we all agree? Do we have different approaches? Is there a right or wrong way of doing it?

Posted in Syndicated and tagged .

4 Comments

  1. I assume that funding from donors is core funding (right?). In which case we use a form of double-entry bookkeeping. You can see the double-entry approach in real use here – http://iatiregistry.org/dataset/gecfundmanagerpwc-publication1

    1) Create a pseudo core project to receive core funding. Enter commitments from A and B; Incoming Funds from A; and disbursement to Project 1.

    2) Use the core project to pay Project 1

    3) … and report total budget (ie commitment) for Project 2

    I don’t know how to represent xml in comments so you can see the workings at https://docs.google.com/document/d/14sLqON9l8T0L93Da_YaXEekQX1V1bTcOO89DKee6AcQ/edit

  2. Thanks Bill!

    I’ve just added a plugin to our site that should enable including code by embedding it, eg:

    <pre><code class="xml">
    </code></pre>
    

    So to copy your suggestions here:

    1) Create a pseudo project to receive core funding (leaving out dates, currencies, etc). Enter commitments from A and B; Incoming Funds from A; and disbursement to Project 1.

    <reporting-org ref="zz-us"/>
    <iati-identifier>zz-us-core</iati-identifier>
    <participating-org ref="X-A" role="funding"/>
    <participating-org role="funding">B</participating-org>
    <transaction>
      <transaction-type code="C"/>
      <provider-org provider-activity-id="X-A-123" ref="X-A"/>
      <value>20000</value>
    </transaction>
    <transaction>
      <transaction-type code="C"/>
      <provider-org>B</provider-org>
      <value>10000</value>
    </transaction>
    <transaction>
      <transaction-type code="IF"/>
      <provider-org provider-activity-id="X-A-123" ref="X-A"/>
      <value>20000</value>
    </transaction>
    <transaction>
      <transaction-type code="D">
        <receiver-org receiver-activity-id="zz-us-project1" ref="zz-us"/>
        <value>15000</value>
    </transaction>
    

    2) Use the core project to pay Project 1

    <reporting-org ref="zz-us"/>
    <iati-identifier>zz-us-project1</iati-identifier>
    <participating-org ref="zz-us" role="funding"/>
    <transaction>
      <transaction-type code="C"/>
      <provider-org provider-activity-id="zz-us-core" ref="zz-us"/>
      <value>15000</value>
    </transaction>
    <transaction>
      <transaction-type code="IF"/>
      <provider-org provider-activity-id="zz-us-core" ref="zz-us"/>
      <value>15000</value>
    </transaction>
    

    3) And report total budget (ie commitment) for Project 2

    <reporting-org ref="zz-us"/>
    <iati-identifier>zz-us-project2</iati-identifier>
    <participating-org ref="zz-us" role="funding"/>
    <transaction>
      <transaction-type code="C"/>
      <provider-org provider-activity-id="zz-us-core" ref="zz-us"/>
      <value>15000</value>
    </transaction>
    
  3. The interesting bits for me here:

    I wouldn’t have thought about having both C (commitment) and IF (incoming funds) — I assume that should be for the second project as well. There is an overlap between “internal commitment” and “budget” then?

    I might have suggested a hierarchy and working with budgets:

    Create the core funding at level 1 (although I did not think about using IF here):

    <iati-activity hierarchy="1">
      <iati-identifier>zz-us-core</iati-identifier>
      <transaction>
        <transaction-type code="IF"/>
        <provider-org provider-activity-id="X-A-123" ref="X-A"></provider-org>
        <value>20000</value>
      </transaction>
      <transaction>
        <transaction-type code="IF"/>
        <provider-org>B</provider-org>
        <value>10000</value>
      </transaction>    
    

    And then create project 1 (and also project 2) at level 2:

    <iati-activity hierarchy="2">
      <reporting-org ref="zz-us"/>
      <iati-identifier>zz-us-project1</iati-identifier>
      <participating-org ref="zz-us" role="funding"/>
      <transaction>
        <transaction-type code="C"/>
        <provider-org provider-activity-id="zz-us-core" ref="zz-us"/>
        <value>15000</value>
      </transaction>
    

    The difficulty of course is (esp. for smaller NGOs with less sophisticated ERP/PMS systems) to add these “core pseudo activities”.

  4. Re: Commitment and Incoming Funds. No one has done the commitment side like this yet, but I was trying to describe project 2 with a budget but without any transfer of funds having yet taken place. Commitments don’t really belong in transactions but we’re stuck with that now.

    Your example is perfectly acceptable, I try to avoid hierarchies unless absolutely necessary as they are difficult for a lot of data users to process. If zz-us runs some directly funded projects as well as some core-funded you really want all the real projects to be reported at the same hierarchical level (again for user functionality) – so what hierarchy would you construct for the earmarked funding?

    At the end of the day it is up to the publisher to decide what story they want to tell. There is no single right way, so long as it is possible to logically trace the money (and avoid double counting) through properly constructed transactions.

    There have also been discussions about shifting core funding from the activity to the organisation standard: with core funding flows reported as transactions between organisations, not between activities. And reporting organisations treating core funding as their own money.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.