Skip to content
Krasimir Paunov
All projects

01 Client project Pre-launch

Photo-printing e-commerce platform

An online shop for photo prints — upload hundreds of photos, fit each one to its print size, pay with Stripe and ship with Econt.

An e-commerce platform for ordering photo prints, which I built on my own, end to end, for a private client. Customers upload their photos, fit each one to a print size and pay online; the order is then shipped by courier.

The platform is feature-complete and extensively tested. It is in a pre-launch state, waiting on the client’s go-live steps (payment-provider verification and the shop’s address). The repository is private, so there is no public code or live link.

What it does

  • Photo library — drag-and-drop batch upload of hundreds of photos, with live progress.
  • Crop editor — every photo is auto-cropped to the aspect ratio of the chosen print size and can be adjusted by dragging and rotating.
  • Checkout — online payment with Stripe Checkout.
  • Delivery — shipping with the Econt courier.

What I’m proud of

Payment integrity

Orders are created before payment and confirmed only by Stripe webhooks with a verified signature. Webhook handling is idempotent, and stock is decremented atomically, so it stays correct under concurrent load.

Refund and cancellation rules

A refund is automatic only when nothing has been produced yet. Otherwise the order goes to an admin for review, the refund needs an explicit confirmation, and a persistent “refund owed” indicator keeps it visible.

Non-destructive cropping

Crops are stored as coordinates against the original photo, so the original is never altered.

Econt integration

Live address and office lookup, real-time shipping quotes, and waybill generation from the admin panel. An admin-configurable free-shipping threshold works together with promotions.

Testing discipline

1,000+ automated tests, plus mutation testing to check that the tests really catch defects.