Reporting for a Horizon 2020 project

Hi @matthias just wanted to double check when we might be ready with 2.3 Entering bills and expense claims or is it all ready to go? We’ve got some kick off meeting expenses being made.

Thanks!

Yes, that part is ready to go :slight_smile: Cf. also at the very top:

As usual, some need for changes might become apparent during early usage. If so, anyone should of course just tell so here. That may result in slight changes to the process but that’s no problem as it just means updating some FreeAgent records in this case to conform to whatever the new process will be.

Also I have given the proposed expense type classification in section “2.3. Entering bills and expense claims” some second thoughts and I think it’s good as it is. Let’s make the software not specifically for our two H2020 projects with these two project leaders, but a general tool for whatever H2020 project we may get in the future. So indeed, as Alberto says and as so far done in the proposed expense type classification:

1 Like

As requested by you @matthias, here is an update on the presentation and then conversation had with our UCL coordinators (Silvia and Richard) on our financial reporting at the POPREBEL kick off this week.

Relevant points from Silvia’s presentation on financial reporting include:

Accounting - most important categories

  • Direct personnel costs

    • Staff must be employed - employment contract or payroll (nb. we have cross checked that our consulting formula is legit)
    • Time spent must be recorded
  • Other direct costs

    • Equipment
    • Travel and subsistence
    • Goods & Services
  • Important to remember - Coordinator does not ask but we need to have them on record

  • Timesheets - normally monthly

    • H2020 timesheet template to be downloaded

    • OR Alternative reliable recording system with

      1. The title and number of the action as per the GA
      2. The beneficiary full name
      3. Full name, data signature of the person
      4. Number of hours worked in a monthly time period
      5. Supervisor full name and signature
      6. Reference to the action tasks and WP of annex 1
  • Costs to be eligible

    • Incurred directly
    • Reasonable and justified
    • Keep all the documents up to 5 years after the end

In our discussion specifically on the tool Edgeryders is building, Silvia mentioned that as long as all necessary details (1-6 above and pasted again below) are included, it should be fine for reporting just the % of time worked (that is equal to hours worked) rather than logging each hour. To reiterate:

  1. The title and number of the action as per the GA
  2. The beneficiary full name
  3. Full name, data signature of the person
  4. Number of hours worked in a monthly time period
  5. Supervisor full name and signature
  6. Reference to the action tasks and WP of annex 1

I have asked for confirmation that is correct. What this means is that if technically it’s posstible, we won’t need to get everyone to record every hour spent but can rather just submit the % of time they are contracted to work and then we can calculate/ automate that as a number of hours. This is what UCL’s staff do in fact - where Richard just writes that he worked on a Task and then the staff calculate how many hours that should have been. So I’ve asked for absolute confirmation that if we create an automation such that the % of time allocated to the person calculates the hours worked in a monthly time period and that is what is logged rather than actual hours will that suffice. Keeping all this in mind that we still need to make sure that the Free Agent data can be exported into a spreadsheet for the Coordinators should they require it.

In any case I’d like us to do a test export of the data in a spreadsheet with you before we finalise the tool. Let’s wait to hear from Silvia on this before doing so.

You can take a look at the European timesheet template and an example of Richard’s here

Make sense?

Thanks, Anique. Will wait for the final confirmation which way to go for time tracking for the POPREBEL project. Please find out the same for NGI Forward as well – to avoid process confusion on our side, we’d only use the “calculate the reported hours” method if both projects are fine with that. (I doubt it though, as even UCL’s guidance notes on their timesheet template say: “5. Enter ACTUAL hours carried out for work on a daily basis”).

How the time tracking process would look like in each case:

If we can report calculated hours

  1. We’ll not track any time inside FreeAgent in that case but adapt the timesheet template spreadsheet to be a Google Docs document per collaborator that will calculate the to-be-reported hours with formulas in the spreadsheet.

  2. To record the signature, we let the consultant upload a signature image right into the spreadsheet file. Then the supervisor (who must be the document owner) will also sign that month’s spreadsheet tab and then protect it against further changes. This makes sure nobody can come in later and change the signed data after the signature was done; and anyway, such changes would be recorded by Google Sheets.

  3. Then we have a master spreadsheet that uses IMPORTRANGE() to collect to-be-reported hours from user spreadsheets, right into the UCL / NESTA financial reporting template spreadsheet.

