You can give your customers the option to pay at checkout, or pay later by some other means. This may be useful if you would like to accept offline payments by cash or cheque, or simply want to charge customers at a later date.
To achieve this, you can use a single-form or multi-form approach.
The single-form setup is smoother, simpler, and keeps all your submission data in one place. We'll cover this approach below.
The multi-form setup uses Dynamic Success Pages & Redirects Logic, which is available on select plans. This approach will not be covered here.
Paying now or later using a single form:
-
Build up the form's total.
Create a form and add price questions, product questions, or custom pricing rules to apply something to the form's total.
-
Select a payment account.
Ensure you have the desired payment account selected in Configure → Payments or connect a payment account.
-
Ask the customer when or how they'd like to pay.
Add a multiple-choice or dropdown question that asks the customer whether they'd like to pay now or later. Your options could be something like "pay by card" and "send a cheque.”
The point isn't exactly what you call your options. Rather, it's about providing the customer a choice to either process their payment now through the checkout or pay some other way later.
-
(Optional) Use a calculation to re-compute the form's total.
The Calculations feature, available on select plans, makes tracking the amount owing for those who pay later much easier. If skipping this step, see 'Re-computing the form total without a calculation’ in the next section.
In a Calculation question, you'll need to pull in answers for
- Product questions
- Price questions
and compute any costs that your custom pricing rules do, but in the calculation itself.
Our calculation might look something like:
isPayingLater = {{ multipleChoiceKey }} == "Pay later"; total = {{ productKey.total }} + {{ priceKey.total }} + switch({{ anotherMultipleChoiceKey }}, "Basic", 5, "Premium", 10, "Premium+", 20); if(isPayingLater, total, 0);The calculation performs the following steps:
-
Check if the customer wants to pay later by checking if they chose the corresponding answer in the question where you ask them if they're paying now or later.
-
Calculate the total within the calculation, including:
- product totals
- price totals
- values that your custom pricing rules might be handling, such as packages from a multiple-choice question
-
If the customer is paying later, return the total. Otherwise, return 0.
The next step will show why this part works this way.
-
Conditionally zero out the form's total.
In a custom pricing rule, construct a rule that subtracts the calculation's value when the calculation is answered.
Custom pricing rule for conditionally zeroing out the form's totalThis allows the calculation to determine whether the form's total will be 0 or if it will be untouched. If the form's total is 0, checkout is skipped, allowing customers who wish to pay later to submit the form without entering any payment information.
Additionally, the calculation has the added benefit of containing what would have been the form's total. Since it requires you to emulate the form's total to subtract it, its answer ends up being the form's total for those who elected to pay later, giving you an easy point of reference for what to charge those customers since the actual form total was 0 for that submission.
Re-computing the form total without a calculation
You can skip Step 4 entirely to avoid using a calculation. In Step 5, set up your custom pricing rule to check the multiple-choice or dropdown question created in Step 3, so that if they opt to pay later, the form's total will be equal to 0.
Note that you won't have a calculation to sum up the owed amount, so you'll need to add up the total manually using submission data when you collect later payments.
Authorizing payments for future capture with Stripe or PayPal
Alternatively, if you have connected and configured a Stripe or PayPal Business account on your form, you can set up authorized payments for future capture by following these instructions.
When enabled, the payment will not be charged immediately; rather it will be authorized and can be processed or canceled later via the Stripe or PayPal Dashboard.
Authorize payment for future captureNote: Please check with your payment gateway for more details on how long you have to capture a payment before it automatically falls off.