Stripe Apps Platform
repository·main·Indexed 41 days ago
https://github.com/stripe/stripe-appsA platform for developers to build and embed custom user experiences and workflows directly into the Stripe Dashboard. Includes tools for orchestrating the Stripe API, a manifest JSON schema via @stripe/app-manifest-schema for configuration validation, and guidelines for publishing to the Stripe App Marketplace.
What's inside Stripe Apps
- Stripe Apps allow developers to embed custom user experiences directly within the Stripe Dashboard and orchestrate the Stripe API. This enables the creation of specialized tools and workflows that live alongside native Stripe functionality.
Understand the Stripe Apps manifest JSON schema
mainThe@stripe/app-manifest-schemapackage provides the JSON schema used to validate thestripe-app.jsonmanifest file required for Stripe Apps. This schema ensures that your app's configuration, permissions, and metadata conform to the expected structure. The schema is also available via the JSON Schema Store catalog for IDE integration and automated validation.Publishing to the Stripe App Marketplace
mainTo make your Stripe App discoverable to all users, you can publish it to the Stripe App Marketplace. Before publishing, you must ensure your app complies with the following requirements:
- Review Requirements: Ensure your app meets the official marketplace review requirements.
- Listing Guidelines: Follow the listing guidelines to ensure your app is presented correctly.
- Design Best Practices: Review Stripe's design best practices and study sample apps to ensure a high-quality user experience.
Setup the Pizzazz Loyalty Program example app
mainTo run the Pizzazz Loyalty Program example, which demonstrates building a full-page Stripe App with member management and rewards, follow these steps:
Prerequisites
- Node.js: version 18 or higher
- Stripe CLI: must have the
stripe appsplugin installed - pnpm: package manager
Installation and Local Development
- Install dependencies using pnpm:
pnpm install - Start the app locally:
This command executespnpm startstripe apps start, which launches the app in your Stripe Dashboard in development mode. - Build for production:
pnpm build
pnpm install pnpm start pnpm buildTroubleshooting local app preview issues
mainIf you encounter issues when running a local Stripe app in preview mode within the Stripe Dashboard, there is a known temporary workaround available at: https://github.com/stripe/stripe-apps/issues/1016Available scripts for the Pizzazz Loyalty Program example
mainThe following scripts are available in the Pizzazz Loyalty Program example project:
pnpm lint: Runs ESLint on all TypeScript source files.pnpm typecheck: Performs type-checking on the project without emitting files.pnpm test: Executes the test suite using Jest.
| Script | Description | | ---------------- | --------------------------------------------- | | `pnpm lint` | Run ESLint on all TypeScript source files | | `pnpm typecheck` | Type-check the project without emitting files | | `pnpm test` | Run the test suite with Jest |