If we have to report actual hours

  1. We keep tracking time in FreeAgent as proposed in the first post above. But we use tasks, not just work packages, as the units to track time for, because that seems to be required (“Reference to the action tasks and WP of annex 1”). Also, we include the EU project number into the project name as that is required to appear on timesheet reports (“The title and number of the action as per the GA”).

  2. We let users create PDF exports of their timesheet reports from FreeAgent. If “normally monthly” means that we can also do it less often (before the next financial reports are due, every 6 or 12 months), that’s much better because it saves admin overhead.

  3. Users upload the to-be-signed PDF file to a signature web service like digisigner.com that we still have to select (there are several). The user signs, then invites the “supervisor” to sign, who also signs (technically, only after checking that the data conforms to the user’s FreeAgent timesheet report). After this, the signed timesheet PDF contains all the required information.

  4. Contrary to the current proposal at the top of the topic, users no longer have to attach the timesheets to their invoices, as that would make signing and countersigning a mess. Instead, we use the signature web service to store our signed and countersigned timeslip documents, and occasionally create backups of them to Google Drive. If we can create timeslips every 6 or 12 months, we’ll directly save them to Google Drive as well as it’s not too much overhead then.

    (Unfortunately, we cannot store the signed FreeAgent timesheets in the FreeAgent Files section. Because that is a section for private files uploaded by each user, not even accessible by the admins of a FreeAgent account. I just tested that.)

  5. As proposed at the top of the topic, we then use our custom-made financial reporting utility to pull the timesheet data from FreeAgent and calculate the person months, sums of expenses etc. for copy&pasting to the financial reporting template.

    Since FreeAgent time tracking data can be edited / amended at any time, technically the project administrator would have to cross-check this with the signed timesheet reports to exclude tampering with the data. But that would be a rough plausibility check only. Our tool would still make the process more efficient.

The only thing we can do right now (i.e. before there is a tool that exports spreadsheets) is to test if with my process FreeAgent will contains the necessary data to export the spreadsheets. You can already do that (just assume we’ll do time tracking inside FreeAgent). You’d create some test expenses and time tracking entries, create and check the data on FreeAgent time tracking reports, and manually make sure that all the data for filling the financial reporting template is present as well.

On my side I’m confident all the necessary data is there as I created the process. So I’m not keen on working through a test case in detail, again. But of course let me know when you get stuck.

“Actual” is a legal term. It means: you are responsible for the truthfulness of what you declare (as in “I worked 3 hours on Task 2.1 on 23 April 2020”). The evidence of that is… the timesheet. And, of course, that an adequate output exists for the activity that those 3 hours feed into.

So, I would not worry too much. Let’s make the tools that make sense for us, and respect the minimal guidelines. How we get to the data is our choice.

I would like to propose a tweak to this process. I think we are close to a solution based not on hearsay, but on documented knowledge.

First of all, it turns out that the theme is treated in the 800 pages Horizon 2020 guidelines, precisely here. Following the link, you eventually hit on a timesheet template with the minimum information required. The accompanying text is the following:

So, here’s my proposal.

Alternative 1: fully electronic

  1. Time-tracking happens with FreeAgent. People log in with their own FreeAgent user, which should replace the electronic signature of the collaborator.

  2. We write some tools to save the timesheet in CSV form or something (this is for providing excel sheets to the consortium coordinators).

  3. The timesheet is downloaded in PDF format by the team leader that the collaborator is reporting to, or an Edgeryders director if the team leader is not herself an Edgeryders director. The timesheet as exported from FreeAgent already contains all information we need: the grant number can be added to the project title, for example "NGI Forward 852652".

  4. The director signs the document electronically using DigiDoc and her Estonian e-ID. This generates a .bdoc file, which is essentially a zip containing the timesheet’s PDF and the metadata: this file was signed by Ms. So-and-so, Estonian ID number 12345, date.

  5. Even more solid: the PDF (however generated) is digitally signed by both the collaborator and supervisor with the Estonian ID and DigiDoc. This can only happen when the collaborator is also an Estonian e-resident. But in fairness, Belgian cards should also be supported by the Estonian system, and anyway Belgium has its own system. Maybe other countries too.

The weak point of this is the first step. It is unclear if FreeAgent has “a documented and secure process for managing user rights and an auditable log of all electronic transactions”. The Estonian bit is, I think, bulletproof.

Alternative 2: paper

1- 3 as above. Then, the collaborator prints and signs the timesheet, and sends it physically to Brussels, where an Edgeryders director countersigns it and archives it.

What do you think, @matthias?

1 Like

Nice work, so we’re closing in on possible solutions now :slight_smile:

Unfortunately not. Because FreeAgent allows admins to edit anyone’s timesheet without that action being logged, it does not conform to the requirements you cite from the Commission’s timesheet template:

