Skip to content

integrations/ecommerce/stripe/dist

Interfaces

StripeCancelSubscriptionInput

Extends

Properties

expand?
optional expand?: string[];
Inherited from

StripeIdInput.expand

id
id: string;
Inherited from

StripeIdInput.id

options?
optional options?: StripeRequestOptions;
Inherited from

StripeIdInput.options

params?
optional params?: SubscriptionCancelParams;

StripeCreatePaymentIntentInput

Properties

options?
optional options?: StripeRequestOptions;
params
params: PaymentIntentCreateParams;

StripeCreateRefundInput

Properties

options?
optional options?: StripeRequestOptions;
params
params: RefundCreateParams;

StripeCredentialStatusInput

Properties

connectMode?
optional connectMode?: StripeConnectMode;
requiredScopes?
optional requiredScopes?: string[];
restrictedKeyScopes?
optional restrictedKeyScopes?: string[];
secretKeyConfigured?
optional secretKeyConfigured?: boolean;
stripeAccountConfigured?
optional stripeAccountConfigured?: boolean;
webhookSigningSecretConfigured?
optional webhookSigningSecretConfigured?: boolean;

StripeEcommerceClient

Properties

rawClient
rawClient: Stripe;

Methods

cancelSubscription()
cancelSubscription(input): Promise<Response<Subscription>>;
Parameters
Parameter Type
input StripeCancelSubscriptionInput
Returns

Promise\<Response\<Subscription>>

closeDispute()
closeDispute(input): Promise<Response<Dispute>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<Dispute>>

createPaymentIntent()
createPaymentIntent(input): Promise<Response<PaymentIntent>>;
Parameters
Parameter Type
input StripeCreatePaymentIntentInput
Returns

Promise\<Response\<PaymentIntent>>

createRefund()
createRefund(input): Promise<Response<Refund>>;
Parameters
Parameter Type
input StripeCreateRefundInput
Returns

Promise\<Response\<Refund>>

createWebhookEndpoint()
createWebhookEndpoint(input): Promise<Response<WebhookEndpoint>>;
Parameters
Parameter Type
input { options?: StripeRequestOptions; params: WebhookEndpointCreateParams; }
input.options? StripeRequestOptions
input.params WebhookEndpointCreateParams
Returns

Promise\<Response\<WebhookEndpoint>>

deleteWebhookEndpoint()
deleteWebhookEndpoint(input): Promise<Response<DeletedWebhookEndpoint>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<DeletedWebhookEndpoint>>

getAccount()
getAccount(options?): Promise<Account>;
Parameters
Parameter Type
options? StripeRequestOptions
Returns

Promise\<Account>

getCheckoutSession()
getCheckoutSession(input): Promise<Response<Session>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<Session>>

getCustomer()
getCustomer(input): Promise<Response<any>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<any>>

getDispute()
getDispute(input): Promise<Response<Dispute>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<Dispute>>

getInvoice()
getInvoice(input): Promise<Response<Invoice>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<Invoice>>

getPaymentIntent()
getPaymentIntent(input): Promise<Response<PaymentIntent>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<PaymentIntent>>

getRefund()
getRefund(input): Promise<Response<Refund>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<Refund>>

getSubscription()
getSubscription(input): Promise<Response<Subscription>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<Subscription>>

getWebhookEndpoint()
getWebhookEndpoint(input): Promise<Response<WebhookEndpoint>>;
Parameters
Parameter Type
input StripeIdInput
Returns

Promise\<Response\<WebhookEndpoint>>

listCheckoutSessions()
listCheckoutSessions(input?): Promise<ApiList<Session>>;
Parameters
Parameter Type
input? StripeListInput
Returns

Promise\<ApiList\<Session>>

listRefunds()
listRefunds(input?): Promise<ApiList<Refund>>;
Parameters
Parameter Type
input? StripeListInput
Returns

Promise\<ApiList\<Refund>>

listWebhookEndpoints()
listWebhookEndpoints(input?): Promise<ApiList<WebhookEndpoint>>;
Parameters
Parameter Type
input? StripeListInput
Returns

