SchoolBlocks Sponsorship Commerce & Management

As an added feature for SchoolBlocks' school websites, sponsors could pay to sponsor any number of schools. Once a sponsorship was approved, they were billed on a subscription basis.

The e-commerce had to allow any number of schools to be sponsored, and a way to view and manage the account across all of them. A tax receipt, payment details and account history had to be available to sponsors through their account, and sponsors needed to be able to add schools or cancel sponsorships. The system had to handle business logic alongside the CMS platform while remaining easy to attach to or remove from school sites as needed.

I built the sponsorship system as a stand-alone Yii module so it could exist independently of the main application. Stripe's API was used behind a custom class wrapper to access and control API methods. Subscription plans, coupons, customers and their accounts were tracked in the application but managed through Stripe. The process created a pending account until SchoolBlocks and the school district approved the sponsor; once approved, the sponsor's subscription was charged for the number of schools selected during checkout.

Sponsors could be managed both on the website and in Stripe. A sponsorship provided a listing on the sponsors page of the district and school sites, an ad on the school's front page, and an editable sponsorship card.