All work
Custom WordPress Theme

MWA Charity

Developed a custom WordPress theme using Elementor Pro, custom post types, and Advanced Custom Fields (ACF), solving donor drop-off through custom Gravity Forms with integrated Stripe payments and automated PDF invoice generation.

Sector
Custom WordPress Theme
Timeline
4 months
Role
Custom Theme & Plugin Engineer
  • WordPress
  • Custom Themes
  • Elementor Pro
  • Custom Post Types
  • ACF
  • Gravity Forms
  • Stripe
  • PDF Generation
MWA Charity
100%
Donation Flow Uptime

Robust processing via Gravity Forms and Stripe

12+ hrs/wk
Admin Efficiency Gain

Eliminated manual invoice compiling and emailing

The problem

Replacing a fragmented third-party donation plugin system that caused high checkout failure rates and lacked support for custom tax-deductible PDF receipt generation.

The solution

Built a unified custom WordPress theme on Elementor Pro with tailored Custom Post Types and Advanced Custom Fields. Integrated Gravity Forms with Stripe payments to stream checkout, and developed custom PHP handlers to compile and email PDF invoices automatically on successful transactions.

Approach

How it was built.

01

Custom Post Types & Fields

Designed custom post structures using Advanced Custom Fields (ACF) to allow admins to publish campaigns with distinct financial goals.

02

Gravity Forms Stripe Integration

Constructed secure, responsive single-page donation checkout flows utilizing Gravity Forms mapped to Stripe payment intents.

03

Automated PDF Receipting

Programmed server-side PHP hooks that capture transaction metadata and generate clean tax-compliant PDF invoices on checkout success.

Technical detail

The parts worth explaining.

Gravity Forms Stripe Payment Callback Hook

Capturing transaction metadata to generate and mail PDF invoices dynamically.

add_action('gform_stripe_charge_captured', function($entry, $charge, $action) { $invoice_pdf = generate_donation_pdf($entry); send_donation_invoice($entry['email'], $invoice_pdf); }, 10, 3);
What I took from it
  • Decoupling PDF generation to run asynchronously prevents checkout connection timeouts.
  • Custom post hierarchies with ACF keep content management intuitive for non-technical administrators.
Where it goes next
  • Deploy automated SMS payment notifications for donors.
  • Configure multi-currency Stripe elements gateways for international contributors.

Got a problem shaped like this?

If something here looks like what you're facing, tell me about it. The first conversation is an architecture discussion, not a sales call.