Case studiesDance education

FitDance: staged platform migration and payment integration

FitDance’s subscription business needed a backend that could support new products and local payment methods. Paulo Cardoso helped replace WordPress in stages, connect referral payment splits and support payment flows in Brazil and Mexico.

Business
FitDance
Sector
Dance education
Scope
Platform migration and payments
Contributor
Paulo Cardoso
Editorial illustration: dance sneakers and a rehearsal step with one orange lace
AI-generated editorial illustration of the project’s domain.

Subscriptions and payments made a single large cutover risky.

WordPress had supported the business, but its architecture constrained the new products FitDance wanted to build. Subscriptions and payments were central to the instructor network, so the migration needed to account for the business already running on the platform.

The replacement had to carry existing workflows forward while adding a backend suitable for new interfaces and market-specific payment methods. The sequence of the move mattered as much as the target technology.

Move content first, then the revenue workflows.

The new stack was built from scratch in Node.js with GraphQL. Functionality moved out of WordPress gradually, ordered by risk.

The blog and posts moved first so the team could rehearse the switch where a failure would cost little. Only after that pattern held did subscriptions and payments move. Each stage became a small cutover instead of one large launch event.

What the workflow includes

  • Rehearse migration with blog and post content before subscriptions.
  • Connect referral rules to Pagar.me split payments.
  • Calculate the referral share and send it with the charge.
  • Integrate dLocal and OXXO payment methods for Mexico.

A replacement backend connected to the business’s payment rules.

The replacement connected a Node.js and GraphQL backend to subscription and payment workflows. Referral splitting became part of the payment flow, and the Mexico integration supported local methods instead of copying the Brazilian payment model unchanged.

What this means for the technology owner.

A staged migration creates smaller decisions and clearer acceptance criteria. The team taking responsibility afterward needs the payment rules, provider accounts, integration behavior and cutover history, so future changes can preserve the revenue process as well as the code.

Decide whether to rebuild or rescue →

Node.jsGraphQLPagar.medLocalOXXOWordPress migration

Project contribution: Paulo Cardoso. The scope described above identifies the work behind this case.

Editorial review: Ego Eimi · Updated September 6, 2026 · About the team

Your technology

Start with the business

Your business depends on it.

Tell us which system matters, what has changed and who controls it. We will define a reviewable next step. Read Foundation and the commitments and evidence.