gravityplus / gravity-forms-stripe Goto Github PK
View Code? Open in Web Editor NEWUse Stripe to process payments with Gravity Forms
Use Stripe to process payments with Gravity Forms
It would be nice if you could make this function check if the form being modified is actually setup to process through stripe:
I just ran into an issue where I had to use paypal on a site that I normally use stripe and this caused it to save the full credit card number to my database
If Stripe can't process a payment for whatever reason (invalid credit card number, invalid CVC, etc.) it passes along an error so the user knows what to correct. The plugin is not displaying these errors—it only reports a generic error:
This form cannot process payments. Please contact site owner.
Just network activated the plugin, but getting these errors because $currencies_supported isn't set (no stripe key set, no currency set).
Warning: array_flip() expects parameter 1 to be array, null given in /nas/wp/www/staging/xxxxxx/wp-content/plugins/gravity-forms-stripe/includes/GFP/Stripe/class-gfp-stripe.php on line 643
Warning: array_intersect_key() [function.array-intersect-key]: Argument #2 is not an array in /nas/wp/www/staging/xxxxxx/wp-content/plugins/gravity-forms-stripe/includes/GFP/Stripe/class-gfp-stripe.php on line 643
I've run into a problem with the plugin and I think I've narrowed it down based on what Stripe support has told me.
I have the plugin working on a few web sites I'm running. It works perfectly.
But I have a site I just launched and it has a brand new Stripe account and the plugin will not work.
I actually tried switching API keys from the newer Stripe account to my older one and it works fine. So, that means it's got something to do with NEW Stripe accounts.
The reason it's not working is because (this is directly from Stripe support):
"It looks like you're passing the "currency" attribute when creating tokens using Stripe.js. We deprecated this attribute a while ago, but we only show that error for newer Stripe accounts. To fix this problem, you'll need to remove this attribute from your createToken call."
Has anyone else run into this same problem?
Hello Naomi,
I am trying to make set up for stripe payment .Right now i am working
in testing mode and i have set up all keys and create a webhook url on stripe account we have also mention redirect url in account on tsting mode but its not going to redirect on mention server or localhost after login into stripe can you please help us
from Carl Hancock-
when the Stripe Add-On is activated, even when no Stripe Feed has been created it is outputting code and some of the javascript it's outputting is manipulating the Credit Card field in such a way that it prevents it from working with other payment add-ons that are being used such as the PayPal Pro Add-On.
We discovered the issue because a user was having a problem using the PayPal Pro Add-On. PayPal was returning a validation error saying no credit card field number was passed to it. We discovered this was happening with the Stripe Add-On activated.
I just installed the testing branch code to test subscriptions.
I'm unable to add a credit card field.
I created a new form and then attempted to add the credit card field.
I get this javascript error after clicking the "Credit Card" button in the Pricing Fields:
Uncaught SyntaxError: Unexpected token <
It says the error is in the tw-sack.js file on line 1. I could trace the file to the Wordpress includes folder, but I'm not sure where to explore from there.
Let me know if you need more information or if I shouldn't be playing with the testing branch!
Hi there,
The coupon option does not show for the Products and Services Transaction type, only Subscriptions. Is this a current limitation or just an oversight? Seems like if the former, you should make it more clear in the plugin documentation.
Thanks,
Jonah
I have a multipage form, 3 pages:
Everything goes well, but when the third page is submitted, I get this error:
Fatal error: Call to a member function delete() on a non-object in /[path to directory]/carss/wp-content/plugins/gravityforms-stripe-more/more-stripe.php on line 713
Link to register form on our test site using test stripe account: http://carss.staging.wpengine.com/register/
Also, stripe log is showing 200 status.
Is it possible to use this addon with multiple currencies on one form? Thanks
Hi, I have a site where regular Gravity + Stripe payments work, but all the webhook events fail with a 403 error, so subscriptions fail to appear in Gravity Forms "Entries" after the first payment.
When I look at the webhook events in Stripe, I see that every event starts with a 200 Success for "Connected Platform", followed by one or more 403 Pending errors for the ?callback=gravityformsstripe
, depending on how many retries have occurred.
You can see a screenshot of a recent webhook success and pending/failure in Stripe here:
https://www.dropbox.com/s/zrs5s7efc5estai/gravity-stripe-webhook-200-success-then-403-pending-errors.png?dl=0
Eventually, the 403 Pending errors all become 403 Failed errors in Stripe.
Here's a segment of the HTML response that's returned to Stripe as part of the failed events:
<body id="error-page">
<p><strong>ERROR:</strong> Sorry, there was an error. Please be sure JavaScript and Cookies are enabled in your browser and try again.<br /><br />
</p></body>
I didn't realize this was happening at first, but after a while Stripe sent an email with a subject line that included this text:
"Stripe webhook delivery issues"
I'm able to recreate this problem consistently on a test site that I set up.
I'm running the latest version of WordPress -- version 5.1.1 at this time -- and the latest versions of Gravity Forms -- version 2.4.8 -- and Gravity Forms Stripe Add-On -- version 2.7.
Thank you for any help,
Joe
Hello,
I am running 0.2 Beta of Gravity Forms Stripe Add-on and 1.6.4.5.4 of Gravity Forms using a developer license.
My problem is this: upon filling out the form information and clicking 'submit' the "spinner" just spins and the form is never actually submitted.
I have setup my form and Stripe subscription product following all of the steps included in the readme.md instructions included with the Stripe Add-on plugin. I have also tested this with a different theme, and by deactivated and reactivated one by one each of my plug-ins. I am running this on a multisite install, but have seen in another issue that was resolved that multisite, while not supported, does work.
I've spent several hours now testing and tweaking and would appreciate any tips/tricks/suggestions to get this working.
Form is located here: http://aikenwebsolutions.com/monthly
Thanks in advance for your time,
Hi @naomicbush I am having an issue with the add-on where it works most of the time, but periodically it seems to lose the data after it is saved by Gravity but before it is received by Stripe. There is nothing in the error logs. I was wondering is this a known issue, or maybe you could point me in the right direction to debug it? Thanks for any help.
Hi,
I received this message from stripe:
It looks like we've had a bit of trouble delivering webhooks to your live webhook handler running at https://sakyonglineage.org/?callback=gravityformsstripe. Since 2015-10-01 19:14:17 +0000, at least 4 of the times we've attempted to deliver a webhook have failed, and none have succeeded. Looking at the most recent failure, we received an HTTP status code of 301 from your webhook URL. It looks like your webhook URL returned a redirect to http://sakyonglineage.org/?callback=gravityformsstripe. However, our webhook system only treats a webhook delivery as successful if we get back a status code between 200 and 299, so this redirect is considered a failure. You may just want to update your webhook URL to http://sakyonglineage.org/?callback=gravityformsstripe.
should I change the webhook to http://sakyonglineage.org/?callback=gravityformsstripe ?
Thank you for any help on this, that would be much appreciated,
Francoise
Hi Naomi,
I've installed the .2-beta plugin, but have run into a few issues.
When I submit the form and check out the entry in Stripe, I don't see any invoices attached to the submission. Is there a setting I'm missing in the options panel? Doesn't seem to be any different that v0.1.3.
Thanks,
Jacob
If you do not check the Enable AJAX checkbox when inserting a GravityForm into a page, the form will always generate an Invalid token id error.
Also, none of the fields are error checked. If you leave all credit card fields empty the plugin generates the same Invalid token id error, but does not return any error checking telling you to populate the empty fields.
if ( isset( $plugin ) ) {
$gfp_stripe_file = $plugin;
}
else if ( isset( $mu_plugin ) ) {
$gfp_stripe_file = $mu_plugin;
}
else if ( isset( $network_plugin ) ) {
$gfp_stripe_file = $network_plugin;
}
This line is causing me trouble because $network_plugin is set correctly to this plugin's location, but $plugin contains another previously loaded plugin.
Hi,
The development of this plugin is looking really great. I was wondering if it's possible for the plugin to create a customer in addition to logging the payment at https://manage.stripe.com/. This would be a very neat feature because it would include address and so forth. I know the plugin has settings for address, et cetera, but I don't see that data recorded anywhere.
Many thanks.
The credit cardholder's name should be required, but the Stripe plugin will process if it is empty.
I guess Stripe doesn't really check against name?
When submitting a Gravity Form with AJAX enabled, if a validation error is thrown (e.g. submit blank form) the page is throwing a JS error, Uncaught Reference Error: jQuery is not defined
. It appears there is a check in stripe.php
where $is_ajax
is being set to possibly check for this issue, though i'm not sure it's doing what it is suppose to; the stripeResponseHandler
script is being inserted twice into the page.
Do you experience this problem?
I keep getting this validation error when I attempt to submit a form that includes the Stripe credit card field:
You passed an empty string for 'card'. We assume empty values are an attempt to
unset a parameter; however 'card' cannot be unset. You should remove 'card' from
your request or supply a non-empty value
I've been using Stripe in test mode and 4242424242424242 as the card #.
I'm using the latest version of Gravity Forms (1.7.11) and this version of the Gravity Forms Stripe plugin...
Has anyone else experienced this issue?
Hi Naomi,
How did your plugin know to automatically provide a Euro symbol instead of a Dollar symbol? Also is it possible to allow users to select and then pay in their local currencies? I know stripe allow it and I believe they charge a 2% fee on top of market rates.
Thanks and great plugin by the way.
Hello,
I've installed the plugin and went to Stripe Account Information to add in the API keys and after I save the settings, I get a little red icon and message "Invalid API Key. Please try again". I went to stripe and rolled a new key and tried those and it still didn't work. I then went to another stripe account and tried those API keys with the same result.
Thank you for any assistance you can provide for this issue.
In Wp-Admin, under forms, the link to access Stripe Transaction Settings, it seems to be gone.
Wordpress 3.8, Gravity Forms 1.8, Gravity + 1.7.11.2
Not sure if Wordpress 3.8 or Gravity Forms 1.8 caused this, but my Stripe form that was set up prior to these upgrades is still functioning properly.
Screen shot attached.
It's important for security purposes to not show or list credit card details in wp-admin area, specifically in the Entries section. Is it possible to remove this section - and also not allow it to populate the database?
Thanks for your help!
Moving this to a new issue.
After pressing the submit button on IE8, the AJAX "wait" cursor spins indefinitely.
Hey! I'm having an issue when I have one recurring form and one single payment form on a single WP site. The subscription one seems to be working fine but I'm getting an Invalid token id: on the other...https://secure.rfahaiti.org/donate/donation/
Since I have been able to replicate it on 2 wp installs I'm just going to make a new db and have the single donation be on a separate site for now.
Common scenario:
I enter in my credit card name, number, and expiration but don't fill in the CVC. (maybe I'm not even sure what a CVC is, some banks call it a "security code")
If I don't enter a CVC, the plugin reports the correct error code ("invalid CVC") but clears out the name and credit card number. It would be great if those fields would persist like all of the other fields, since it's a hassle to enter in a 16 digit number.
When using either version 0.1.3 or 0.2 with Gravity Forms version 1.6.4.5.4, upon submission an Invalid Token error is returned from Stripe.
In my Stripe logs I see the following information
"400 ERR POST/v1/charges"
Request body:
{
"description": "[email protected]: (1)\tDonation\t\tx\t$5",
"currency": "usd",
"amount": "500",
"card": ""
}
Response body:
{
"error": {
"type": "invalid_request_error",
"message": "Invalid token id: "
}
}
Hi,
What is the proper webhook URL? I've searched through the code but can't seem to figure it out.
I can see the transaction id and payment status in the entries screens (main screen) but not when I view the individual entries.
Thank you!
Hello! Using the version you sent me via email a little while ago I'm getting a "Test webhook error: 301" in the stripe dashboard when I go to test the webhook. I assume this isn't a good thing yet the test payments still seem to be going through.
Hello Naomi,
First of all, thanks for the great plug-in. It's fantastic.
Can you send me the updated plugin so I can test out the Recurring Payment Functionality? I have already made a donation to your account.
Environment:
PHP: 5.5.9
Wordpress: 4.1
Gravity Forms: 1.8.20
Description:
The Stripe plugin fails to send amount and card data to Stripe. This occurs under the following tested conditions:
The only fields posted to Stripe concern the transaction method itself (in subscription mode, the only posted data is the 'plan').
Bug 1: Put this add-on on a form with Google Captcha and the form will not submit. Shows a message that the captcha was incorrect (using captcha field on Gravity Forms)
Bug 2: I removed the Captcha field and ensured the CC field is not mandatory (required field in Gravity Forms) the form will not submit when this CC field is not populated. Same form submits only when CC details are populated irrespective if the field is mandatory or not.
My clients may or may not want to use a CC (bank deposit payment is an option for instance) so a form should still work when this CC field is not a required field.
I tested this when the form is in 'ajax' mode and when this form is not in ajax mode and I got the same result (I am using Elementor and I put the short code with ajax="true" and without the ajax and got same result).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.