Promise\<ApiList\<WebhookEndpoint>>

parseWebhook()
parseWebhook(input): Promise<{
  event: Event;
  rawBody: string;
  signatureHeader: string;
}>;
Parameters
Parameter Type
input StripeWebhookParseInput
Returns

Promise\<{ event: Event; rawBody: string; signatureHeader: string; }>

searchCustomers()
searchCustomers(input): Promise<ApiSearchResult<Customer>>;
Parameters
Parameter Type
input StripeSearchCustomersInput
Returns

Promise\<ApiSearchResult\<Customer>>

updateDispute()
updateDispute(input): Promise<Response<Dispute>>;
Parameters
Parameter Type
input StripeIdInput & { params: DisputeUpdateParams; }
Returns

Promise\<Response\<Dispute>>

updateSubscription()
updateSubscription(input): Promise<Response<Subscription>>;
Parameters
Parameter Type
input StripeUpdateSubscriptionInput
Returns

Promise\<Response\<Subscription>>

updateWebhookEndpoint()
updateWebhookEndpoint(input): Promise<Response<WebhookEndpoint>>;
Parameters
Parameter Type
input StripeIdInput & { params: WebhookEndpointUpdateParams; }
Returns

Promise\<Response\<WebhookEndpoint>>


StripeEcommerceClientOptions

Properties

apiVersion?
optional apiVersion?: string;
maxNetworkRetries?
optional maxNetworkRetries?: number;
rawClient?
optional rawClient?: Stripe;
secretKey
secretKey: string;
stripeAccount?
optional stripeAccount?: string;
timeoutMs?
optional timeoutMs?: number;

StripeIdInput

Extended by

Properties

expand?
optional expand?: string[];
id
id: string;
options?
optional options?: StripeRequestOptions;

StripeListInput

Indexable

[key: string]: unknown

Properties

ending_before?
optional ending_before?: string;
expand?
optional expand?: string[];
limit?
optional limit?: number;
options?
optional options?: StripeRequestOptions;
starting_after?
optional starting_after?: string;

StripeRawClientInput

Properties

rawClientOnly?
optional rawClientOnly?: boolean;

StripeRequestOptions

Properties

idempotencyKey?
optional idempotencyKey?: string;
stripeAccount?
optional stripeAccount?: string;

StripeSearchCustomersInput

Properties

expand?
optional expand?: string[];
limit?
optional limit?: number;
options?
optional options?: StripeRequestOptions;
page?
optional page?: string;
query
query: string;

StripeUpdateSubscriptionInput

Extends

Properties

expand?
optional expand?: string[];
Inherited from

StripeIdInput.expand

id
id: string;
Inherited from

StripeIdInput.id

options?
optional options?: StripeRequestOptions;
Inherited from

StripeIdInput.options

params
params: SubscriptionUpdateParams;

StripeWebhookParseInput

Properties

request
request: string | Request | Buffer<ArrayBufferLike>;
requireSignature?
optional requireSignature?: boolean;
signatureHeader?
optional signatureHeader?: string;
signingSecret?
optional signingSecret?: string;
toleranceSeconds?
optional toleranceSeconds?: number;

Type Aliases

StripeConnectMode

type StripeConnectMode = "none" | "platform" | "connected-account" | "organization";

StripeWebhookEndpointManageInput

type StripeWebhookEndpointManageInput =
  | {
  action: "create";
  options?: StripeRequestOptions;
  params: Stripe.WebhookEndpointCreateParams;
}
  | {
  action: "get";
} & StripeIdInput
  | {
  action: "list";
} & StripeListInput
  | {
  action: "update";
  params: Stripe.WebhookEndpointUpdateParams;
} & StripeIdInput
  | {
  action: "delete";
} & StripeIdInput;

Functions

createStripeEcommerceClient()

function createStripeEcommerceClient(options): StripeEcommerceClient;

Parameters

Parameter Type
options StripeEcommerceClientOptions

Returns

StripeEcommerceClient


createStripeEcommerceIntegration()

