Giter VIP home page Giter VIP logo

craft-stripecheckout's Introduction

Hi there 👋

craft-stripecheckout's People

Contributors

cole007 avatar jalendport avatar lukeyouell avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

craft-stripecheckout's Issues

Make receipts optional

I discovered that this plugin sends Stripe email receipts to customers (due to passing the receipt_email parameter). It would be nice if this could be made optional.

Stripe required changes for compliance with new EU SCA Regulations

Got this mail, indicating some required changes to keep this plugin working in the EU in the near future:

Hi there,

In September, the European Union will be introducing rules requiring Strong Customer Authentication (SCA) for many online transactions as part of PSD2 regulation.

Our information shows that your business will be impacted by SCA and that you’ll need to make changes to your Stripe integration to become compliant. Transactions that don’t meet the new SCA requirements may be declined by your customers’ banks.

Stripe has built a new Payments API—PaymentIntents—to get European customers ready for these rule changes. PaymentIntents is designed to recognize when the new SCA rules apply and to trigger any required authentication.

You can learn more in our guide on SCA and read the docs to get started integrating this new SCA-ready payments API.

Are there any plans in achieving this?

Custom popup template?

Just wondering if it's possible to customize the popup window that collects the credit card info, or potentially incorporate those fields into a larger checkout form.

Use Craft 3.1's environmental settings feature

It seems like all the config settings of this plugin would be good candidates for Craft 3.1's environmental settings feature: https://docs.craftcms.com/v3/extend/environmental-settings.html

That would make it possible to use environment variables for them directly within the CP. It's possible right now by overriding the saved settings with a config/stripe-checkout.php file, but that's causing issues with project config, where saving the settings form in the CP writes the secret key in project.yaml and in the database.

Dynamically update amount?

Do you know if there is a way to update (dynamically with js) amount to be charged?
I tried to update data-amount on script element but it doesn't seem to work. Any idea would be appreciated. And thanks for great plugin!

Wrong database table when click on "Stripe Checkout" in CraftCMS 3 Admin

When I click on Stripe Checkout in my Craft 3 admin, I get this error. It's looking for the wrong table name. I checked the database, and the transactions are in it, but the table name it should be looking for is 'uislthd_crafty.craft_stripecheckout_charges', and not 'uislthd_crafty.stripecheckout_charges'

Internal Server Error
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'uislthd_crafty.stripecheckout_charges' doesn't exist The SQL being executed was: SELECT * FROM stripecheckout_charges ORDER BY dateCreated DESC

Request missing required body param

Hello! I am testing Stripe Connect in a local dev environment with the following template code:

{% extends '_/layouts/purchase' %}

{% block content %}
<form action="" method="post">
  {{ csrfInput() }}
  {{ redirectInput('purchase/success') }}
  <input type="hidden" name="action" value="stripe-checkout/charge">

  {{ checkout({
      amount: 500
  }) }}
</form>
{% endblock content %}

This code will render the default Stripe "Pay With Card" button. When I click that button, I receive a 400 error:

yii\web\BadRequestHttpException: Request missing required body param in /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/craftcms/cms/src/web/Request.php:590
Stack trace:
#0 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/lukeyouell/craft-stripecheckout/src/controllers/ChargeController.php(37): craft\web\Request->getRequiredBodyParam('stripeToken')
#1 [internal function]: lukeyouell\stripecheckout\controllers\ChargeController->actionIndex()
#2 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
#3 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/yiisoft/yii2/base/Controller.php(157): yii\base\InlineAction->runWithParams(Array)
#4 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/craftcms/cms/src/web/Controller.php(104): yii\base\Controller->runAction('', Array)
#5 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/yiisoft/yii2/base/Module.php(528): craft\web\Controller->runAction('', Array)
#6 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/craftcms/cms/src/web/Application.php(282): yii\base\Module->runAction('stripe-checkout...', Array)
#7 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/craftcms/cms/src/web/Application.php(542): craft\web\Application->runAction('stripe-checkout...', Array)
#8 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/craftcms/cms/src/web/Application.php(266): craft\web\Application->_processActionRequest(Object(craft\web\Request))
#9 /home/vagrant/sites/clients/wine30nyc.craft3.com/vendor/yiisoft/yii2/base/Application.php(386): craft\web\Application->handleRequest(Object(craft\web\Request))
#10 /home/vagrant/sites/clients/wine30nyc.craft3.com/web/index.php(21): yii\base\Application->run()
#11 {main}

