Both Stripe and Paypal process payments for a 2.9% + $.30 fee, and they take their fee off the top. So what if you want your form to pass the processing fee back to your member to pay? This tutorial is assuming you already have your form set up to process payments.
1) Add a Single Line Text field and add a Field Label. (This is the payment amount field that your users will use to type in the amount of the payment or donation. It is recommended to use this field type instead of a Product field. The reason is that Gravity Forms will calculate the total of all Product fields and pass them on to Stripe or Paypal. So if a customer enters $50.00 in the Payment Amount field and then the amount with processing fees shows $51.80, then the customer will actually be charged $101.80. Using the Single Line Text field type will still enable members to enter the amount of payment and also allows the "Calculation" field to do it's job. Therefore the member is only charged the amount in the below (with processing fees) field.)
2) Now create a Product field and enter a Field Label. This is the field that will add the Amount from the first field to the 3% processing fee. So to set up the calculation, under Field Type select Calculation. Also, make sure you check the Disable quantity field.
3) Once you select Calculation, you’ll see a formula field pop up. Select your previous Single Line Text field as your merge tag. For this example, Price is the name of the Single Line Text field.
4) The merge tag will show up in the Formula text area. The 19 right next to Price is the field ID, so that number will be different for you.
5) Finish the calculation. The formula used needs to be:
Now if someone makes a payment for $100 on your website, the customer will be charged $103.30. 2.9% multiplied by $103.30 plus $.30 is $3.30. Subtract $3.30 from $103.30, and you’re left with $100.
5) Finally just add a Total field.
Make Adding the Transaction Fees Optional
1) To make the transaction fee optional, you would add a checkbox field preferably before the Amount field.
2) Next, you’ll go to the Advanced tab of the Payment Amount field with the merge tag. Check Enable Conditional Logic. Select the transaction fee question with the checkbox that you had just created. This question only has one answer, so you can’t select another answer. Performing this step, will have the payment amount field with the transaction fees show only if the visitors checks the checkbox. Your settings should look like the screenshot below:
Update your form and go to Gravity Forms’ Settings -> Paypal (or Stripe). You’ll need to add another feed so the correct payment amount can be sent to Paypal or Stripe. One feed would be used only if the visitor checked the box to cover the transaction fees. The other feed wouldn’t have any conditional logic, so it’s used if the visitor doesn’t check the box to cover the transaction fees.