function createStripeEcommerceIntegration(options): DefinedIntegration<{
  capabilities: [{
     audiences: ["customer-facing", "internal-support", "mixed"];
     capability: "receive";
     description: "Validates and parses Stripe webhook events for SDK-user-owned commerce and payment support workflows.";
     exposesSensitiveData: true;
     label: "Receive Stripe events";
     providerObjects: [{
        kind: "stripeEvent";
        label: "Stripe Event";
     }];
     requiresCredential: true;
   }, {
     audiences: ["internal-support", "mixed"];
     capability: "read-provider-object";
     description: "Reads customers, Checkout Sessions, PaymentIntents, subscriptions, invoices, refunds, and disputes.";
     exposesSensitiveData: true;
     label: "Read Stripe commerce records";
     providerObjects: [{
        kind: "stripeCustomer";
        label: "Stripe Customer";
      }, {
        kind: "stripeCheckoutSession";
        label: "Stripe Checkout Session";
      }, {
        kind: "stripePaymentIntent";
        label: "Stripe PaymentIntent";
      }, {
        kind: "stripeSubscription";
        label: "Stripe Subscription";
      }, {
        kind: "stripeInvoice";
        label: "Stripe Invoice";
      }, {
        kind: "stripeRefund";
        label: "Stripe Refund";
      }, {
        kind: "stripeDispute";
        label: "Stripe Dispute";
     }];
     requiresCredential: true;
   }, {
     audiences: ["internal-support", "mixed"];
     capability: "search-provider-object";
     description: "Lists and searches support-relevant Stripe objects with SDK-user-supplied filters.";
     exposesSensitiveData: true;
     label: "Search Stripe commerce records";
     providerObjects: [{
        kind: "stripeCustomer";
        label: "Stripe Customer";
      }, {
        kind: "stripeCheckoutSession";
        label: "Stripe Checkout Session";
      }, {
        kind: "stripePaymentIntent";
        label: "Stripe PaymentIntent";
     }];
     requiresCredential: true;
  }];
  category: "ecommerce";
  channelAudiences: ["customer-facing", "internal-support", "mixed"];
  coverage: {
     evidence: [{
        label: "Stripe API reference";
        url: "https://docs.stripe.com/api";
      }, {
        label: "Stripe Node SDK";
        url: "https://github.com/stripe/stripe-node";
      }, {
        label: "Stripe webhook signature verification";
        url: "https://docs.stripe.com/webhooks/signature";
     }];
     notes: ["Coverage is limited to Cognidesk-normalized Stripe commerce support operations backed by the official Stripe SDK.", "The official Stripe SDK remains available as an explicit raw-client escape hatch; raw SDK coverage is not Cognidesk adapter coverage.", "Generated Stripe full-provider API clones are intentionally not part of this package."];
     scope: "support-workflow-subset";
  };
  credentialRequirements: [{
     description: "Server-side Stripe secret or restricted key selected and owned by the SDK user.";
     id: "stripe-secret-key";
     label: "Stripe secret key";
     metadata: {
        scopeKind: "provider-permission-labels";
     };
     required: true;
     scopes: ["customers:read", "payment_intents:read", "checkout_sessions:read", "subscriptions:read", "invoices:read", "refunds:read", "disputes:read", "subscriptions:write", "webhook_endpoints:read", "webhook_endpoints:write"];
   }, {
     description: "Endpoint signing secret used to validate Stripe-Signature headers against the raw request body.";
     id: "stripe-webhook-signing-secret";
     label: "Stripe webhook signing secret";
     required: true;
   }, {
     description: "SDK-user-selected account context for platform or connected-account routing.";
     id: "stripe-connect-mode";
     label: "Stripe Connect mode";
     required: false;
  }];
  directions: ["receive-only", "send-only", "bidirectional"];
  id: "ecommerce.stripe";
  limitations: ["The SDK user chooses Stripe account mode, restricted-key permissions, event destinations, webhook subscriptions, checkout UI, refund policy, dispute evidence policy, consent, and retention.", "This package provides normalized support-operation foundations and raw-client access; it does not decide when to charge, refund, cancel, submit evidence, or expose payment data to an operator."];
  maintainers: [{
     name: "Cognidesk";
     type: "official";
  }];
  metadata: {
     defaultApiVersion: "2026-05-27.dahlia";
     docs: "https://docs.stripe.com/api";
     implementation: {
        generatedFullProviderApiClone: false;
        rawClientEscapeHatch: true;
        sdkPackage: "stripe";
        strategy: "official-sdk";
     };
     rawProviderRequest: {
        acknowledgementRequired: true;
        capability: "ecommerce.payments";
        coverage: "escape-hatch-not-full-provider-api";
     };
     sdkPackage: "stripe";
  };
  name: "Stripe";
  operations: [{
     alias: "ecommerce.event.receive";
     capability: "receive";
     exposesSensitiveData: true;
     providerObjects: [{
        kind: "stripeEvent";
     }];
   }, {
     alias: "ecommerce.order.read";
     capability: "read-provider-object";
     exposesSensitiveData: true;
     providerObjects: [{
        kind: "stripeCheckoutSession";
     }];
     providerOperation: "checkout.sessions.retrieve";
   }, {
     alias: "ecommerce.order.search";
     capability: "search-provider-object";
     exposesSensitiveData: true;
     providerObjects: [{
        kind: "stripeCheckoutSession";
     }];
     providerOperation: "checkout.sessions.list";
  }];
  packageName: "@cognidesk/integration-ecommerce-stripe";
  privacyNotes: ["Stripe records can include customer contact data, billing/shipping addresses, payment state, subscription terms, invoice history, refund reasons, dispute evidence, and account metadata.", "Secret keys, Connect account routing, and webhook signing secrets stay server-side; Studio receives only readiness state and policy-visible metadata."];
  provider: "stripe";
  trustLevel: "official";
}, unknown, never>;

