Builder resource

The API-First Product

Add Plandalf Offers to a React app, keep Stripe as the processor, and send purchase events into Postmark, Customer.io, and the rest of your operating stack.

Use this as the builder map for an API-first implementation: when to create products, how prices attach to an offer, where checkout belongs, and which webhooks should drive access, receipts, and lifecycle work.

The goal is not another vague integration page. This is a practical guide for using Offers, Automations, invoices, payment options, and integrations together inside a real product flow.

Built for: Dev tool startups, API products, B2B SaaS with a console

This page is the builder map: patterns, responsibilities, recipes, and product decisions for adding Plandalf to an API-first product. Exact method signatures belong in the SDK checkout docs, API reference, and webhook docs.
The Numi API Keys settings page used to create organization API keys.
Create and manage organization API keys in the Numi app before making protected API requests.
The Numi Developer API documentation with sidebar navigation and SDK method reference.
The dedicated docs surface owns exact SDK method reference. This stack page stays focused on what to build and where each responsibility lives.

Architecture

Treat Plandalf Offers as the commerce layer between your product and the payment processor. Your application owns the product experience. Plandalf owns offer configuration, checkout state, pricing rules, buyer identity, invoices, and the events that drive fulfilment.

Stage System Handoff
Site React Plandalf opens from that page with the selected offer context.
Checkout Plandalf Plandalf validates the offer, applies pricing logic, and emits checkout events.
Payment Stripe Plandalf sends the payment request to Stripe, then records the completed purchase event.
Email Postmark Plandalf Automation sends the event and customer fields to Postmark.
Automation Customer.io Plandalf Automation sends the event payload to Customer.io.

How This Stack Makes The Sale Work

The API-First Product is useful when each tool has a clear job: the audience surface creates intent, Plandalf turns that intent into a configured offer, Stripe collects payment, and the follow-up tools receive the purchase context they need.

Choose The Pattern

Start by deciding which business moment you are building. The technical implementation changes depending on whether checkout starts inside the product UI, from a public marketing page, or from your own catalog system.

Build The Offer Layer

The offer is the commercial object your product points at. It should describe what the buyer can purchase, how checkout appears, which price rules apply, what invoice gets recorded, and what automation happens after purchase.

The Numi offer editor with layout, product, theme, automation, invoice, and settings controls.
The offer editor is where the checkout surface, products, automation, invoices, and display mode come together.

Configure The Controls Sellers Will Touch

An API-first build should not hide commercial controls in code. Sellers still need a place to adjust automation, checkout templates, order bumps, upsells, coupons, and the blocks that appear inside the offer before developers wire the SDK into the app.

Wire The Buying Moment

Your product should decide when the buyer is ready. Plandalf should decide what the checkout means. Keep the product UI focused on the buying moment, then let the offer carry the checkout mode, product, price, invoice, and automation context.

Inside the appUse for upgrades, seat expansion, feature gates, templates, credits, or API plan changes.
On a public pageUse for pricing pages, product pages, launch pages, and template galleries.
From backend stateUse when your system already knows the product, customer, entitlement, or account context.
The Numi API Keys settings page used to create organization API keys.
Create and manage organization API keys in the Numi app before making protected API requests.

Plan The Data Contract

The useful part of an API-first integration is not the button. It is the agreement between your app, Plandalf, the payment processor, and follow-up tools about which object owns each piece of commerce state.

Object Primary owner How Plandalf uses it
Customer Your app Receives identity and buyer fields so checkout and follow-up stay attached to the right person.
Offer Plandalf Packages products, prices, checkout mode, invoices, coupons, bumps, upsells, and confirmation state.
Product and price Shared Use stable keys so app entitlements, invoices, and automation events point at the same commercial object.
Payment Stripe Plandalf keeps checkout and invoice context while the processor handles the charge.
Purchase event Plandalf Starts fulfilment, CRM updates, lifecycle sequences, receipts, and internal notifications.

Actual Product Surfaces

These are the app surfaces a builder should expect to touch before the SDK install: products and prices, integrations, and invoices. The screenshots are from the product, so this section can explain where implementation decisions live instead of showing abstract mockups.

The Numi products page showing a product, price, and Stripe connection status.
Products and prices are visible app records, not hidden implementation details. Start with Products, Prices, and the Stripe connection.
The Numi integrations page showing Stripe, PayPal, Stripe test mode, and TaxJar connection options.
Payment and tax integrations stay inspectable in the app before the SDK is wired into production. Keep Stripe, PayPal, TaxJar, and Avalara visible to operators.
The Numi offer invoices page showing invoice status, customer, amount, and line item information.
Invoices preserve the commercial record after checkout, including line items and status. Tie checkout back to custom invoices, PDF invoices, and invoice email.

Payment Configuration

API-first checkout still needs visible operator controls. Before a developer reaches for SDK checkout methods, the seller should be able to confirm the payment processors, payment options, tax integrations, and sandbox routing that the offer will use.

The Numi integrations settings page showing Stripe, PayPal, Stripe test mode, TaxJar, and Avalara connection options.
Payment processors and tax services are configured in the app before checkout traffic reaches production. Link Stripe, PayPal, TaxJar, and Avalara from the integrations surface.
The Numi Stripe payment methods settings page showing card, wallet, bank transfer, and buy now pay later options.
Stripe payment methods let sellers choose which cards, wallets, bank transfers, and pay-later options appear in checkout. This belongs with payment options, hosted checkout, and Stripe docs.

Compare The Pattern

