Summary
Conditional logic can be used to specify when a certain feed should process based on the form data. This is useful for subscribing users to mailing lists and sending payment information to different services.
Feed Settings
You can enable conditional logic for a feed in the feed settings. This will need to be done for each feed associated with the form. If conditional logic is not configured, the form will process the first feed it finds.
Examples
Process a feed based on a field choice
In this example, we use conditional logic to determine whether the form data should be sent to either Stripe or PayPal.
First, we add a field to the form that allows the user to choose a payment method. We will use a drop-down field labeled ‘Gateway’ with the following choices: Stripe and PayPal.
Then we create a feed for each service via the specific add-on feed settings page. Conditional logic is enabled, and the criteria are set so that the gateway equals the appropriate payment method for that feed.
When the user is on the form, they will see the Gateway field, which lets them select the payment gateway they want to use. Then, when the form is submitted, the conditional logic will determine where the payment information is sent. If they select PayPal as the Gateway, then the payment information will be forwarded to PayPal. If they choose Stripe as the Gateway, then the payment information will be sent to Stripe.
Process a feed if a field is not empty
In this case, you can use the “is not” operator, leaving the input field empty (i.e., the field value is blank). The example below would create a post using an Advanced Post Creation feed only if a field is not empty.
Process a feed based on payment status
Use this when a feed should run only after payment reaches a specific status, such as creating a user when the payment is paid, or notifying someone when it fails. Payment status conditional logic is set on the feed itself and can target any status that the gateway records.
The form needs an active payment feed from a supported payment add-on. Payment Status then appears in the conditional logic field list on other feeds, such as User Registration, Zapier, or Advanced Post Creation.
On the feed you want to control, enable conditional logic. Choose Payment Status, then choose “is” or “is not”, then choose the status. Create a separate feed for each status you need to handle.
| Status in the list | When to use it |
|---|---|
| Paid | A one-time payment has been completed |
| Failed | The payment failed |
| Processing | Payment has started and has not finished |
| Authorized | The payment was authorized and has not been captured |
| Active Subscription | A subscription is active |
| Cancelled Subscription | A subscription was canceled |
| Pending | Payment is pending |
| Refunded | The payment was refunded |
| Voided | The payment was voided |
Note: Not every payment gateway uses every status.
The feed does not run when the form is submitted if the status does not match yet. When the payment add-on updates the entry’s payment status, Gravity Forms checks these feeds again and processes those whose conditions now match. A feed that has already run is not processed again.
When using conditional logic for payment status, leave Post Payment Actions unchecked for that feed.