Parameters

Parameter Type
options StripeEcommerceClientOptions

Returns

DefinedIntegration\<{ capabilities: [{ audiences: ["customer-facing", "internal-support", "mixed"]; capability: "receive"; description: "Validates and parses Stripe webhook events for SDK-user-owned commerce and payment support workflows."; exposesSensitiveData: true; label: "Receive Stripe events"; providerObjects: [{ kind: "stripeEvent"; label: "Stripe Event"; }]; requiresCredential: true; }, { audiences: ["internal-support", "mixed"]; capability: "read-provider-object"; description: "Reads customers, Checkout Sessions, PaymentIntents, subscriptions, invoices, refunds, and disputes."; exposesSensitiveData: true; label: "Read Stripe commerce records"; providerObjects: [{ kind: "stripeCustomer"; label: "Stripe Customer"; }, { kind: "stripeCheckoutSession"; label: "Stripe Checkout Session"; }, { kind: "stripePaymentIntent"; label: "Stripe PaymentIntent"; }, { kind: "stripeSubscription"; label: "Stripe Subscription"; }, { kind: "stripeInvoice"; label: "Stripe Invoice"; }, { kind: "stripeRefund"; label: "Stripe Refund"; }, { kind: "stripeDispute"; label: "Stripe Dispute"; }]; requiresCredential: true; }, { audiences: ["internal-support", "mixed"]; capability: "search-provider-object"; description: "Lists and searches support-relevant Stripe objects with SDK-user-supplied filters."; exposesSensitiveData: true; label: "Search Stripe commerce records"; providerObjects: [{ kind: "stripeCustomer"; label: "Stripe Customer"; }, { kind: "stripeCheckoutSession"; label: "Stripe Checkout Session"; }, { kind: "stripePaymentIntent"; label: "Stripe PaymentIntent"; }]; requiresCredential: true; }]; category: "ecommerce"; channelAudiences: ["customer-facing", "internal-support", "mixed"]; coverage: { evidence: [{ label: "Stripe API reference"; url: "https://docs.stripe.com/api"; }, { label: "Stripe Node SDK"; url: "https://github.com/stripe/stripe-node"; }, { label: "Stripe webhook signature verification"; url: "https://docs.stripe.com/webhooks/signature"; }]; notes: ["Coverage is limited to Cognidesk-normalized Stripe commerce support operations backed by the official Stripe SDK.", "The official Stripe SDK remains available as an explicit raw-client escape hatch; raw SDK coverage is not Cognidesk adapter coverage.", "Generated Stripe full-provider API clones are intentionally not part of this package."]; scope: "support-workflow-subset"; }; credentialRequirements: [{ description: "Server-side Stripe secret or restricted key selected and owned by the SDK user."; id: "stripe-secret-key"; label: "Stripe secret key"; metadata: { scopeKind: "provider-permission-labels"; }; required: true; scopes: ["customers:read", "payment_intents:read", "checkout_sessions:read", "subscriptions:read", "invoices:read", "refunds:read", "disputes:read", "subscriptions:write", "webhook_endpoints:read", "webhook_endpoints:write"]; }, { description: "Endpoint signing secret used to validate Stripe-Signature headers against the raw request body."; id: "stripe-webhook-signing-secret"; label: "Stripe webhook signing secret"; required: true; }, { description: "SDK-user-selected account context for platform or connected-account routing."; id: "stripe-connect-mode"; label: "Stripe Connect mode"; required: false; }]; directions: ["receive-only", "send-only", "bidirectional"]; id: "ecommerce.stripe"; limitations: ["The SDK user chooses Stripe account mode, restricted-key permissions, event destinations, webhook subscriptions, checkout UI, refund policy, dispute evidence policy, consent, and retention.", "This package provides normalized support-operation foundations and raw-client access; it does not decide when to charge, refund, cancel, submit evidence, or expose payment data to an operator."]; maintainers: [{ name: "Cognidesk"; type: "official"; }]; metadata: { defaultApiVersion: "2026-05-27.dahlia"; docs: "https://docs.stripe.com/api"; implementation: { generatedFullProviderApiClone: false; rawClientEscapeHatch: true; sdkPackage: "stripe"; strategy: "official-sdk"; }; rawProviderRequest: { acknowledgementRequired: true; capability: "ecommerce.payments"; coverage: "escape-hatch-not-full-provider-api"; }; sdkPackage: "stripe"; }; name: "Stripe"; operations: [{ alias: "ecommerce.event.receive"; capability: "receive"; exposesSensitiveData: true; providerObjects: [{ kind: "stripeEvent"; }]; }, { alias: "ecommerce.order.read"; capability: "read-provider-object"; exposesSensitiveData: true; providerObjects: [{ kind: "stripeCheckoutSession"; }]; providerOperation: "checkout.sessions.retrieve"; }, { alias: "ecommerce.order.search"; capability: "search-provider-object"; exposesSensitiveData: true; providerObjects: [{ kind: "stripeCheckoutSession"; }]; providerOperation: "checkout.sessions.list"; }]; packageName: "@cognidesk/integration-ecommerce-stripe"; privacyNotes: ["Stripe records can include customer contact data, billing/shipping addresses, payment state, subscription terms, invoice history, refund reasons, dispute evidence, and account metadata.", "Secret keys, Connect account routing, and webhook signing secrets stay server-side; Studio receives only readiness state and policy-visible metadata."]; provider: "stripe"; trustLevel: "official"; }, unknown, never>


