---
title: "Assume stripe installed"
method: POST
path: "/integrations/stripe/v2/assume-installed"
tags: ["integrationsapi"]
---

# Assume stripe installed

`POST /integrations/stripe/v2/assume-installed`

## Request body

- InstallIntegrationRequestBody
  - `company_matching_criteria` 'billing_meta_object' | 'manual_upsert'
  - `company_matching_field` string, nullable
  - `config` object
  - `is_sandbox` boolean, nullable
  - `live_mode` boolean, nullable
  - `type` 'clerk' | 'metronome' | 'orb' | 'stripe' | 'unknown' | 'workos', required

## Response `201`

Created

- object
  - `data` IntegrationInstallResponseData, required
    - `capabilities` IntegrationCapabilities, required
      - `author_plans` boolean, required
      - `checkout` boolean, required
      - `edit_billing` boolean, required
    - `config` IntegrationInstallConfig, required
      - `company_matching_criteria` 'billing_meta_object' | 'manual_upsert'
      - `company_matching_field` string, nullable
      - `config` union
        - object
          - `account_id` string, nullable — Connected Stripe account ID (acct_*)
          - `account_name` string, nullable — Display name of the connected Stripe account
          - `company_update_only` boolean — When importing Stripe customers, only update existing companies, do not create new companies
          - `is_sandbox` boolean, required — Whether the integration is connected to a Stripe sandbox account
          - `live_mode` boolean, required — Whether the integration is connected to a live Stripe account
          - `onboard_url` string, nullable — Onboarding URL returned during the v2 (Connect) install flow before activation
          - `return_to` string, nullable — App location that started the connect flow; the OAuth callback redirects back there on success
          - `type` 'stripe', required — Discriminator: always "stripe" for this variant
        - object
          - `external_customer_id_key` string, nullable — Schematic company key used to store Orb's external_customer_id; when unset, defaults to orb_external_customer_id
          - `type` 'orb', required — Discriminator: always "orb" for this variant
        - object
          - `first_events_received` boolean, nullable — Whether Schematic has received the first webhook event from Clerk after install
          - `type` 'clerk', required — Discriminator: always "clerk" for this variant
          - `webhook_url` string, nullable — URL configured on the Clerk webhook endpoint that delivers events to Schematic
        - object
          - `first_events_received` boolean, nullable — Whether Schematic has received the first webhook event from WorkOS after install
          - `type` 'workos', required — Discriminator: always "workos" for this variant
          - `webhook_url` string, nullable — URL configured on the WorkOS webhook endpoint that delivers events to Schematic
        - object
          - `external_customer_id_key` string, nullable — Schematic company key used to store the Metronome customer's ingest alias; when unset, imported customers carry only metronome_customer_id
          - `type` 'metronome', required — Discriminator: always "metronome" for this variant
      - `created_at` string, date-time, required
      - `id` string, required
      - `integration_id` string, required
      - `is_app_install` boolean, required
      - `is_connect_install` boolean, required
      - `live_mode` boolean, required
      - `updated_at` string, date-time, required
    - `integration` IntegrationResponseData, required
      - `created_at` string, date-time, required
      - `id` string, required
      - `state` 'active' | 'created' | 'pending', required
      - `type` 'clerk' | 'metronome' | 'orb' | 'stripe' | 'unknown' | 'workos', required
      - `updated_at` string, date-time, required
  - `params` object, required — Input parameters

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `500` — Server error

## Changes

- **2026-08-21** `6664c0faf891` — 1 info
  - added the optional property `data/config/config/oneOf[subschema #1: StripeIntegrationConfig]/return_to` to the response with the `201` status
- **2026-07-06** `e836d3bfd007` — 1 info
  - added the optional property `data/config/config/oneOf[subschema #5: MetronomeIntegrationConfig]/external_customer_id_key` to the response with the `201` status
- **2026-06-05** `d5456e7d9462` — 1 breaking, 1 warning, 2 info
  - added `#/components/schemas/MetronomeIntegrationConfig` to the `data/config/config` response property `oneOf` list for the response status `201`
  - added the new `metronome` enum value to the `data/integration/type` response property for the response status `201`
  - added the new `metronome` enum value to the request property `type`
  - added `metronome` discriminator mapping keys to the `data/config/config` response property for the response status `201`
- **2026-06-03** `6eca11d186a1` — 1 info
  - endpoint added
- **2026-06-03** `a544792fe615` — 1 breaking
  - api path removed without deprecation

[Full history](https://skmtc.dev/schematichq/apis/schematic-api/changes/integrations/stripe/v2/assume-installed/post.md)

---

[API](https://skmtc.dev/schematichq/apis/schematic-api.md) · [All operations](https://skmtc.dev/schematichq/apis/schematic-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/schematichq/schematic-api/revisions/0b238e148fa1/schema)
