Skip to main content

Funnel Pages

A funnel is a sequence of pages (steps). Each page has a type that determines its capabilities — whether it can accept payments, show upsells, fire conversion events, etc.

Page Types

Every node in a funnel has a type. Here are all the available types and what they unlock:

Why types matter

The step type controls what stepConfig options are available:
  • checkout steps can have paymentSetupConfig (card, Apple Pay, Google Pay routing), orderBumps, and payment config
  • offer steps can have upsellOffers for post-purchase offers
  • thankyou steps are marked as the conversion endpoint — analytics events like Purchase fire here
  • landing and custom steps are general-purpose — they have pixels and scripts but no payment-specific config

Common funnel patterns

You can combine any types in any order. The only requirement is that a funnel with payments needs at least one checkout step, and a complete flow should end with a thankyou step for conversion tracking.

Three Approaches

TagadaPay offers three ways to create funnel pages, depending on how much control you need:
When you create a funnel with checkout and thankyou step types, TagadaPay automatically injects its built-in checkout UI. No plugin deployment, no HTML — just define the flow.

Create and activate

No pluginId or instanceId needed. TagadaPay detects that checkout and thankyou nodes have no plugin assigned and injects the native checkout automatically.The checkoutUrl parameter in createSession is critical — it tells TagadaPay to redirect customers to your funnel’s deployed page instead of the default CMS URL.

What you get

The native checkout includes:
  • Card payment form with real-time validation
  • Order summary with product details and pricing
  • Multi-currency support based on your store config
  • Mobile-responsive layout
  • Built-in thank you page with order confirmation
For the full setup including processor, store, and product creation, see the Merchant Quick Start.

Updating a Live Plugin

To update your custom checkout without downtime, deploy a new version with the same plugin name:

A/B Testing

Split traffic between two checkout designs:

Direct Mounting (Without Funnel)

For standalone pages (landing pages, portals) outside of a checkout flow:

Custom Domains

By default, pages are served on *.cdn.tagadapay.com. To use your own domain (e.g. checkout.yourstore.com), use tagada.domains.

Step 1 — Register the domain

Step 2 — Configure DNS

Add a CNAME record at your registrar:
Use tagada.domains.getConfig() and tagada.domains.getDnsLookup() to check DNS propagation programmatically before verifying.

Step 3 — Verify

Once DNS has propagated:
Possible status values: Valid Configuration, Invalid Configuration, Pending Verification, Domain Not Found, Error.

Step 4 — Mount on the custom domain

Use customDomain instead of hostname or alias when mounting:
HTTPS is provisioned automatically. A/B testing and sticky sessions work identically on custom domains.

Managing domains


Promote Staging to Production

After testing on the staging CDN URL (*.cdn.tagadapay.com), promote the funnel to your custom domain in one call. The server handles instance cloning, route setup, and prebuilds automatically.
The domain must be verified before promoting. If the domain is already in use by another funnel, pass acknowledgeConflict: true to override:

Full workflow: staging to production


Plugin Management


Next Steps

Plugin SDK Reference

Full SDK documentation — hooks, API, examples

Plugin CLI

Deploy plugins from your terminal with tgd deploy

Merchant Quick Start

Full 7-step setup from processor to live checkout

Host & A/B Test

Custom domains, A/B testing, and hosting via REST API