createStripeEcommerceIntegrationFromClient()

function createStripeEcommerceIntegrationFromClient(client): DefinedIntegration<{
  capabilities: [{
     audiences: ["customer-facing", "internal-support", "mixed"];
     capability: "receive";
     description: "Validates and parses Stripe webhook events for SDK-user-owned commerce and payment support workflows.";
     exposesSensitiveData: true;
     label: "Receive Stripe events";
     providerObjects: [{
        kind: "stripeEvent";
        label: "Stripe Event";
     }];
     requiresCredential: true;
   }, {
     audiences: ["internal-support", "mixed"];
     capability: "read-provider-object";
     description: "Reads customers, Checkout Sessions, PaymentIntents, subscriptions, invoices, refunds, and disputes.";
     exposesSensitiveData: true;
     label: "Read Stripe commerce records";
     providerObjects: [{
        kind: "stripeCustomer";
        label: "Stripe Customer";
      }, {
        kind: "stripeCheckoutSession";
        label: "Stripe Checkout Session";
      }, {
        kind: "stripePaymentIntent";
        label: "Stripe PaymentIntent";
      }, {
        kind: "stripeSubscription";
        label: "Stripe Subscription";
      }, {
        kind: "stripeInvoice";
        label: "Stripe Invoice";
      }, {
        kind: "stripeRefund";
        label: "Stripe Refund";
      }, {
        kind: "stripeDispute";
        label: "Stripe Dispute";
     }];
     requiresCredential: true;
   }, {
     audiences: ["internal-support", "mixed"];
     capability: "search-provider-object";
     description: "Lists and searches support-relevant Stripe objects with SDK-user-supplied filters.";
     exposesSensitiveData: true;
     label: "Search Stripe commerce records";
     providerObjects: [{
        kind: "stripeCustomer";
        label: "Stripe Customer";
      }, {
        kind: "stripeCheckoutSession";
        label: "Stripe Checkout Session";
      }, {
        kind: "stripePaymentIntent";
        label: "Stripe PaymentIntent";
     }];
     requiresCredential: true;
  }];
  category: "ecommerce";
  channelAudiences: ["customer-facing", "internal-support", "mixed"];
  coverage: {
     evidence: [{
        label: "Stripe API reference";
        url: "https://docs.stripe.com/api";
      }, {
        label: "Stripe Node SDK";
        url: "https://github.com/stripe/stripe-node";
      }, {
        label: "Stripe webhook signature verification";
        url: "https://docs.stripe.com/webhooks/signature";
     }];
     notes: ["Coverage is limited to Cognidesk-normalized Stripe commerce support operations backed by the official Stripe SDK.", "The official Stripe SDK remains available as an explicit raw-client escape hatch; raw SDK coverage is not Cognidesk adapter coverage.", "Generated Stripe full-provider API clones are intentionally not part of this package."];
     scope: "support-workflow-subset";
  };
  credentialRequirements: [{
     description: "Server-side Stripe secret or restricted key selected and owned by the SDK user.";
     id: "stripe-secret-key";
     label: "Stripe secret key";
     metadata: {
        scopeKind: "provider-permission-labels";
     };
     required: true;
     scopes: ["customers:read", "payment_intents:read", "checkout_sessions:read", "subscriptions:read", "invoices:read", "refunds:read", "disputes:read", "subscriptions:write", "webhook_endpoints:read", "webhook_endpoints:write"];
   }, {
     description: "Endpoint signing secret used to validate Stripe-Signature headers against the raw request body.";
     id: "stripe-webhook-signing-secret";
     label: "Stripe webhook signing secret";
     required: true;
   }, {
     description: "SDK-user-selected account context for platform or connected-account routing.";
     id: "stripe-connect-mode";
     label: "Stripe Connect mode";
     required: false;
  }];
  directions: ["receive-only", "send-only", "bidirectional"];
  id: "ecommerce.stripe";
  limitations: ["The SDK user chooses Stripe account mode, restricted-key permissions, event destinations, webhook subscriptions, checkout UI, refund policy, dispute evidence policy, consent, and retention.", "This package provides normalized support-operation foundations and raw-client access; it does not decide when to charge, refund, cancel, submit evidence, or expose payment data to an operator."];
  maintainers: [{
     name: "Cognidesk";
     type: "official";
  }];
  metadata: {
     defaultApiVersion: "2026-05-27.dahlia";
     docs: "https://docs.stripe.com/api";
     implementation: {
        generatedFullProviderApiClone: false;
        rawClientEscapeHatch: true;
        sdkPackage: "stripe";
        strategy: "official-sdk";
     };
     rawProviderRequest: {
        acknowledgementRequired: true;
        capability: "ecommerce.payments";
        coverage: "escape-hatch-not-full-provider-api";
     };
     sdkPackage: "stripe";
  };
  name: "Stripe";
  operations: [{
     alias: "ecommerce.event.receive";
     capability: "receive";
     exposesSensitiveData: true;
     providerObjects: [{
        kind: "stripeEvent";
     }];
   }, {
     alias: "ecommerce.order.read";
     capability: "read-provider-object";
     exposesSensitiveData: true;
     providerObjects: [{
        kind: "stripeCheckoutSession";
     }];
     providerOperation: "checkout.sessions.retrieve";
   }, {
     alias: "ecommerce.order.search";
     capability: "search-provider-object";
     exposesSensitiveData: true;
     providerObjects: [{
        kind: "stripeCheckoutSession";
     }];
     providerOperation: "checkout.sessions.list";
  }];
  packageName: "@cognidesk/integration-ecommerce-stripe";
  privacyNotes: ["Stripe records can include customer contact data, billing/shipping addresses, payment state, subscription terms, invoice history, refund reasons, dispute evidence, and account metadata.", "Secret keys, Connect account routing, and webhook signing secrets stay server-side; Studio receives only readiness state and policy-visible metadata."];
  provider: "stripe";
  trustLevel: "official";
}, unknown, never>;

