Create a Customer in Stripe without Capturing Payment

Introduction

You can create a customer in your Stripe.com dashboard, including their payment details, without actually charging the customer.

The method you use to do this will depend on which version of the Stripe add-on you are using.

Following this tutorial, when the form is submitted and passes validation the customer will be created in your Stripe account. A charge will also be created based on how the feed is configured but it will not be captured when the entry is saved.

Please note that Stripe will automatically expire the authorized charges if not captured within seven days.

Using a Stripe version older than 5.2

IMPORTANT: The following requires our Stripe Add-On version 3.4 or newer. Payment method must be set to Stripe Credit Card Field.
  1. Go to Form Settings > Stripe > Add New.
  2. Give the new feed a name and for the transaction type select Product and Services.
  3. The payment amount can be set to either the form total or a product field, it doesn’t matter which as long as the amount is greater than zero and conforms to Stripe.com minimum amount requirements, the customer won’t actually be charged.
  4. Map the Stripe Receipt setting to the form field which contains the customers email address.
  5. Add this gform_stripe_customer_id example to your site as usual, replacing the feed names in $feed_names with the actual names of your feeds, and optionally updating the id numbers for name and phone fields. This will create the customer.
  6. Add this gform_stripe_charge_authorization_only example to send the transaction as authorize only. Skip this point if you want to actually charge the customer.
  7. Finally add this gform_stripe_charge_pre_create example to save the payment method to the customer.

Using Stripe 5.2 or newer

This version of the add-on adds a new setting to the Stripe field which uses a newer implementation of the Stripe integration that will automatically create the customer during submission.

  1. Follow steps 1 to 4 listed in the previous section of this documentation page.
  2. Check the “Enable Additional Payment Methods” setting in your Stripe Field settings., and save your form.
  3. To send the transaction as authorize only, add the snippet for step 6 in the previous section of this documentation, and this one too: gform_stripe_payment_element_authorization_only example
    Skip this point if you want to actually charge the customer.
  4. Add the snippet for step 7 in the previous section of this documentation, and this one too: gform_stripe_payment_element_initial_payment_information