Stripe payments
Stripe is AmazingForms’ primary payment gateway, supporting one-time charges and recurring subscriptions. Payments are collected via an embedded Stripe element — no redirect to an external checkout page.
Prerequisites
Section titled “Prerequisites”- A Stripe account (free to create)
- An AmazingForms Pro licence
Connecting Stripe
Section titled “Connecting Stripe”- Go to AmazingForms → Settings → Payments → Stripe
- Click Connect with Stripe
- You’ll be redirected to Stripe’s OAuth authorisation screen — log in and authorise
- You’ll be returned to AmazingForms with Stripe connected
No API key copy-paste required. The OAuth connection is more secure than API keys and can be revoked from your Stripe dashboard at any time.
One-time payment setup
Section titled “One-time payment setup”- Open your form in the editor and add a Payment field
- Set Payment type to One-time
- Choose Fixed amount or User-entered amount:
- Fixed — enter the price and currency (e.g. £49.00 GBP)
- User-entered — the submitter types an amount; optionally set a minimum
- Select Stripe as the gateway
- Save and preview the form
On submission, an embedded Stripe card element appears at the bottom of the form (or on the final page for multi-page forms). The user enters their card details, and payment is processed before the submission is finalised.
Subscription / recurring payment setup
Section titled “Subscription / recurring payment setup”- Add a Payment field to your form
- Set Payment type to Recurring
- Select the billing interval: Monthly or Yearly
- Either:
- Enter a fixed price (AmazingForms creates the Stripe Price object automatically)
- Or select an existing Stripe Price object by ID (for prices you’ve already created in Stripe)
- Stripe Checkout handles the subscription signup — the user provides payment details and confirms
Post-payment workflow
Section titled “Post-payment workflow”After a successful payment, AmazingForms triggers the configured workflow exactly as it does for a standard submission — but with payment data available as merge tags:
| Merge tag | Value |
|---|---|
{payment_amount} | Amount charged, formatted (e.g. £49.00) |
{payment_currency} | Currency code (e.g. GBP) |
{payment_status} | succeeded, failed, or pending |
{payment_intent_id} | Stripe PaymentIntent ID for your records |
{stripe_customer_id} | Stripe Customer ID (created automatically) |
Use these in email templates, webhook payloads, and CRM notes.
Failed payments
Section titled “Failed payments”Stripe handles retry logic for card failures automatically (3D Secure prompts, insufficient funds prompts, etc.) during checkout.
For subscription renewals, Stripe retries failed charges over several days (configurable in your Stripe Billing settings → Automatic collection). AmazingForms listens to Stripe’s webhook events and, on a payment failure, can:
- Send you a Slack or email notification
- Add a tag (e.g.
payment-failed) to the contact - Log the event in the contact’s timeline
Configure this in your form’s Workflow tab — add a Condition branch on {payment_status} is failed.
Refunds
Section titled “Refunds”Process refunds from your Stripe Dashboard → Payments → [Payment] → Refund. AmazingForms receives the refund event via webhook and logs it in the contact’s timeline automatically.
AmazingForms does not currently support issuing refunds from within the plugin UI.
Test mode
Section titled “Test mode”Stripe test mode is fully supported in AmazingForms:
- Enable Test mode in Settings → Payments → Stripe
- Use Stripe test card numbers:
4242 4242 4242 4242— always succeeds4000 0000 0000 0002— always declines4000 0025 0000 3155— requires 3D Secure authentication
- Use any future expiry date and any 3-digit CVC
When test mode is enabled, a “TEST MODE” banner appears in the AmazingForms payment settings and in the embedded Stripe element, so you can’t accidentally run test checkouts in production.
Stripe’s standard processing fees apply. AmazingForms charges no additional payment processing fee.
| Card type | Stripe fee (UK) |
|---|---|
| UK/EU cards | 1.4% + 20p |
| International cards | 2.9% + 20p |
See stripe.com/gb/pricing for current rates. Rates vary by country and may be negotiated for high-volume accounts.