Parameters

Parameter Type
client StripeEcommerceClient

Returns

DefinedIntegration\<{ capabilities: [{ audiences: ["customer-facing", "internal-support", "mixed"]; capability: "receive"; description: "Validates and parses Stripe webhook events for SDK-user-owned commerce and payment support workflows."; exposesSensitiveData: true; label: "Receive Stripe events"; providerObjects: [{ kind: "stripeEvent"; label: "Stripe Event"; }]; requiresCredential: true; }, { audiences: ["internal-support", "mixed"]; capability: "read-provider-object"; description: "Reads customers, Checkout Sessions, PaymentIntents, subscriptions, invoices, refunds, and disputes."; exposesSensitiveData: true; label: "Read Stripe commerce records"; providerObjects: [{ kind: "stripeCustomer"; label: "Stripe Customer"; }, { kind: "stripeCheckoutSession"; label: "Stripe Checkout Session"; }, { kind: "stripePaymentIntent"; label: "Stripe PaymentIntent"; }, { kind: "stripeSubscription"; label: "Stripe Subscription"; }, { kind: "stripeInvoice"; label: "Stripe Invoice"; }, { kind: "stripeRefund"; label: "Stripe Refund"; }, { kind: "stripeDispute"; label: "Stripe Dispute"; }]; requiresCredential: true; }, { audiences: ["internal-support", "mixed"]; capability: "search-provider-object"; description: "Lists and searches support-relevant Stripe objects with SDK-user-supplied filters."; exposesSensitiveData: true; label: "Search Stripe commerce records"; providerObjects: [{ kind: "stripeCustomer"; label: "Stripe Customer"; }, { kind: "stripeCheckoutSession"; label: "Stripe Checkout Session"; }, { kind: "stripePaymentIntent"; label: "Stripe PaymentIntent"; }]; requiresCredential: true; }]; category: "ecommerce"; channelAudiences: ["customer-facing", "internal-support", "mixed"]; coverage: { evidence: [{ label: "Stripe API reference"; url: "https://docs.stripe.com/api"; }, { label: "Stripe Node SDK"; url: "https://github.com/stripe/stripe-node"; }, { label: "Stripe webhook signature verification"; url: "https://docs.stripe.com/webhooks/signature"; }]; notes: ["Coverage is limited to Cognidesk-normalized Stripe commerce support operations backed by the official Stripe SDK.", "The official Stripe SDK remains available as an explicit raw-client escape hatch; raw SDK coverage is not Cognidesk adapter coverage.", "Generated Stripe full-provider API clones are intentionally not part of this package."]; scope: "support-workflow-subset"; }; credentialRequirements: [{ description: "Server-side Stripe secret or restricted key selected and owned by the SDK user."; id: "stripe-secret-key"; label: "Stripe secret key"; metadata: { scopeKind: "provider-permission-labels"; }; required: true; scopes: ["customers:read", "payment_intents:read", "checkout_sessions:read", "subscriptions:read", "invoices:read", "refunds:read", "disputes:read", "subscriptions:write", "webhook_endpoints:read", "webhook_endpoints:write"]; }, { description: "Endpoint signing secret used to validate Stripe-Signature headers against the raw request body."; id: "stripe-webhook-signing-secret"; label: "Stripe webhook signing secret"; required: true; }, { description: "SDK-user-selected account context for platform or connected-account routing."; id: "stripe-connect-mode"; label: "Stripe Connect mode"; required: false; }]; directions: ["receive-only", "send-only", "bidirectional"]; id: "ecommerce.stripe"; limitations: ["The SDK user chooses Stripe account mode, restricted-key permissions, event destinations, webhook subscriptions, checkout UI, refund policy, dispute evidence policy, consent, and retention.", "This package provides normalized support-operation foundations and raw-client access; it does not decide when to charge, refund, cancel, submit evidence, or expose payment data to an operator."]; maintainers: [{ name: "Cognidesk"; type: "official"; }]; metadata: { defaultApiVersion: "2026-05-27.dahlia"; docs: "https://docs.stripe.com/api"; implementation: { generatedFullProviderApiClone: false; rawClientEscapeHatch: true; sdkPackage: "stripe"; strategy: "official-sdk"; }; rawProviderRequest: { acknowledgementRequired: true; capability: "ecommerce.payments"; coverage: "escape-hatch-not-full-provider-api"; }; sdkPackage: "stripe"; }; name: "Stripe"; operations: [{ alias: "ecommerce.event.receive"; capability: "receive"; exposesSensitiveData: true; providerObjects: [{ kind: "stripeEvent"; }]; }, { alias: "ecommerce.order.read"; capability: "read-provider-object"; exposesSensitiveData: true; providerObjects: [{ kind: "stripeCheckoutSession"; }]; providerOperation: "checkout.sessions.retrieve"; }, { alias: "ecommerce.order.search"; capability: "search-provider-object"; exposesSensitiveData: true; providerObjects: [{ kind: "stripeCheckoutSession"; }]; providerOperation: "checkout.sessions.list"; }]; packageName: "@cognidesk/integration-ecommerce-stripe"; privacyNotes: ["Stripe records can include customer contact data, billing/shipping addresses, payment state, subscription terms, invoice history, refund reasons, dispute evidence, and account metadata.", "Secret keys, Connect account routing, and webhook signing secrets stay server-side; Studio receives only readiness state and policy-visible metadata."]; provider: "stripe"; trustLevel: "official"; }, unknown, never>


