Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run Scan×
FREEDOM251

Freedom251 › Blog › Nakodo

Nobody in Nakodo Sees Stripe’s Customer Portal—Four In-App Verbs Explain Why

By Freedom251 Team · · 6 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

In Daniel Pertu’s Nakodo implementation, customers change or cancel plans from Settings → Plan. They never visit Stripe’s hosted customer portal. Four application operations—upgrade, scheduleDowngrade, cancelSubscription, and keepPlan—keep plan timing, product consequences, and non-Stripe accounts inside Nakodo’s own interface.

What Stripe’s customer portal actually is

Stripe’s Billing customer portal is a Stripe-hosted page for subscription and billing management. Your application does not render it as an ordinary in-app screen. Instead, it creates a session for an existing Stripe customer and sends the customer to the URL returned in that session object. If the application does not specify a portal configuration, Stripe uses the default configuration. Stripe describes these sessions as short-lived and recommends creating one on demand when a customer intends to manage billing.

As an Amazon Associate I earn from qualifying purchases.

That model is useful when Stripe’s available settings match your product. Pertu’s argument is narrower: Nakodo’s plan rules require explanations and account actions that a generic billing page cannot provide. As he puts it, “The portal does not know your product.”

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why Nakodo keeps plan changes in the app

Downgrades change product behavior

A Business-to-Free downgrade in Nakodo can pause campaigns above the Free limit, reduce keyword counts, and remove CSV export. Creators that were already unlocked remain unlocked. Those are Nakodo-specific consequences, so Pertu places them beside the confirmation control rather than hiding them behind a Stripe-hosted workflow.

#1 Best Overall
Square Terminal - Credit Card Machine to Accept All Payments | Mobile POS
  • With Square Terminal, you can ring up sales, accept payments, and print receipts, all with one device. Use it at the counter or ring up customers anywhere in your store.
  • Accept all major credit and debit cards and pay one low rate with no hidden fees and no long-term contracts.
  • Process chip cards in just two seconds.
  • Get your money as soon as the next business day.
  • Use it cordlessly with the built-in battery, designed to last all day.

The downgrade timing is a product policy

Pertu says an immediate downgrade can produce a prorated credit. Nakodo instead keeps the paid plan through the current month, starts the lower plan at period end, and does not refund the unused remainder. Stripe does not impose that policy; Nakodo chooses it and explains it in its own UI.

Not every account is Stripe-billed

Nakodo can manually grant a plan without creating a Stripe customer, subscription, or invoice. The implementation therefore separates billedByStripe from billingAccount. A cancelled subscriber may still need to view invoices even though there is no active subscription available to change.

Rank #2
Square Handheld - Portable POS - Credit Card Machine to Accept Payments for Restaurants, Retail, Beauty, and Professional Services
  • With Square Handheld, you can accept payments, take tableside orders, or scan barcodes anywhere. With a slim design and comfortable grip, the POS is easy to carry in your palm or pocket. Square Handheld is designed to withstand water splashes and dust. Add an optional protective case for accidental drops. A long-lasting battery and offline payments let you keep selling.
  • Slim, pocketable, and lightweight so you can accept payments wherever your customers are.
  • Take tableside orders, bust lines, or use the built-in barcode scanner, all with one sleek device.
  • A battery that can power through your shift and offline payments let you keep selling, even if your internet is down.
  • Accept all major credit and debit cards and pay one simple rate with no hidden fees and no long-term contracts required.

The four verbs and their state rules

Operation When it takes effect What the implementation does
upgrade Immediately, after successful payment Previews the invoice with a chosen proration date, carries that date into the subscription update when still valid, filters preview lines to prorations, clamps a negative net amount to zero, and uses payment_behavior: "error_if_incomplete".
scheduleDowngrade At the end of the current paid period Creates or updates a subscription schedule, leaves the current price in the existing phase, and appends the selected lower plan. Discounts are carried into rewritten phases.
cancelSubscription At period end Sets cancellation for the end of the current period and coordinates that cancellation with any existing downgrade schedule.
keepPlan Immediately reverses a pending change Releases the schedule and clears period-end cancellation state, restoring the current plan’s continuation.

upgrade: preview first, then fail loudly

The upgrade flow previews the invoice using a set proration date. If that timestamp remains valid, the same date is passed to the subscription update so the preview and charge are aligned. Nakodo keeps only proration lines for its calculation and prevents a negative net result from becoming a credit by clamping it to zero.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The update uses payment_behavior: "error_if_incomplete". A declined or otherwise incomplete payment therefore does not silently move the account to the new plan. The UI can report that the upgrade did not complete instead of showing a plan the customer has not successfully paid for.

Rank #3
Verifone Vx520 EMV CLTS 32MB Credit Card Terminal
  • NO ENCRYPTION FOR DEBIT. NEED PIN PAD TO ATTACH WITH THE DEVICE TO WORK FOR DEBI
  • Verifone VX520 terminal with EMV reader, contactless reader, and dual com modem.
  • PCI COMPLIANT

scheduleDowngrade: preserve the paid period

Rather than changing the price immediately, Nakodo creates or updates a subscription schedule. The current price remains through the active billing period, followed by the lower price in a later phase. When the code rewrites phases, it carries discounts forward. After the new phase begins, the schedule is released so the subscription is no longer unnecessarily managed by that schedule.

cancelSubscription: end access on the period boundary

Cancellation is scheduled for the end of the current period instead of terminating access immediately. If a downgrade schedule already exists, cancellation has to coordinate with it; otherwise the two pending changes could describe incompatible futures for the same subscription.