So that leaves us with the following options:

  1. As you propose, “the PDF (however generated) is digitally signed by both the collaborator and supervisor with the Estonian ID and DigiDoc.”

  2. We don’t use FreeAgent but a different SaaS platform for time tracking so that the Commission’s requirements for “digital signing” are fulfilled. There are a few to choose from (Toggl etc.) but they are not cheap. We’d have to take a close look.

  3. We find a way to use Discourse to record the timesheet information. I’m pretty sure it fulfills the requirements of digital signing, since all post edits and staff actions are properly logged (including the “Impersonate” action).

    If we want to choose this way, I could talk to my other brother who is developing this open source time tracking utility right now. He’d add a feature that makes the tool automatically post to a user’s timesheet topic in Discourse, using the user’s own Discourse API key. The user could also edit that topic manually, of course. Information would be put in using CSV format so we can process it further with the proposed script (that would otherwise connect to FreeAgent).

    Still, this would be a pretty strange way to collect timetracking information.

  4. Alternative 2: paper. Not really. People don’t necessarily have printers anymore, or might be in Nepal from where postal shipment is difficult, and so on. So much overhead.

With the Commission’s understanding of “digital signing”, the director could also sign a post by editing it and adding “approved by ”. In the post’s history, any further edits of time information after that approval would be visible and, hence, invalid.

@matthias look what I have found:

https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/Country+Overview+-+eID

It seems:

  • EU countries (and presumably countries everywhere else) are implementing electronic identities
  • EU regulation mandates that electronic identities are interoperable across member states (yay Europe!)

If you scroll down to the very end of the page you find two lists of EU countries already supporting eID. The first list includes the systems already interoperable, or on their way to being so. The second list includes the systems not interoperable. I think all of these are acceptable in terms of digital signature of documents for the purposes we have here. There are already quite a few countries, including Italy, Germany, Croatia, Belgium, Sweden, the Netherlands, and of course Estonia.

So, here’s my idea: we just ask every collaborator to get onto a digital identity management scheme; generate timesheets through FreeAgent; and sign them digitally from both the collaborator and a company director as supervisor. Works?

I think this would fulfill the requirements, yes. But given that it’s all government software and not as advanced as the Estonian stuff, it would be an extremely uncomfortable process:

  • When the company director signs a digitally signed document, what happens? In the Estonian case, a .bdoc file inside a .bdoc file. In other cases, probably different ways of packaging packages, each needing a different software to extract and view?

  • Last time I looked, the German digital signature scheme (as an example) was a disaster. First, for online use they would provide the browser extensions only for certain “long term support” versions of Firefox. Then, in addition to having the ID card with the chip, one had to “rent” and then install ones own signature on the card, for a certain yearly fee. And then buy the software that allows to sign documents, from one of several providers.

  • Even with the Estonian eID scheme, we had numerous difficulties of installing the extensions etc… It will be worse in other countries, esp. regarding Mac and Linux support …

Since the European Commission does not enforce using the national schemes for legally valid digital signatures, various other ways are possible. Probably even a PGP signed e-mail with the FreeAgent timesheet.

No extensions needed. We are talking about desktop apps that allow the digital signatures to happen. Anyway, point taken. We could even offer collaborators to take up Estonian e-residency, and pay for it, it’s not a lot of money. Of course there is the issue of people having to pick up their cards in person, and there are few places to do that outside of Estonia! But we would also accept any other form of digital signature.

Another solution is to buy a service of digital ID management.

Yet another one is to do as you suggest, with PGP signed email (but is there an auditable log anywhere?) or using API keys on our own Discourse. In the latter case, it is important to note that records have to be kept for five years after the end of the project. In our case, this means getting to the end of 2026… will Discourse still be in place then?

Something like digisigner.com and applying that to the FreeAgent timesheets? Last time I used it, there was a log of all the actions that happened to a document. To be confirmed, but I thing it would suffice for the European Commission’s requirements.

The remaining problem for that case is that our tool to fill the reporting templates would still work with data from FreeAgent, not with the signed documents. Which is technically not correct :frowning:

Proposal: If we can find an online time tracking service with API access and that fulfills the European Commission’s requirements regarding digital signatures, audits and record keeping, I’d propose we use that.

Signatures can be verified / audited. There is no log, but since it’s a cryptographic system it would not need one … unlike an account-and-password based system like Discourse, where admins could go in and change timesheets in a user’s name. At least that’s my understanding what that “log” is meant for.

At least as a database backup, which could still be installed again and audited. But to use Discourse is a wacky idea anyway …

1 Like

Would it help if we could find someone in the Commission that knows about these things, and run a solution by him or her?

If I find an already existing time tracking solution that seems to fit the purpose, no need to ask (it could only complicate matters for us, I think …).

