Payment Processing
WittyForm integrates with Stripe to handle payment processing securely. Once connected, your forms can accept payments from customers worldwide using credit and debit cards. All payment data is handled by Stripe: WittyForm never stores card numbers on its servers.
Connecting Stripe
Go to Settings > Payments and click Connect Stripe. You will be redirected to Stripe to authorize the connection. If you already have a Stripe account, sign in and approve the connection. If you do not have one, Stripe will walk you through creating an account during the authorization flow.
Once connected, your Stripe account ID appears in the settings page with a green "Connected" badge. Payments collected through your forms are deposited directly into your Stripe account, and Stripe handles payouts to your bank account based on your Stripe payout schedule.
Accepted Payment Methods
With Stripe connected, your forms accept:
- Credit cards: Visa, Mastercard, American Express, Discover, and other major card networks.
- Debit cards: Any debit card supported by the major card networks.
The payment form displayed to your customers is Stripe's secure, PCI-compliant payment element. It automatically adapts to show the payment methods most relevant to the customer's location and card type.
Currency Settings
Set your default currency in Settings > Payments > Currency. This determines the currency displayed on product prices and charged to customers. WittyForm supports all currencies available through Stripe, including USD, EUR, GBP, CAD, AUD, and many more.
You can set the currency at the workspace level (applies to all forms) or override it per form if you serve customers in different regions.
Test Mode
Before going live, use test mode to verify your payment flow works correctly without processing real transactions. Toggle Test Mode in Settings > Payments. In test mode:
- No real charges are made.
- Use Stripe's test card numbers (e.g., 4242 4242 4242 4242) to simulate successful payments.
- Use decline test cards to verify error handling.
- Orders appear in your dashboard with a "Test" badge so they are clearly distinguishable from real orders.
Always test your complete flow: form submission, payment, confirmation email, and order creation: before sharing the form with real customers.
Viewing Transaction History
All transactions are visible in Ecommerce > Transactions. Each transaction shows the amount, currency, customer, date, Stripe payment ID, and status (succeeded, failed, refunded). Click any transaction to view its details or open it directly in your Stripe dashboard for the full Stripe-level view.
Handling Refunds
To refund a payment, open the order and click Refund. You can issue a full refund or a partial refund by entering a specific amount. The refund is processed through Stripe and typically appears on the customer's statement within 5-10 business days.
When a refund is issued:
- The order status changes to "Refunded" (full refund) or stays as "Paid" with a refund note (partial refund).
- Inventory is automatically restocked if inventory tracking is enabled.
- A refund confirmation email can be sent to the customer if you have this configured.
- The transaction record is updated with the refund details.