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

Stripe Integration #568

Merged
merged 41 commits into from
Dec 12, 2023
Merged

Stripe Integration #568

merged 41 commits into from
Dec 12, 2023

Conversation

subiabre
Copy link
Member

@subiabre subiabre commented Oct 27, 2023

This PR adds the following behaviour:

  • New payment method: Stripe. Subscription support only. StripeSubscriptionPaymentMethod implements the integration. It calls the Omnipay gateway implemented for stripe subscriptions at Omnipay\Stripe\Subscription which handles the actual logic to create subscriptions at Stripe.
  • Projects marked as permanent campaign that have enabled Stripe as payment method can now allow to receive donations via Stripe subscriptions.
  • Rewards flagged as subscribable items to allow Project owners to specify monthly amounts.

Copy link
Member

@davidbeig davidbeig left a comment

Choose a reason for hiding this comment

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

After this changes we can try to publish it in beta and test it there.

Thanks for the effort!

db/migrations/20231010140732_goteo_subscriptions.php Outdated Show resolved Hide resolved
src/Goteo/Controller/StripeController.php Outdated Show resolved Hide resolved
src/Omnipay/Stripe/Message/SubscriptionRequest.php Outdated Show resolved Hide resolved
src/Goteo/Application/Config.php Outdated Show resolved Hide resolved
src/Routes/dashboard_routes.php Outdated Show resolved Hide resolved
@davidbeig davidbeig mentioned this pull request Nov 20, 2023
@davidbeig davidbeig changed the base branch from beta to live November 23, 2023 10:09

$session = $this->stripe->checkout->sessions->create([
'customer' => $this->getStripeCustomer($data['user'])->id,
'success_url' => $this->getRedirectUrl('/dashboard/subscriptions'),
Copy link
Member

Choose a reason for hiding this comment

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

When the invest is successfull, it should be redirected to the step 3 of the invest process, where the user can update their fiscal information and so on.

Copy link
Member

@davidbeig davidbeig left a comment

Choose a reason for hiding this comment

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

I think we only need to this fix and then we can publish it.

@subiabre subiabre requested a review from davidbeig December 12, 2023 09:06
* add calls for project and reward to get subscribable rewards for a given project

* add creator controller and first view

* add new copies for creator landing

* add posts for creator landing

* add strong to user name in creator landing

* add project section to creator layout

* fixes on creator css

* show all rewards in creator landing ordered by subscribable and amount

* change grid layout for creator subscriptions and change it to slider

* add links to share creator landing page

* move social share in creator to partial

* add channels to creator landing

* move creator partials to public

* add styles to slider arrows in creator subscriptions

* Add 'creator' role (#579)

* Only let admins allow stripe and subscribables

* Redirect user to stripe checkout to purchase subscription

* Add 'creator' role

* Cleaner code for createAdminSidebar function

* remove unnecessary partial

* fixes in redirects in creator controller

---------

Co-authored-by: Daniel Subiabre García <[email protected]>
@davidbeig davidbeig merged commit 32472e5 into live Dec 12, 2023
3 checks passed
@davidbeig davidbeig deleted the feature/stripe_integration branch December 12, 2023 12:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants