← All work

Sportland · Scandiweb · Backend engineer · 2026

Turning a manual returns desk into a product

Self-service returns across 12 storefronts

12
storefronts live
5
countries

The problem

Every return was handled by hand. A customer contacted support, a person checked eligibility, a person generated a label, a person chased the courier. It worked at low volume and fell apart at high volume, and it cost the client real support hours in five countries with different rules in each.

What I did

I designed the returns domain from the data model up: request states, eligibility rules, and the service layer that enforces them, then exposed it through the public API the storefront consumes. The courier integration generates return labels and surfaces live tracking automatically, so no human touches a label. The multi-market dimension shaped the model rather than being bolted on afterwards.

The outcome

A customer-facing product replaced the manual process across all 12 storefronts, and the carrier automation removed the admin work from every single return.

Built with

  • PHP
  • Magento 2
  • MySQL
  • GraphQL
  • REST
  • Carrier API