createStripeEcommerceLiveChecks()

function createStripeEcommerceLiveChecks(options): {
  description: string;
  id: string;
  requiredCredentialIds: string[];
  run: Promise<{
     details: unknown;
  }>;
}[];

Parameters

Parameter Type
options { client: Pick\<StripeEcommerceClient, "getAccount">; }
options.client Pick\<StripeEcommerceClient, "getAccount">

Returns

{ description: string; id: string; requiredCredentialIds: string[]; run: Promise\<{ details: unknown; }>; }[]


parseStripeWebhook()

function parseStripeWebhook(rawClient, input): Promise<{
  event: Event;
  rawBody: string;
  signatureHeader: string;
}>;

Parameters

Parameter Type
rawClient Stripe
input StripeWebhookParseInput

Returns

Promise\<{ event: Event; rawBody: string; signatureHeader: string; }>


stripeEcommerceCredentialStatuses()

function stripeEcommerceCredentialStatuses(input): {
  expiresAt?: string;
  message?: string;
  providerPackageId?: string;
  requirementId: string;
  scopes?: string[];
  state:   | "required"
     | "configured"
     | "permission-blocked"
     | "not-required"
     | "missing"
     | "expired"
     | "insufficient-scope"
     | "unavailable";
}[];

Parameters

Parameter Type
input StripeCredentialStatusInput

Returns

{ expiresAt?: string; message?: string; providerPackageId?: string; requirementId: string; scopes?: string[]; state: | "required" | "configured" | "permission-blocked" | "not-required" | "missing" | "expired" | "insufficient-scope" | "unavailable"; }[]

References

defaultStripeApiVersion

Re-exports defaultStripeApiVersion


stripeEcommerceProviderManifest

Re-exports stripeEcommerceProviderManifest