Rank #4
Stripe Reader Holder & QR Payment Sign with Business Card Holder - Ultra
  • ALL-IN-ONE DESIGN: Combines a Stripe M2 card reader holder and a single QR code for Venmo, Cash App, PayPal, and Zelle in one professional point-of-sale display
  • PREMIUM CONSTRUCTION: Made from 3/8-inch thick high-impact plastic with precision-embossed text and logos, measuring 10" × 6" × 4"
  • SMART FEATURES: Built-in business card dispenser and USB cord pathway for reader power, plus secure dashboard for payment tracking
  • QUICK SETUP: One-minute activation process - simply scan QR code, add payment methods, business information, and customize settings
  • CUSTOMIZED & HANDCRAFTED: Personalize your sign with your business name on top and custom text on the bottom - each piece is handcrafted for a professional, branded look

keepPlan: make a pending decision reversible

Customers can undo a scheduled downgrade or cancellation. Nakodo releases the schedule and clears the subscription’s period-end cancellation state, so the account continues on its current plan.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

One shared state check protects all four actions

Pertu says each verb first loads a common current-subscription state. The operation validates that the subscription has not ended, performs the Stripe action, and then synchronizes Nakodo’s database row. A webhook later reconciles the record with Stripe, but the immediate sync is intentional: “A customer who just clicked Upgrade is looking at the page right now, so every verb syncs the row as soon as Stripe accepts the change.”

Best Value
Verifone Vx520 EMV/Contactless
  • Stylishly Compact
  • Easy to Use
  • Big Performance

Nakodo’s stated access rule is that a past-due subscription continues granting its plan during Stripe’s retry period. That is an application policy, not a universal Stripe entitlement rule, and the UI must represent it consistently with the billing state.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Hosted portal or custom controls?

The choice is not “Stripe versus no Stripe.” Nakodo still uses Stripe for billing actions; it chooses where customers encounter those actions and how product state is explained.

Question Hosted Stripe portal Custom in-app controls
Can customers understand product-specific consequences? Only what the configured portal supports; it does not know Nakodo’s campaign, keyword, export, or creator rules. The confirmation screen can show exactly which limits, data, and features change.
Who defines timing and proration? Portal configuration and Stripe’s billing behavior provide the workflow. The product can apply immediate upgrades, period-end downgrades, and its own explanation of credits or refunds.
What happens to non-Stripe accounts? It is designed around an existing Stripe customer and its billing records. The app can handle grants, trials, cancelled accounts, and invoice access separately from subscription changes.
How is current state shown after an action? The customer leaves the app for a short-lived hosted session. The app can update its row immediately, then reconcile through webhooks.
What is the engineering trade-off? Less custom billing UI and fewer state transitions to own. More code and testing around schedules, payment failures, synchronization, and edge cases.

What this design does—and does not—prove

Pertu’s article is a first-person account of Nakodo’s design, not an independent audit or benchmark. No reviewed source establishes that every SaaS should replace Stripe’s portal, and no topic-specific named statistic is available to quantify the approach. Stripe’s documentation confirms the hosted-session model; it does not validate Nakodo’s downgrade policy or implementation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

API behavior is time-sensitive. Stripe’s reference page used for this comparison does not identify a pinned API version or geography, so an implementation should confirm the exact behavior against the API version it deploys.

A practical decision test for your SaaS

  1. List the consequences of each plan change. If limits, stored data, campaigns, exports, seats, or access change, decide whether customers need those details before confirming.
  2. Choose timing explicitly. Decide whether upgrades apply now and whether downgrades and cancellations wait for period end. Document who owns any proration, credit, or refund explanation.
  3. Map account states. Include trials, manually granted plans, cancelled subscribers, past-due accounts, and customers who still need invoice history.
  4. Define failure behavior. Decide what the UI says when payment is incomplete, a subscription has ended, or a pending schedule conflicts with cancellation.
  5. Synchronize twice when needed. Update the application’s visible row after Stripe accepts an action, then use webhooks to reconcile later events and retries.
  6. Keep reversals first-class. If customers can schedule a downgrade or cancellation, provide an explicit way to undo it before the effective date.

If these rules are ordinary for your product, Stripe’s hosted portal may be the simpler choice. If they are central to what customers are buying—and especially if some accounts are not Stripe-billed—Nakodo’s four-verb pattern shows why an in-app workflow can be the clearer boundary.

Quick Recap

Bestseller No. 1
Square Terminal - Credit Card Machine to Accept All Payments | Mobile POS
Square Terminal - Credit Card Machine to Accept All Payments | Mobile POS
Process chip cards in just two seconds.; Get your money as soon as the next business day.; Use it cordlessly with the built-in battery, designed to last all day.
$298.99
Bestseller No. 2
Square Handheld - Portable POS - Credit Card Machine to Accept Payments for Restaurants, Retail, Beauty, and Professional Services
Square Handheld - Portable POS - Credit Card Machine to Accept Payments for Restaurants, Retail, Beauty, and Professional Services
Slim, pocketable, and lightweight so you can accept payments wherever your customers are.
$399.00
Bestseller No. 3
Verifone Vx520 EMV CLTS 32MB Credit Card Terminal
Verifone Vx520 EMV CLTS 32MB Credit Card Terminal
NO ENCRYPTION FOR DEBIT. NEED PIN PAD TO ATTACH WITH THE DEVICE TO WORK FOR DEBI; Verifone VX520 terminal with EMV reader, contactless reader, and dual com modem.
$119.00
Bestseller No. 5
Verifone Vx520 EMV/Contactless
Verifone Vx520 EMV/Contactless
Stylishly Compact; Easy to Use; Big Performance
$118.00

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

NakodoSaaS billingsoftware architectureStripesubscription management

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.