Skip to content

Payment Settings

Payment Settings configure online payment for the entire FormBuilder module. Both PayPal and Stripe are supported.

How Does This Relate to Form Settings?

This page holds the global payment parameters (API keys, currency, Webhooks) for the whole module. Individual forms consume these settings through the Product, Quantity, Total, and Shipping elements.

Module Binding

Before configuring payment methods, bind the DNNGo FormBuilder Payment module. All payment flows redirect to the page that hosts this module to complete checkout.

Binding Steps

  1. Create a dedicated page in DNN (e.g., named Checkout)
  2. Add the DNNGo FormBuilder Payment module to that page
  3. Return to Payment Settings, open the Module Binding drop-down, and select the module you just added (shown as Page Name / Module Name, e.g., Checkout / DNNGo FormBuilder Payment)

Prerequisite

Bind the module first — otherwise payment submissions cannot redirect to a checkout page. When not bound, the drop-down shows Not bound.


General

Currency

The currency code used for all payments (required). For example: USD, EUR, HKD, CNY.

Currency Codes

Use standard ISO 4217 currency codes. Common codes:

  • USD — US Dollar
  • EUR — Euro
  • GBP — British Pound
  • HKD — Hong Kong Dollar
  • CNY — Chinese Yuan
  • JPY — Japanese Yen

PayPal

PayPal payment integration.

Enabled

Turn on to activate PayPal as a payment method.

Client ID

Your PayPal application's Client ID.

Client Secret

Your PayPal application's Client Secret.

Get Your PayPal Client ID and Client Secret

  1. Go to the PayPal Developer Dashboard and log in with your PayPal merchant account
  2. Open Apps & Credentials
  3. Choose the environment: Live (production) or Sandbox (test)
  4. Click Create App, enter an app name, and link your merchant account
  5. On the app details page, copy the Client ID and Client Secret
  6. Paste them into the corresponding fields in FormBuilder

📖 Official docs: Get Started with PayPal REST APIs

Mode

Choose the PayPal runtime environment:

  • Live: Production (real transactions)
  • Sandbox: Test environment

Use Sandbox for testing

Develop and test in Sandbox mode first. Switch to Live only when everything is working correctly.

Funding Sources

Select the PayPal payment methods to enable. Options:

Payment MethodDescription
PayPalPayPal balance payment
Debit/Credit CardDebit/Credit card
Pay LaterPay later (installments)
PayPal CreditPayPal Credit payment
VenmoVenmo digital wallet
SEPASingle Euro Payments Area
BancontactBelgian bank card
EPSAustrian online payment
giropayGerman online bank transfer
iDEALDutch online payment
Przelewy24Polish online payment
SOFORTEuropean instant bank transfer
Mercado PagoLatin American online payment
MyBankItalian bank transfer

Which Payment Methods Should I Enable?

Pick methods based on your target market:

  • Global audience: PayPal + Debit/Credit Card
  • Europe: add SEPA, giropay, iDEAL, SOFORT
  • US: add Venmo, Pay Later

Webhook URL

The system-generated PayPal Webhook callback URL. Register this URL in your PayPal application to receive payment status notifications.

Register the Webhook in PayPal

  1. Copy the Webhook URL from FormBuilder's Payment Settings
  2. Open the app details page in the PayPal Developer Dashboard
  3. Scroll to Webhooks and click Add Webhook
  4. Paste the Webhook URL into the Webhook URL field
  5. Under Event types, check:
    • PAYMENT.CAPTURE.COMPLETED — Payment completed
    • PAYMENT.CAPTURE.DENIED — Payment denied
    • PAYMENT.CAPTURE.REFUNDED — Payment refunded
  6. Click Save

📖 Official docs: PayPal Webhooks


Stripe

Stripe payment integration.

Enabled

Turn on to activate Stripe as a payment method.

Publishable Key

Your Stripe Publishable Key (public key).

Secret Key

Your Stripe Secret Key (private key).

Get Your Stripe API Keys

  1. Go to the Stripe Dashboard and log in
  2. For testing, switch to Test mode in the top-left corner
  3. Open Developers → API keys
  4. Copy the Publishable key and paste it into FormBuilder's Publishable Key field
  5. Click Reveal test key (or live key) to show the Secret key, then copy it into the Secret Key field

📖 Official docs: Stripe API Keys

Webhook Secret

The Stripe Webhook Signing Secret, used to verify that incoming Webhook notifications are genuinely from Stripe.

Webhook URL

The system-generated Stripe Webhook callback URL. Register this endpoint in your Stripe Dashboard.

Create the Webhook Endpoint in Stripe

  1. Copy the Webhook URL from FormBuilder's Payment Settings
  2. Open the Stripe Dashboard
  3. Go to Developers → Webhooks
  4. Click Add endpoint
  5. Paste the Webhook URL into Endpoint URL
  6. Under Events to send, add:
    • payment_intent.succeeded — Payment successful
    • payment_intent.payment_failed — Payment failed
    • charge.refunded — Refunded
  7. Click Add endpoint
  8. On the endpoint details page, click Reveal to view the Signing secret
  9. Copy the Signing secret into FormBuilder's Webhook Secret field

📖 Official docs: Stripe Webhooks

API Version

The API version of the Stripe Webhook endpoint. The structure of the event data Stripe returns differs between versions, so this must match the endpoint.

Find the Correct Version

  1. Log in to the Stripe Dashboard
  2. Go to Developers → Webhooks and open the endpoint you created
  3. Note the API version shown in the details (e.g., 2024-06-20)
  4. Enter the same version here

Keep it in sync with the endpoint created in Create the Webhook Endpoint in Stripe — a mismatch can cause event-data parsing failures.


Usage Flow

  1. Create a checkout page, add the DNNGo FormBuilder Payment module, and bind it under Module Binding
  2. Set the Currency and configure PayPal or Stripe API keys
  3. Add Product, Quantity, Total, and Shipping elements to your form
  4. On submission, FormBuilder creates an order and redirects the user to the bound checkout page
  5. After payment, send a confirmation email using the Payment Notification template in Notifications

Next Steps

  • Product — The core e-commerce element
  • Total — Auto-calculates the order total
  • Notifications — Payment notification email templates

Built with VitePress