Work

Before founding Codenipun Solutions, our team spent over a decade building subscription, payment and order systems for a global e-commerce platform.

Clients are not named. The engineering is described in full.

E-commerce Subscriptions and recurring billing

Subscription lifecycle and billing for a global e-commerce platform

The problem

Subscriptions were rigid. A plan could only renew on the term it was bought on, changing product or quantity partway through meant a support call, and pricing those changes correctly was manual and error-prone. Every renewal was a churn risk and every change was a ticket.

What we did

A set of high-availability services covering the whole subscription lifecycle: flexible term renewals so an annual plan could bill monthly, mid-term product and quantity changes with a prorated cart preview, add-on management, prorated refunds and configurable discounts when converting auto-renewal to manual, and scheduled renewal processing driven by an external smart-renewals system. Built as REST APIs over a distributed Kafka-backed architecture so operations stayed consistent across services.

The outcome

Plan changes and term conversions moved from a support ticket to something the customer could do themselves, and renewals stopped forcing a cancel-and-repurchase at every term boundary.

  • Java
  • Spring Boot
  • Spring MVC
  • REST
  • Apache Kafka
  • JDO
  • Oracle
E-commerce Payments and checkout

Payment gateway integration across subscription checkout

The problem

The platform supported a limited set of payment methods, so customers in some markets could not pay with the instruments they actually trusted. Adding a provider meant touching checkout, order placement and subscription creation at once, which made every integration a high-risk release.

What we did

Integrated a new gateway into the subscription checkout end to end: generating and notifying the payment URL to the shopper, handling the asynchronous confirmation callback, and fulfilling the order and creating the subscription only once payment had cleared. Callback handling was made idempotent so a repeated or replayed notification could never double-charge a customer or double-fulfil an order, and failed payments unwound cleanly rather than leaving orphaned subscriptions behind.

The outcome

A new payment method went live across subscription checkout without disturbing the existing flows, giving customers in that market an instrument they already trusted.

  • Java
  • Spring Boot
  • REST
  • Apache Kafka
  • Oracle
E-commerce Orders, fulfilment and storefront

Order services and storefront performance on a multi-store platform

The problem

Order placement and invoicing were entangled in a monolith, so any billing change risked the checkout path and releases had to be coordinated across teams. Storefronts also rebuilt site-wide header and footer content on every request, which was slow and turned a content change into a deployment.

What we did

Extracted order and invoicing into a containerised microservice with its own REST API and Cassandra store, deployed on AWS with Kafka carrying events to the existing system. Built out digital rights, electronic fulfilment and post-order returns and cancellations, and moved universal header and footer content into memcache so the client could update it without a release.

The outcome

Billing could be released independently of checkout, and page load time dropped measurably across the site — work that earned a formal appreciation certificate from the client.

  • Java
  • Spring Boot
  • Cassandra
  • Apache Kafka
  • Memcached
  • AWS
  • Docker
  • Oracle

Also delivered

Alongside the above, across the same platform:

  • A finance and invoicing system for a nursery operator, handling fees, session types and invoice generation
  • Requirements gathering, effort estimation and technical design across the full delivery lifecycle
  • Production support in a 24x7 environment, including incident response and performance tuning

Want to talk through something similar?

Subscriptions, billing and order flows are where we have the deepest scar tissue.

Get in touch