REDCap Automated Billing is an automated, data-driven service billing system for a REDCap system. The University of Florida’s CTS-IT designed and wrote this system to charge a modest annual fee for each project and bill for customer support work logged in a REDCap-based service request system. This generates revenue, reduces data privacy risks by incentivizing the deletion of abandoned projects, and improves the quality of research productivity metrics.
Motivation
- Generate revenue to offset costs and improve service.
 - Reduce data exposure risk via deletion of unneeded things.
 - Improve the quality of metrics by not counting junk projects.
 - Reduce support staff workload.
 
What we learned
- We can make money by charging for REDCap services.
 - Charges are a tool to incentivize customer behavior.
 - Good people data and project ownership data are required.
 - There is no such thing as over-communication.
 - Partner with your fiscal team.
 - Use an incremental and iterative approach.
 - Automate everything.
 
Novel Concepts
REDCap Automated Billing introduces some concepts outside the normal scope of a REDCap system. These are described in Novel Concepts
Billing for support work
The complexities of billing for REDCap support work are described in Billing for REDCap support work
Business workflows
- Cleaning person data
 - Cleaning ownership data
- cleanup_project_ownership_table
 - Ban accounts/emails of people who left your institution. See update_invoice_line_items_with_invoicing_details
 
 - Exempt special people and special projects from billing
 - Manage abandoned projects
 - Create & Manage charging records
- create_and_send_new_invoice_line_items
 - update_invoice_line_items_with_invoicing_details
 - sequester_unpaid_projects
 - cancel_invoice_line_items (Ad hoc)
 
 - Manage organizational data
- write_uf_fiscal_orgs_to_org_hierarchies (temporarily disabled)
 - write_uf_fiscal_orgs_to_person_org (temporarily disabled)
 
 - Manage pro bono service request work
 - Internal reporting
 - Manage customer communications
 
When jobs run
Most ETLs and reports are run in a regular basis via Cron. The schedule of those events can be found at When jobs run