I have double-checked my Stripe API keys and have both the test and live keys correctly entered. Any thoughts? Thanks!

Use custom form

Hi,

How do I go about using a custom form with the following fields:

  • Email address
  • Card number
  • Expiry date
  • CVC
  • Zip code

Thanks

Live secret key gets overriden bij live publishable key

On the credentials page of the stripe plugin in craft 3, the live secret key field is always the same as the publishable key field. It doesn't matter what is filled in in the live sk field, it is always the same as the live pk field.
I reinstalled the plugin, filled out all the credential fields correctly but this didn't fix it according to what was visible on the credential page. Although the value is probably in the database because a transaction was correctly executed after this reinstallation.

PDF receipts

Hey!

Just wondering if there's anything on the roadmap for pdf receipts - much like how Commerce handles them? The Stripe receipts whilst good, are super basic, so it would be nice to be able to use a template for each charge so it could be sent to customer.

Using a custom stripe button

Hey there. Perfectly happy with the way the plugin works with Stripe Checkout but having this blue button is not an option on this project. Is there a relatively easy way to use the custom checkout JS to have a custom button ?

I cannot for the life of me figure out how to pass everything your plugin needs to it with the custom JS provided by Stripe

This is my first simple e-commerce project so forgive me if I am a bit of a noob.

Is there a way to cancel/prevent a charge before it happens (if value is wrong for example)?

Hey so I see that there are two (undocumented) events, EVENT_BEFORE_CHARGE and EVENT_AFTER_CHARGE. I was wondering if it was possible to cancel the charge / prevent it from happening inside a EVENT_BEFORE_CHARGE event handler? For example, I would like to calculate the price of what the user is buying server-side so it's tamper-proof but if it's wrong (i.e. the charge is of a different amount for some reason), it would be nice to be able to stop it. Not sure if that makes sense. :)

Charge page error

Getting the following error when trying to view a charge in the admin.

screenshot 2018-11-22 at 12 10 11

Running the latest version of charge.

Craft 4 Support

Hi,

I see this plugin hasn't received any updates in a couple of years. Can you please tell me if you plan to support Craft 4 and PHP8?

Using array_key_exists() on objects is deprecated

Hey, i thing the plugin needs an update, i was working with it and i got this error:

yii\base\ErrorException: array_key_exists(): Using array_key_exists() on objects is deprecated. Use isset() or property_exists() instead in /myroot/vendor/stripe/stripe-php/lib/ApiRequestor.php:402

array_key_exists() is deprecated in PHP 7.4 so the plugin breaks, i had to change array_key_exist() for isset(), but this function was especting a second parameter, the only way i made it work was deleting 'request-id' parameter.

Do you have an other solution? Thanks!

Must be of the type string, null returned

Hello!

Just noticed a response error on the rastrickbowlingclub.co.uk site...

{"error":"Return value of lukeyouell\stripecheckout\elements\Charge::getTableAttributeHtml() must be of the type string, null returned"}

Hope you're ok,

P

Unable to verify your data submission.

I got this error message after completing a test payment.
Guessing it's because I don't have HTTPS enabled on my staging server, but what else could it be?

Nice plugin btw :)

Stripe Connect

@lukeyouell would it be easy enough to include additional options in the \Stripe\Charge::create() request, we are looking to add support for Stripe's connected accounts and would just need to pass the account id and optional application fee:

$charge = \Stripe\Charge::create(array(
  "amount" => 1000,
  "currency" => "usd",
  "source" => "tok_visa",
  "application_fee" => 123,
), array("stripe_account" => "{CONNECTED_STRIPE_ACCOUNT_ID}"));

Was about to start work on a plugin to handle all this but it looks like you have most things covered here :)

Thanks

Name field is populated with email address

Hi,

My form includes a field for customer name and I have confirmed that it is being passed to the charge options array, yet it shows up with customer email once the charge is posted, on both Stripe and in the plugin's data in Craft.

Is this a bug or something done on purpose? Makes it very difficult to reconcile charges with actual users.

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.