Powering the University of Virginia's central giving websites is the iModules Caching System, an automated system designed to securely collect and encrypt gifts made to the University through the iModules donation platform. The system reports real-time gift information through a series of ReSTful APIs, providing data to some of our most compelling sites and storing information for over fifty-million dollars in transactions.
The system, which runs every five minutes, automatically determines the correct date and time parameters to return data based on previous successful calls. Using the SOAP protocol, the system returns donation data as XML, de-duplicates data, assigns unique IDs, and encrypts and stores values.
The system is also designed to be expandable for developers. Developers can easily add or extend their own functionality during the caching process using a series of predefined hooks. At the University of Virginia, we utilize the hook functionality to execute additional calls to the iModules API and send email notifications to UVA fundraisers using Amazon Web Services' Simple Email Service.