Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: add subscription pause UI for eligible payments #7549

Merged

Conversation

JoshuaHungDinh
Copy link
Contributor

@JoshuaHungDinh JoshuaHungDinh commented Sep 23, 2024

Resolves: GIVE-1241

Description

This PR introduces enhancements to the DonorDashboard's Subscription tab, allowing donors the option to pause their subscriptions for up to 3 months.

This feature requires updates to both GiveWP and the Recurring Donations add-on to function properly.

When a recurring donation or subscription payment is processed through Stripe and the admin has enabled Stripe pause from within the Payment Gateway settings, eligible users will see this new option to pause their subscription.

Additionally, error handling with the subscription api's has been improved to handle internal server errors with a more user friendly message & an updated modal to display any errors.

Affects

  • DonorDashboard
  • Subscriptions

Visuals

Previous Logout Modal & Subscription Modals

Screenshot 2024-09-23 at 3 17 46 PM
Screenshot 2024-09-23 at 2 17 02 PM

New Logout Modal & Subscription Modals

Screenshot 2024-09-25 at 12 57 31 PM
CancelSubscriptionModal

Testing UI/UX

Screen.Recording.2024-09-25.at.1.23.50.PM.mov

Subscriptions Table New Status

Screenshot 2024-09-24 at 8 08 18 AM

Testing/Validating Subscription Updates Through Stripe

Screen.Recording.2024-09-23.at.3.44.37.PM.mov

Testing Instructions

  1. Ensure you are using the required versions of both Stripe and the Recurring Donations add-ons.
  2. Ensure you have a connected Stripe account.
  3. Navigate to Donations → Settings → Payment Gateways and select the Stripe section.
  4. Under the General Settings tab ensure you have the Stripe Pause setting checked.
  • Make a subscription payment with Stripe.
  • Go to the DonorDashboard and view the Subscription tab.
  • Pause the subscription & verify it has been paused on the Stripe Dashboard (https://dashboard.stripe.com) be sure to turn on "Test mode" to see the relevant information under shortcuts->subscriptions
  • Test the 3 available pause durations 1-3 months at a time.
  • Open the Subscription cancel & Logout modal and verify new styles on the modal buttons.
  • Remove your stripe account & test pause, resume and subscription cancel. Verify any error messages are displayed in a modal.

Pre-review Checklist

  • Acceptance criteria satisfied and marked in related issue
  • Relevant @unreleased tags included in DocBlocks
  • Includes unit tests
  • Reviewed by the designer (if follows a design)
  • Self Review of code and UX completed

@JoshuaHungDinh JoshuaHungDinh changed the title feature: add PAUSED to subscription statuses enum Feature: add subscription pause UI for eligible payments Sep 23, 2024
@JoshuaHungDinh JoshuaHungDinh marked this pull request as ready for review September 23, 2024 22:50
@jonwaldstein jonwaldstein changed the base branch from develop to epic/stripe-subscription-management September 24, 2024 20:11
Copy link
Contributor

@jonwaldstein jonwaldstein left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice job!

@jonwaldstein jonwaldstein merged commit 867a9b1 into epic/stripe-subscription-management Sep 25, 2024
20 checks passed
@jonwaldstein jonwaldstein deleted the feature/pause-subscription-ui branch September 25, 2024 20:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants