Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Stripe Stripe
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 88
    • Issues 88
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 5
    • Merge requests 5
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Extensions
  • StripeStripe
  • Issues
  • #315
Closed
Open
Issue created Apr 30, 2021 by justinfreeman (Agileware)@justinfreeman🌟Reporter

Stripe and CiviDiscount, Stripe payment is cancelled if the Discount Code is NOT first applied on the Event Registration form

Stripe and CiviDiscount, Stripe payment is cancelled if the Discount Code is NOT first applied on the Event Registration form.

Workaround is to click the Apply button for the Discount Code before proceeding to the next page.

Steps to reproduce:

  1. Set up a CiviCRM site with Stripe, Events and CiviDiscount
  2. Create a paid Event with Stripe for payment
  3. Create a Discount Code for Events in CiviDiscount
  4. In live mode, register a user for the event
  5. Enter the valid Discount Code, but do not click the Apply button (which applies the discount)
  6. Enter credit card details and click the Review Registration button
  7. Stripe payment intent will now be created for the full amount, without discount
  8. Confirmation page will be displayed with the discount applied.
  9. Click the Confirm button to complete the registration
  10. Stripe payment for the discounted amount will be attempted and fail as the discounted amount does not match the full amount
  11. User is returned to the Event registration page, without any error message

CiviCRM logs will show the following error.

Apr 30 13:58:04 [error] Credit Card Payment Error: This PaymentIntent's amount could not be updated because it has a status of requires_capture. You may only update the amount of a PaymentIntent with one of the following statuses: requires_payment_method, requires_confirmation, requires_action.

Stripe event logs will show that the payment intent amount is the non-discounted amount. And the capture amount is the discounted amount. In the screenshot below the full amount is $110 and the discounted amount $55.

Screenshot_20210430_144947

Agileware Ref: CIVISTRIPE-4

Edited May 09, 2021 by justinfreeman (Agileware)
Assignee
Assign to
Time tracking