01 · SaaS · Embeddable product
Embeddable booking and storefront widget for service businesses
Problem: Service businesses wanted to take bookings and sell products on their own websites, without re-entering each order into their back-office system by hand.
Built: Started this project and built it with a teammate: a widget that any business can add to its website with an iframe snippet. Customers book services, buy products, and add a tip, choosing to ship the item in or drop it off, and paying online or later. A completed order automatically creates the customer record and a work order in the back office. Shipping runs through an embedded ShipStation integration, and each business tailors the widget through settings: which categories and services appear, custom form fields, and more.
Hard part: Making one widget reusable and dynamic across very different businesses. Which categories and services appear, the custom fields, fulfilment, payment, and shipping options all come from settings, not code, so a single widget adapts to each business without per-customer changes.
Result: Live in production, configurable for multiple businesses.
LaravelVue.js
02 · SaaS · Third-party API integration
Real-time tax compliance integration for a multi-jurisdiction SaaS platform
Problem: Small businesses on the platform were handling sales tax by hand across different jurisdictions. That's error-prone and hard to keep current as rates and rules change.
Built: Connected the platform to an external tax-compliance service for real-time tax on tickets, estimates, and invoices, with a layered tax-code system (default, category, item, repair), customer exemptions, and optional invoice sync. Shipped as a plan-gated feature with a self-serve setup flow.
Hard part: Tax comes from an external service, so it can fail or arrive late while the sale still has to go through. I kept every invoice consistent in those cases: the invoice is still created, the problem is clearly flagged, and tax can be applied afterwards. Every failure is logged so problems can be traced, and returned values are verified before they reach an invoice.
Result: Shipped about three years ago and still live in production for customers on the platform's premium plan.
PHPLaravelVue.jsYii
03 · SaaS · Third-party API integration
Embedding third-party device-protection plans into a point-of-sale workflow
Problem: Merchants wanted to sell optional device-protection plans as extra revenue without changing how they already ring up sales.
Built: Built a Sell Plan flow inside the checkout screen: real-time plan lookup from the provider (type, coverage, benefits, price), a monthly or annual billing choice, and a handoff to the provider's hosted checkout for payment. A confirmation step links the sold plan to the customer, whose plans then show in the point of sale, the customer profile, and purchase history. Setup takes two provider-issued credentials.
Result: Live in production, letting merchants sell protection plans without leaving their existing checkout flow.
YiiVue.jsNode.js