cal.pub0.org/packages/app-store/stripepayment
Joe Au-Yeung 817e20f11e
Stripe add the ability to place hold on cards (#8022)
* Add payment option to schema

* Add payment option to Stripe zod

* Set payment option on event type

* Create manual payment intent in Stripe

* Set payment option from Stripe app

* Add payment option to DB

* Pass React.ReactNode to checkbox

* Create uncaptured payment intent

* WIP

* Capture card in setup intent

* Show charge card option

* Charge card from booking page

* Bug fixes

* Clean up

* Clean up app card

* Add no-show fee messaging on booking page

* Send payment email on payment & add price

* Fix messaging

* Create no show fee charged email

* Send charge fee collected email

* Disable submit on card failure

* Clean up

* Serverside prevent charging card again if already charged

* Only confirm booking if paid for

* Type fixes

* More type fixes

* More type fixes

* Type fix

* Type fixes

* UI changes

* Payment component rework

* Update apps/web/public/static/locales/en/common.json

Co-authored-by: Alex van Andel <me@alexvanandel.com>

* Update apps/web/public/static/locales/en/common.json

Co-authored-by: Alex van Andel <me@alexvanandel.com>

* Update apps/web/components/dialog/ChargeCardDialog.tsx

Co-authored-by: Alex van Andel <me@alexvanandel.com>

* Update packages/trpc/server/routers/viewer/payments.tsx

Co-authored-by: Alex van Andel <me@alexvanandel.com>

* Revert GTM config

* Adjust payment option dropdown

* Show alert when seats are set

* Small bug fixes

* Create collect card method

* clean up

* Prevent seats & charge no-show fee to be enabled together

* Do not charge no-show fee on unconfirmed bookings

* Add check to collect card method

* Webhook send request emails

* Fix some dark mode colours

* Change awaiting payment language

* Type fixes

* Set height of Select and TextField both to 38px to fix alignment

* Fix message seats & payment error message

* Type fix

---------

Co-authored-by: Alex van Andel <me@alexvanandel.com>
2023-04-11 23:44:14 +02:00
..
api Enforces explicit type imports (#7158) 2023-02-16 15:39:57 -07:00
components Stripe add the ability to place hold on cards (#8022) 2023-04-11 23:44:14 +02:00
lib Stripe add the ability to place hold on cards (#8022) 2023-04-11 23:44:14 +02:00
static #4252 Use vercel og to generate og images for meetings and apps. (#4943) 2022-10-18 11:46:22 -06:00
DESCRIPTION.md Enforces explicit type imports (#7158) 2023-02-16 15:39:57 -07:00
LICENSE App Store (#1869) 2022-03-23 15:00:30 -07:00
README.md App Store (#1869) 2022-03-23 15:00:30 -07:00
_metadata.ts Fix app categories (#6016) 2022-12-20 15:15:06 -07:00
index.ts feat/payment-service-6438-cal-767 (#6677) 2023-02-08 13:36:22 -07:00
package.json Upgrades prisma / Syncs packages (#6044) 2022-12-15 15:56:48 -07:00
zod.ts Stripe add the ability to place hold on cards (#8022) 2023-04-11 23:44:14 +02:00

README.md

Enterprise Edition

Welcome to the Enterprise Edition ("/ee") of Cal.com.

The /ee subfolder is the place for all the Pro features from our hosted plan and enterprise-grade features such as SSO, SAML, ADFS, OIDC, SCIM, SIEM, HRIS and much more.

WARNING: This package is copyrighted (unlike our main repo). You are not allowed to use this code to host your own version of app.cal.com without obtaining a proper license first

Setting up Stripe

  1. Create a stripe account or use an existing one. For testing, you should use all stripe dashboard functions with the Test-Mode toggle in the top right activated.
  2. Open Stripe ApiKeys save the token starting with pk_... to NEXT_PUBLIC_STRIPE_PUBLIC_KEY and sk_... to STRIPE_PRIVATE_KEY in the .env file.
  3. Open Stripe Connect Settings and activate OAuth for Standard Accounts
  4. Add <CALENDSO URL>/api/integrations/stripepayment/callback as redirect URL.
  5. Copy your client*id (ca*...) to STRIPE_CLIENT_ID in the .env file.
  6. Open Stripe Webhooks and add <CALENDSO URL>/api/integrations/stripepayment/webhook as webhook for connected applications.
  7. Select all payment_intent events for the webhook.
  8. Copy the webhook secret (whsec_...) to STRIPE_WEBHOOK_SECRET in the .env file.