Calculate Stripe processing fee based on total

  • bobolinkcreative
    Asked on September 16, 2014 at 1:01 PM

    Hello,

    When a payment is processed through Stripe, they automatically deduct their processing fee (2.9% + .30) for each transaction before making the transfer to your bank. For proper record keeping purposes, my clients need to keep track of three things;

    1. what aspect of the organization the donation is designated to
    2. the total donation amount so that they can give proper tax deductible giving credit
    3. the total processing fee for each donation

    The notification emails are great because I can list out all of the donation information, however if they want to know what the processing fees are they have to go to their Stripe dashboard and dig into each transaction to find the details. 

    I tried using a hidden calculation field with the following formula to calculate what the processing fee will be, that way I can list it right in the email that my clients will receive.

    ( [subtotal]  * 0.029 ) + 0.3

    The problem with the above is that JotForm is rounding down, so it has the potential to be one cent off.

    For example, a payment of $15 would look like this:
    (15 * 0.029) + 0.3 = 0.735 

    On JotForm, this calculation shows the fee to be $0.73 but with Stripe, their fee is actually rounded up to $0.74. I tried using some of the advanced functions like round() but was not having any success making this happen. Is there a way to use calculations that will round up the third decimal if necessary?

    Any advice would be greatly appreciated. Thanks so much!

  • David JotForm Support
    Replied on September 16, 2014 at 2:16 PM

    Hi,

    In the advanced options for the calculation field there is an option for how many decimal places you would like to round to:

    Calculate Stripe processing fee based on total Image 1 Screenshot 30

    Calculate Stripe processing fee based on total Image 2 Screenshot 41

    If this is not what you were looking for, please let us know and we will be happy to see what else we can find.

  • bobolinkcreative
    Replied on September 16, 2014 at 2:37 PM

    Thanks so much for the response. This helps, but I'm not sure it is exactly what I'm looking for.

    In my above explanation, the exact calculation comes out to be 0.735 and while the advanced options do correctly show only two decimal places, it simply truncates the decimal rather than rounding it. Since it is 0.735, the third decimal place being 5 should round it up to the next decimal making the final number 0.74 rather than just truncating it, or rounding down to 0.73. When Stripe process the payment, they round up so in order to properly calculate the fee, the third decimal place (if there is one) must be rounded up if it is 5 or higher. 

     

    Here is how I have my calculation set up:

    Calculate Stripe processing fee based on total Image 1 Screenshot 30

     

    You will notice on my form, the Total Donation Amount calculates properly, and the Stripe fee is calculating, but it is rounding the final number from 0.735 down to 0.73

    Calculate Stripe processing fee based on total Image 2 Screenshot 41

     

    Hopefully this explanation will make more sense as to what I am looking for. Basically, I think I am looking for something similar to a roundup() function. Since I am working with currency, I need it to round up to the nearest 100th decimal place. 

    Thanks!

  • bobolinkcreative
    Replied on September 16, 2014 at 3:24 PM

    One other question.....

    As I am setting up my first form using the Stripe Test Mode, are these counting as part of my allotted 10/month submissions/payments?? I notice on my dashboard it now says my form has 7 submissions. If I go over the 10, what will happen? Will I automatically bump up to the paid level or will my form just not work?

  • David JotForm Support
    Replied on September 16, 2014 at 4:17 PM

    You would need to change the "Decimal Places In Numerical Results" to 3 in order to calculate to the next digit.  There is no way currently to change the way the rounding is done unfortunately.  Here is my test form with the digits changed to three:

    http://form.jotformpro.com/form/42586007848968?

    It does indeed show the third digit and round to that place.

    As far as the testing and your submission limits, we usually reset users limits when they are doing testing.  I went ahead and did so for your account.  If you do go over your limits, your form will be disabled.  You will receive a notification before hand and have a day or two to upgrade before it is disabled however.

  • bobolinkcreative
    Replied on September 16, 2014 at 5:31 PM

    Thank you very much. I will use three decimal places for now.
    The notification for the submission limits will be great as I am not sure
    how much the form will be used until we have a few months in and see how
    people respond.
    Thanks for all your help!

  • David JotForm Support
    Replied on September 16, 2014 at 5:37 PM

    You are very welcome!  Let us know if you have any further questions and we will be happy to help.

  • Kiran Support Team Lead
    Replied on May 6, 2016 at 12:55 PM

    It seems that your response is not posted here and displaying blank. Hence, I'm posting it here for reference:

    How we can calculate the Stripe.

    I am using this formula to calcualte Stripe Fee.

    Say amaount = $100

    (100 * 0.029) + 0.30 = 103.20

    But On stripe it is displaying 103.29 instead of 103.20.

    Dont know what's going on??

    I've tried this calculation and it seems to be working fine at my end. Could you share your JotForm so that we can take a look and provide you with necessary assistance?

    Thanks!