splitforms.com

Deposit forms · Bookings & services

Collect a deposit when a customer submits your form.

Last reviewed

Create a booking deposit form with Stripe Checkout. Collect a fixed deposit or a percentage of a service price, and keep the enquiry attached to its payment status.

  • Your Stripe account
  • Server-calculated prices
  • Static-site friendly
A website form connecting to Stripe Checkout

Copy the example

An HTML deposit form with two service options

Replace YOUR_ACCESS_KEY with the key for your payment form. Match the option values to your saved pricing rules; the price labels below are illustrative.

deposit-form.html
<form action="https://splitforms.com/api/submit" method="POST">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY">
  <label>Your name <input name="name" required></label>
  <label>Email <input name="email" type="email" required></label>
  <label>Choose a service
    <select name="service" required>
      <option value="consultation">Consultation — $150.00 total</option>
      <option value="project-booking">Project booking — $250.00 total</option>
    </select>
  </label>
  <input name="botcheck" type="checkbox" style="display:none" tabindex="-1">
  <button type="submit">Pay the deposit</button>
</form>
<!-- Configure the matching option prices in SplitForms before enabling payments.
     Prices in these labels are examples. The saved server prices control the charge. -->

Match these saved settings

Configure the server prices before accepting orders

In Form settings → Payments, choose Calculate from order selections. Add service = consultation at 150.00 and service = project-booking at 250.00. Leave quantity fields empty, select USD, set tax to 0% for this example, and Percentage to collect now to 50.

Form field and option valueExample full price (USD)Amount collected
service = consultation$150.0050%
service = project-booking$250.0050%

With a 50% deposit and no tax, the $150 consultation collects $75 now. The $250 project booking collects $125. The unpaid remainder is not charged automatically.

For fetch() submissions, follow the returned payment_url instead of immediately showing a paid confirmation. Read the checkout integration guide.

Prices stay on the server

Submitted totals are ignored. Saved option prices, valid selections and whole quantities determine the payment.

Payments to your account

Charges are created on your connected Stripe account. Manage receipts, refunds, disputes and payouts in Stripe.

Keep the enquiry

Form acceptance and payment completion are separate. The enquiry remains available when a visitor abandons checkout.

Know the limits

A deposit payment, with clear booking terms

Payment does not reserve a calendar slot or sign a cancellation policy by itself. State your booking terms on the form, confirm availability separately, and arrange collection of the balance in your own billing workflow.

  • One-time payments through hosted checkout
  • Separate payment and mailing-list forms
  • Confirm paid status before fulfillment
Submission details and payment status in a form dashboard

Setup

From your form to Stripe Checkout

Connect your Stripe account

Open Integrations → Stripe. Check that Stripe has enabled payments; completed onboarding can still be awaiting verification.

Save the matching payment rules

In Form settings → Payments, choose Calculate from order selections. Add service = consultation at 150.00 and service = project-booking at 250.00. Leave quantity fields empty, select USD, set tax to 0% for this example, and Percentage to collect now to 50.

Install and test your form

Use a dedicated form for paid submissions. Test native redirects or payment_url handling and verify the payment status before fulfilling an order.

Common questions

Frequently asked questions.

View all FAQs
Can I collect a 50% booking deposit?

Yes. Save your service prices and set Percentage to collect now to 50. SplitForms applies the configured tax percentage, if any, and then calculates the deposit before opening Stripe Checkout.

Can I charge the same fixed deposit for every booking?

Yes. Choose Same amount for every submission and enter your deposit amount. You only need order pricing when the deposit depends on the selected service or order.

Will SplitForms charge the remaining balance later?

No. This is a one-time checkout for the deposit. SplitForms does not automatically collect the remaining balance, create installments or charge the card again. Arrange the balance through your own invoicing or payment process.

What happens if the customer closes checkout?

The enquiry remains saved. A received enquiry is not a paid booking; check the submission’s payment status or your Stripe dashboard before confirming it. Refunds are managed in your Stripe account.

Is a paid plan required?

Yes. Form payments are available on paid SplitForms plans. Stripe processing fees are separate. Connect an eligible Stripe account, complete any requested verification and test the checkout before taking customer payments.

Simple pricing

How much does splitforms cost?

Free gives you 500 submissions for $0 — no card, no time limit. Pro is $5/month for 5,000 submissions a month, and Annual is $49/year for 15,000 a month with every Pro feature.

Free

$0— 500 submissions
 

No card, no time limit

Best for testing

For side projects and indie devs.

  • 500 free submissions
  • Unlimited forms
  • Email notifications included
  • Smart spam filtering
  • Submissions dashboard
  • Redirect after submit
  • MCP server included

Annual

$49/ year
About $4.08/mo, billed yearly
Best value

Every Pro feature with triple the volume — $0.27 per 1,000 at full use.

  • 15,000 submissions / mo
  • Unlimited forms
  • Everything in Pro
  • File uploads with 5 GB storage
  • 3 team seats
  • Priority email support

No credit card required on Free • Cancel anytime • Full pricing and FAQ