But if we can’t find anything, having a contact would be great to propose the Commission funds an open source, cross-platform client/server project that does the job. Because in that case, there must be a lot of inefficient “manual IT” work of copy&pasting numbers in and out, in all these projects funded from EC actions.

So let me have a look at existing time tracking platforms first …

1 Like

@matthias, this won’t work. This is because

  1. Some of us are assigned to more than one work package. Me, I do data analysis and admin. In tech projects like OpenCare I also write myself into the development work, so that I have some time budgeted to spend with the developers doing testing, specifications etc. So, the same bill will contain time spent on different work packages. Furthermore, this is just useless form filling, because a different document tracks the allocation of time across WPs: the timesheet. If you have timesheets (and we are obliged to have them), you do not need to track the WP of bills, even if bills were allocated to just one work package. Therefore, I propose the indication of the WP is no longer required on bills (where people claim payment for their time).

  2. When it comes to things other than work time (i.e. travel + purchase of goods and services), tracking by WP is also not required. On the grant agreement, such things are divided by partner, but not by WP. So, again, even when claiming expenses I propose that we do not require the WP number. Down with form filling! :slight_smile:

  3. On the other hand, our contracts do not require people to issue different bills for different projects in each period. That could make things difficult to track.

Concluding, for each project we need to always keep up to date the following information:

  • Time worked, broken down by work package
  • Total EUR spent on staff
  • Total EUR spent on travel
  • Total EUR spent on other goods and services.

I propose to use the comment line minimally. Ideally, if API queries can tell a bill apart from an expense claim, it would work like this:

  • On bills: just put the project, the entry date and the indication h2020_costtype. This can be equal to personnel, travel, or other-goods-services. That’s it.
  • On expenses: put the project and the entry date. It’s all travel anyway.

Hmm ok, I’ll change it. Just note that after this change we will report to the European Commission the “agreed on costs”, not necessarily “actual costs”. Because we determine costs based on timesheets then, not based on invoices (of which we will no longer know to which work package they belong). The difference is: if somebody tracked worktime for a reporting period but did not invoice it in that reporting period (yet), we still already report it.

If that’s permissible (probably yes, as it’s like trade debits / credits in our accounting) then it’s even better for us as it allows collaborators to get deferred payouts (like I use to do it at times).

The purpose of tagging invoices by work package number was to report only the actual costs.

When making that change, we also no longer need to collect entry_date for invoices, as we will instead collect the information from timesheets. Oh and h2020_costtype=personnel could be assumed as a default if the invoice is by a collaborator. Which means there would be no need for any special process for registering bills in FreeAgent, then.

Ok, I’ll change that too.

Not the contracts, but our invoicing process requires it. It’s needed for project wise accounting in FreeAgent anyway.

Maybe not, but we can assume travel by default if no costtype is given explicitly.

The project is already entered in a dropdown field in FreeAgent’s form. So for bills we collect nothing and for expenses only the entry date. And even that could be avoided with some clever logic: look at the expense receipt date instead and determine if it’s in the reporting period, but also include any existing expense claims not included in the last report (based on some FreeAgent ID number).

Anyway, we’re quite close to the final version now :slight_smile:

1 Like

Yes. So we must specify to people with contracts spanning two projects (mostly directors so far, plus Amelia and Marina) that we need one bills per project at every period.

Continuing the discussion about how to created signed timesheets:

I just saw that LibreOffice Online (the current proposal for us in the NGI Forward project here) includes a feature to sign documents.

These signatures use Vereign, a blockchain based service. So it will come with an immutable, auditable log.

Not saying that we should use that, but it’s an interesting option …

1 Like

Indeed!

I remember at the NGI meeting they said we had to use paper for timesheets. is this no longer the case?

And do we have any finality on entering our time yet? I just read through this topic and while there are lots of ideas, nothing seems final yet.

Noemi and I still have to sign our contracts, and since POPREBEL and NGi are combined for us, there are things about NGI that still have to get figured out such as the number of forums and languages which will effect what money gets allocated to them, And we have to decide about the community journalism program(s).

But we have already done the POPREBEL training and it would be helpful for me to get paid for that portion, when we have a final reporting scheme for it.

Right now, just use the process as described in the wiki at the top of the topic.

It’s not the final version, but the first version ready to use. I’ll look for the right time tracking tool in the next two weeks and then will move over the data from FreeAgent there, and you’ll need to sign the data there again. Since all of that will be well before the first reporting period is over, no problem at all.

It’s just our usual way of working: the tools may change (improve, hopefully) but the data will be kept / migrated.