An API-first build is different from using a processor-only checkout or a standalone funnel tool. Use these pages when a builder is deciding whether Plandalf Offers should sit inside the product stack or whether a narrower checkout product is enough.

Implementation Recipes

Use these recipes the way a developer would use product-specific SDK docs: choose the job, confirm the product surface, then move into API reference, SDK checkout, webhooks, events, and integration docs only when the implementation shape is clear.

Mount checkout inside a React upgrade CTA

Use when: Use this when the buyer is already signed in and the upgrade should happen inside your product rather than on a separate pricing page.

  1. Create the offer with products, prices, checkout templates, coupons, order bumps, and upsells already configured.
  2. Install the SDK in the React app and pass buyer identity before opening checkout.
  3. Open the hosted checkout or embedded checkout surface only after the buyer clicks the upgrade CTA.
  4. Listen for the purchase event or webhook before granting access to the account, workspace, or feature gate.

Publish a product-backed offer from your catalog

Use when: Use this when your app already has plans, packages, credits, templates, seats, or subscriptions and Plandalf should own the buying surface.

  1. Map your catalog object to Plandalf products and stable prices before launch.
  2. Attach the products and prices to an offer instead of improvising a one-off payment link.
  3. Preview the checkout template, payment options, coupons, order bumps, and upsells before sending production traffic.
  4. Use the API reference and SDK docs only for implementation details after the commercial object is clear.

Fan purchase events into fulfilment tools

Use when: Use this when the same completed checkout needs to update access, send a receipt, notify a team, and start lifecycle messages.

  1. Treat the purchase event as the source of truth, not the front-end success screen.
  2. Send invoice and receipt work to the transactional email integration while lifecycle messaging goes to Customer.io or another CRM/email tool.
  3. Route the webhook payload to your custom API for entitlement, analytics, reporting, or fulfilment.
  4. Keep invoices, line items, payment state, customer identity, and coupon context attached to the event.

Verify payment, tax, and invoice records before launch

Use when: Use this when the checkout is technically wired but the business record still needs to survive refunds, support tickets, and reporting.

  1. Confirm Stripe, PayPal, Stripe test mode, TaxJar, and Avalara are connected or deliberately left off.
  2. Choose the payment methods that should appear in checkout, including cards, wallets, bank transfers, and pay-later options.
  3. Run the hosted checkout flow with test payment settings and verify invoice records are created with the expected line items.
  4. Check that payment state, tax context, invoice email, PDF invoices, and customer fields are available after purchase.

Linked Implementation Map

Use this map when The API-First Product turns from an idea into implementation work. Every linked feature, integration, docs page, workflow, comparison, template, and tool is a next step a builder or agent can follow from this stack.

Operational Recipes

These are the practical recipes a builder usually needs after the checkout opens. They are intentionally product-level: the SDK docs can own function names, while this page explains the workflow you are trying to implement.

Hand Off To SDK Docs

This stack resource should not become the SDK reference. The SDK docs should own method signatures, auth headers, payload examples, error states, and versioned install instructions. Link to them when a builder is ready to implement.

Future docs handoff Use this page to choose the integration shape. Use the React SDK docs for browser methods, protected API routes, webhooks, and copy-paste examples.
The Numi Developer API documentation with sidebar navigation and SDK method reference.
The dedicated docs surface owns exact SDK method reference. This stack page stays focused on what to build and where each responsibility lives.

Builder Checklist

Before shipping the integration, verify these decisions. If one is unclear, the checkout may open, but the business workflow after purchase will still be brittle.

01Offer selectedEvery buying moment points to a clear offer, not an improvised payment link.
02Identity mappedYour product can reconcile the buyer, customer, workspace, account, or entitlement after purchase.
03Event path chosenFulfilment starts from a purchase event or sequence, not from a front-end success screen alone.
04Records preservedInvoices, line items, payment state, and customer fields are available for support and reporting.

Next Steps

Automation sequences

Purchase event webhook fanout Fan a single purchase event out to custom APIs, SDK-built apps, email systems, analytics, and fulfillment services. Checkout started to abandonment recovery Recover a checkout that opened but did not complete by sending the buyer and offer context to the email or automation tool.

Templates

Webflow + Stripe Checkout A ready-to-clone Plandalf checkout template designed for Webflow sites paying via Stripe.

Use cases

Writers & creators Drop a buy button inside the post. Sell the upgrade in the same scroll. Career coaches & advisors Sell sessions, packages, and cohort programs on a checkout that matches your coaching practice. Growth & checkout teams When the checkout is the product. A surface designed to convert, not configure. Event organizers Ticket tiers, early-bird timers, group rates — without renting a ticketing platform that owns your audience. Studios, coaches, trainers Sell memberships, class packs, and drops without renting another membership app every month.

Features and docs

Offers product Checkout pages, embedded offers, products, prices, coupons, bumps, upsells, and invoices. Automations product Purchase-triggered workflows for CRM, email, fulfilment, records, and handoff. Sequences Events that fire after checkout, payment, subscription, and lifecycle changes. Payment integrations Stripe, PayPal, payment options, invoices, and payment event routing. Offers docs How Offers packages products, prices, checkout layouts, and conversion elements. Hosted checkout docs Hosted and embedded checkout setup, test sessions, and preview sessions. Stripe docs How Stripe connects and what events Plandalf listens for. Webhook docs Checkout, payment, and subscription events for custom automations. API Developer/API SDK Developer/API Integrations Automation Automation Automation

Feature detail