Referencia App Manifest
Súbor manifestu stripe-app.json je centrálna konfigurácia vašej Stripe App. Deklaruje identitu vašej aplikácie, oprávnenia, UI pohľady, bezpečnostné politiky a správanie po inštalácii.
Úplný príklad manifestu
{ "id": "com.tajo.brevo-integration", "version": "1.2.0", "name": "Tajo for Brevo", "icon": "./assets/icon.png", "distribution_type": "public", "sandbox_install_compatible": true, "stripe_api_access_type": "oauth", "allowed_redirect_uris": [ "https://tajo.io/stripe/callback", "https://tajo.io/stripe/oauth/complete" ], "permissions": [ { "permission": "customer_read", "purpose": "Read customer profiles to sync with Brevo contacts" }, { "permission": "customer_write", "purpose": "Update customer metadata with Brevo sync status" }, { "permission": "charge_read", "purpose": "Access payment history for Brevo event tracking" }, { "permission": "product_read", "purpose": "Sync product catalog to Brevo for personalized campaigns" }, { "permission": "event_read", "purpose": "Subscribe to real-time events for Brevo automation triggers" }, { "permission": "invoice_read", "purpose": "Track invoice lifecycle events in Brevo" } ], "ui_extension": { "views": [ { "viewport": "stripe.dashboard.customer.detail", "component": "CustomerDetailView" }, { "viewport": "stripe.dashboard.customer.list", "component": "CustomerListView" }, { "viewport": "stripe.dashboard.home.overview", "component": "OverviewView" }, { "viewport": "stripe.dashboard.drawer.default", "component": "DrawerView" }, { "viewport": "stripe.dashboard.settings", "component": "SettingsView" }, { "viewport": "stripe.dashboard.onboarding", "component": "OnboardingView" } ], "content_security_policy": { "connect-src": [ "https://api.tajo.io", "https://api.brevo.com" ], "image-src": [ "https://cdn.tajo.io", "https://assets.brevo.com" ], "purpose": "Connect to Tajo API for data sync and Brevo API for contact management" } }, "post_install_action": { "type": "onboarding" }, "constants": { "API_BASE_URL": "https://api.tajo.io/v1", "SYNC_INTERVAL_SECONDS": "300" }}Referencia schémy
Polia najvyššej úrovne
| Pole | Typ | Povinné | Popis |
|---|---|---|---|
id | string | Áno | Jedinečný identifikátor aplikácie v notácii reverznej domény |
version | string | Áno | Reťazec sémantickej verzie (napr. "1.2.0") |
name | string | Áno | Zobrazovaný názov na marketplace (max 35 znakov) |
icon | string | Áno | Relatívna cesta k súboru ikony aplikácie (300x300 PNG alebo SVG) |
distribution_type | string | Áno | "public" pre marketplace alebo "private" pre interné použitie |
sandbox_install_compatible | boolean | Nie | Či aplikáciu možno nainštalovať v sandbox/testovacím režime |
stripe_api_access_type | string | Nie | Metóda prístupu k API: "oauth" alebo "api_key" |
allowed_redirect_uris | string[] | Nie | Povolené OAuth presmerúvacie URI pre inštalačný tok |
permissions | PermissionRequest[] | Áno | Pole žiadostí o oprávnenia |
ui_extension | UIExtensionManifest | Nie | Konfigurácia UI rozšírenia |
post_install_action | PostInstallAction | Nie | Akcia po inštalácii aplikácie |
constants | object | Nie | Páry kľúč-hodnota prístupné v aplikácii za behu |
distribution_type
| Hodnota | Popis |
|---|---|
"public" | Dostupné na Stripe App Marketplace pre všetkých používateľov |
"private" | Inštalovateľné len vaším vlastným účtom Stripe |
stripe_api_access_type
| Hodnota | Popis |
|---|---|
"oauth" | Používa tok OAuth 2.0 pre autentifikáciu (odporúčané pre verejné aplikácie) |
"api_key" | Používa obmedzené API kľúče (vhodné pre súkromné aplikácie) |
PostInstallAction
| Typ | Správanie |
|---|---|
"onboarding" | Otvorí onboardingový pohľad aplikácie v Dashboarde |
"settings" | Otvorí pohľad nastavení aplikácie v Dashboarde |
"external" | Presmeruje používateľa na externú URL (vyžaduje pole url) |
Constants
- Všetky hodnoty musia byť reťazce
- Konštanty sú vložené do aplikácie pri čase zostavenia
- Nikdy neukladajte tajné kľúče ani API kľúče ako konštanty, namiesto toho použite Secret Store API
import { constants } from '@stripe/ui-extension-sdk/constants';
const apiUrl = constants.API_BASE_URL;Validácia
# Validovať syntax a schému manifestustripe apps validate
# Skontrolovať bežné problémystripe apps check