Funnel Pages
A funnel is a sequence of pages (steps). Each page has atype that determines its capabilities — whether it can accept payments, show upsells, fire conversion events, etc.
Page Types
Every node in a funnel has atype. Here are all the available types and what they unlock:
external does not redirect. It declares a step that lives on a site you host — your own landing page, a
WooCommerce product page, a marketing page on your CDN. TagadaPay mounts no plugin instance for it, creates no
CDN route, and skips the page-config and path checks. The step keeps its own URL, and analytics reach it through
the External Page Tracker or a server-side call to
POST /funnel-tracking/step.Why types matter
The steptype controls what stepConfig options are available:
checkoutsteps can havepaymentSetupConfig(card, Apple Pay, Google Pay routing),orderBumps, andpaymentconfigoffersteps can haveupsellOffersfor post-purchase offersthankyousteps are marked as the conversion endpoint — analytics events likePurchasefire herelandingandcustomsteps are general-purpose — they have pixels and scripts but no payment-specific config
Common funnel patterns
Three Approaches
TagadaPay offers three ways to create funnel pages, depending on how much control you need:- Native Checkout
- Custom HTML
- Plugin SDK (Recommended for Production)
Native Checkout (Recommended)
When you create a funnel withcheckout 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
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:Step 3 — Verify
Once DNS has propagated:status values: Valid Configuration, Invalid Configuration, Pending Verification, Domain Not Found, Error.
Step 4 — Mount on the custom domain
UsecustomDomain instead of hostname or alias when mounting:
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 deployMerchant 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
