PaymentsStripe Integration
Payments

Stripe Integration

Stripe API Client for managing payments, customers, subscriptions, and more. Provides comprehensive access to Stripe's payment infrastructure including customers, products, prices, subscriptions, invo

Stripe

Category: Payments
Provider Key: Stripe
SDK Packages: stripe@^20.1.0

Stripe API Client for managing payments, customers, subscriptions, and more. Provides comprehensive access to Stripe's payment infrastructure including customers, products, prices, subscriptions, invoices, and payment intents.


Configuration

To use Stripe in your project, add it to your project integrations and provide the following configuration:

ParameterTypeRequiredDescription
apiKeystringYesStripe secret API key (starts with sk_test_ or sk_live_)
apiVersionstringNoOptional Stripe API version to use
timeoutnumberNoRequest timeout in milliseconds
maxNetworkRetriesnumberNoMaximum number of network retries
telemetrybooleanNoEnable/disable telemetry

Example Configuration

{
  "provider": "Stripe",
  "configuration": [
    { "name": "apiKey", "value": "your-apiKey" },
    { "name": "apiVersion", "value": "your-apiVersion" },
    { "name": "timeout", "value": 0 },
    { "name": "maxNetworkRetries", "value": 0 },
    { "name": "telemetry", "value": false }
  ]
}

Available Methods

Quick reference:

  • Customers: createCustomer, getCustomer, updateCustomer, deleteCustomer, listCustomers, searchCustomers
  • Products: createProduct, getProduct, updateProduct, deleteProduct, listProducts
  • Prices: createPrice, getPrice, updatePrice, listPrices
  • Payments: createPaymentIntent, getPaymentIntent, updatePaymentIntent, confirmPaymentIntent, capturePaymentIntent, cancelPaymentIntent, listPaymentIntents, createRefund, getRefund, listRefunds, getCharge, listCharges
  • Subscriptions: createSubscription, getSubscription, updateSubscription, cancelSubscription, listSubscriptions
  • Invoices: createInvoice, getInvoice, finalizeInvoice, payInvoice, voidInvoice, sendInvoice, listInvoices, createInvoiceItem, deleteInvoiceItem
  • Payment: attachPaymentMethod, detachPaymentMethod, getPaymentMethod, listPaymentMethods
  • Balance: getBalance, listBalanceTransactions
  • Coupons: createCoupon, getCoupon, deleteCoupon, listCoupons
  • Checkout: createCheckoutSession, getCheckoutSession, listCheckoutSessions
  • Webhooks: constructWebhookEvent

Customers

createCustomer

Create Customer

Creates a new customer in Stripe

Parameters:

ParameterTypeRequiredDescription
emailstringNoCustomer's email address
namestringNoCustomer's full name
descriptionstringNoDescription of the customer
phonestringNoCustomer's phone number
addressObjectNoCustomer's address
metadataObjectNoSet of key-value pairs for additional data
paymentMethodstringNoDefault payment method ID to attach

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createCustomerAction",
  "provider": "Stripe",
  "action": "createCustomer",
  "parameters": [
    { "parameterName": "email", "parameterValue": "'your-email'" },
    { "parameterName": "name", "parameterValue": "'your-name'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "phone", "parameterValue": "'your-phone'" },
    { "parameterName": "address", "parameterValue": "{}" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "paymentMethod", "parameterValue": "'your-paymentMethod'" }
  ],
  "contextPropertyName": "createCustomerResult"
}

MScript example:

await _Stripe.createCustomer({
  email: /* string */,
  name: /* string */,
  description: /* string */,
  phone: /* string */,
  address: /* Object */,
  metadata: /* Object */,
  paymentMethod: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createCustomer({
  email: /* string */,
  name: /* string */,
  description: /* string */,
  phone: /* string */,
  address: /* Object */,
  metadata: /* Object */,
  paymentMethod: /* string */,
});

getCustomer

Get Customer

Retrieves a customer by ID

Parameters:

ParameterTypeRequiredDescription
customerIdstringYesThe ID of the customer to retrieve

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getCustomerAction",
  "provider": "Stripe",
  "action": "getCustomer",
  "parameters": [
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" }
  ],
  "contextPropertyName": "getCustomerResult"
}

MScript example:

await _Stripe.getCustomer({
  customerId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getCustomer({
  customerId: /* string */,
});

updateCustomer

Update Customer

Updates an existing customer

Parameters:

ParameterTypeRequiredDescription
customerIdstringYesThe ID of the customer to update
emailstringNoUpdated email address
namestringNoUpdated name
descriptionstringNoUpdated description
phonestringNoUpdated phone number
addressObjectNoUpdated address
metadataObjectNoUpdated metadata

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "updateCustomerAction",
  "provider": "Stripe",
  "action": "updateCustomer",
  "parameters": [
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "email", "parameterValue": "'your-email'" },
    { "parameterName": "name", "parameterValue": "'your-name'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "phone", "parameterValue": "'your-phone'" },
    { "parameterName": "address", "parameterValue": "{}" },
    { "parameterName": "metadata", "parameterValue": "{}" }
  ],
  "contextPropertyName": "updateCustomerResult"
}

MScript example:

await _Stripe.updateCustomer({
  customerId: /* string */,
  email: /* string */,
  name: /* string */,
  description: /* string */,
  phone: /* string */,
  address: /* Object */,
  metadata: /* Object */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.updateCustomer({
  customerId: /* string */,
  email: /* string */,
  name: /* string */,
  description: /* string */,
  phone: /* string */,
  address: /* Object */,
  metadata: /* Object */,
});

deleteCustomer

Delete Customer

Deletes a customer

Parameters:

ParameterTypeRequiredDescription
customerIdstringYesThe ID of the customer to delete

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "deleteCustomerAction",
  "provider": "Stripe",
  "action": "deleteCustomer",
  "parameters": [
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" }
  ],
  "contextPropertyName": "deleteCustomerResult"
}

MScript example:

await _Stripe.deleteCustomer({
  customerId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.deleteCustomer({
  customerId: /* string */,
});

listCustomers

List Customers

Lists customers with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of customers to return (1-100)
startingAfterstringNoCursor for pagination (customer ID)
endingBeforestringNoCursor for pagination (customer ID)
emailstringNoFilter by email address
createdAfternumberNoFilter by creation date (Unix timestamp)
createdBeforenumberNoFilter by creation date (Unix timestamp)

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listCustomersAction",
  "provider": "Stripe",
  "action": "listCustomers",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" },
    { "parameterName": "endingBefore", "parameterValue": "'your-endingBefore'" },
    { "parameterName": "email", "parameterValue": "'your-email'" },
    { "parameterName": "createdAfter", "parameterValue": "0" },
    { "parameterName": "createdBefore", "parameterValue": "0" }
  ],
  "contextPropertyName": "listCustomersResult"
}

MScript example:

await _Stripe.listCustomers({
  limit: /* number */,
  startingAfter: /* string */,
  endingBefore: /* string */,
  email: /* string */,
  createdAfter: /* number */,
  createdBefore: /* number */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listCustomers({
  limit: /* number */,
  startingAfter: /* string */,
  endingBefore: /* string */,
  email: /* string */,
  createdAfter: /* number */,
  createdBefore: /* number */,
});

searchCustomers

Search Customers

Searches customers using Stripe's search API

Parameters:

ParameterTypeRequiredDescription
querystringYesSearch query string (e.g., "email:'test@example.com'")
limitnumberNoMaximum number of results

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "searchCustomersAction",
  "provider": "Stripe",
  "action": "searchCustomers",
  "parameters": [
    { "parameterName": "query", "parameterValue": "'your-query'" },
    { "parameterName": "limit", "parameterValue": "0" }
  ],
  "contextPropertyName": "searchCustomersResult"
}

MScript example:

await _Stripe.searchCustomers({
  query: /* string */,
  limit: /* number */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.searchCustomers({
  query: /* string */,
  limit: /* number */,
});

Products

createProduct

Create Product

Creates a new product

Parameters:

ParameterTypeRequiredDescription
namestringYesName of the product
descriptionstringNoDescription of the product
activebooleanNoWhether the product is active
imagesstring[]NoArray of image URLs
metadataObjectNoSet of key-value pairs
statementDescriptorstringNoStatement descriptor for card transactions
unitLabelstringNoLabel for the product's unit of measurement

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createProductAction",
  "provider": "Stripe",
  "action": "createProduct",
  "parameters": [
    { "parameterName": "name", "parameterValue": "'your-name'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "active", "parameterValue": "true" },
    { "parameterName": "images", "parameterValue": "[]" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "statementDescriptor", "parameterValue": "'your-statementDescriptor'" },
    { "parameterName": "unitLabel", "parameterValue": "'your-unitLabel'" }
  ],
  "contextPropertyName": "createProductResult"
}

MScript example:

await _Stripe.createProduct({
  name: /* string */,
  description: /* string */,
  active: /* boolean */,
  images: /* string[] */,
  metadata: /* Object */,
  statementDescriptor: /* string */,
  unitLabel: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createProduct({
  name: /* string */,
  description: /* string */,
  active: /* boolean */,
  images: /* string[] */,
  metadata: /* Object */,
  statementDescriptor: /* string */,
  unitLabel: /* string */,
});

getProduct

Get Product

Retrieves a product by ID

Parameters:

ParameterTypeRequiredDescription
productIdstringYesThe ID of the product to retrieve

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getProductAction",
  "provider": "Stripe",
  "action": "getProduct",
  "parameters": [
    { "parameterName": "productId", "parameterValue": "'your-productId'" }
  ],
  "contextPropertyName": "getProductResult"
}

MScript example:

await _Stripe.getProduct({
  productId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getProduct({
  productId: /* string */,
});

updateProduct

Update Product

Updates an existing product

Parameters:

ParameterTypeRequiredDescription
productIdstringYesThe ID of the product to update
namestringNoUpdated name
descriptionstringNoUpdated description
activebooleanNoUpdated active status
imagesstring[]NoUpdated image URLs
metadataObjectNoUpdated metadata

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "updateProductAction",
  "provider": "Stripe",
  "action": "updateProduct",
  "parameters": [
    { "parameterName": "productId", "parameterValue": "'your-productId'" },
    { "parameterName": "name", "parameterValue": "'your-name'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "active", "parameterValue": "true" },
    { "parameterName": "images", "parameterValue": "[]" },
    { "parameterName": "metadata", "parameterValue": "{}" }
  ],
  "contextPropertyName": "updateProductResult"
}

MScript example:

await _Stripe.updateProduct({
  productId: /* string */,
  name: /* string */,
  description: /* string */,
  active: /* boolean */,
  images: /* string[] */,
  metadata: /* Object */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.updateProduct({
  productId: /* string */,
  name: /* string */,
  description: /* string */,
  active: /* boolean */,
  images: /* string[] */,
  metadata: /* Object */,
});

deleteProduct

Delete Product

Deletes a product

Parameters:

ParameterTypeRequiredDescription
productIdstringYesThe ID of the product to delete

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "deleteProductAction",
  "provider": "Stripe",
  "action": "deleteProduct",
  "parameters": [
    { "parameterName": "productId", "parameterValue": "'your-productId'" }
  ],
  "contextPropertyName": "deleteProductResult"
}

MScript example:

await _Stripe.deleteProduct({
  productId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.deleteProduct({
  productId: /* string */,
});

listProducts

List Products

Lists products with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of products to return
activebooleanNoFilter by active status
startingAfterstringNoCursor for pagination
endingBeforestringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listProductsAction",
  "provider": "Stripe",
  "action": "listProducts",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "active", "parameterValue": "true" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" },
    { "parameterName": "endingBefore", "parameterValue": "'your-endingBefore'" }
  ],
  "contextPropertyName": "listProductsResult"
}

MScript example:

await _Stripe.listProducts({
  limit: /* number */,
  active: /* boolean */,
  startingAfter: /* string */,
  endingBefore: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listProducts({
  limit: /* number */,
  active: /* boolean */,
  startingAfter: /* string */,
  endingBefore: /* string */,
});

Prices

createPrice

Create Price

Creates a new price for a product

Parameters:

ParameterTypeRequiredDescription
productIdstringYesID of the product this price belongs to
currencystringYesThree-letter ISO currency code
unitAmountnumberNoPrice in cents (required for one-time prices)
billingSchemestringNoBilling scheme (per_unit or tiered)
recurringObjectNoRecurring price configuration
recurringstringNoBilling interval
recurringnumberNoNumber of intervals between billings
activebooleanNoWhether the price is active
metadataObjectNoSet of key-value pairs
nicknamestringNoBrief description of the price

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createPriceAction",
  "provider": "Stripe",
  "action": "createPrice",
  "parameters": [
    { "parameterName": "productId", "parameterValue": "'your-productId'" },
    { "parameterName": "currency", "parameterValue": "'your-currency'" },
    { "parameterName": "unitAmount", "parameterValue": "0" },
    { "parameterName": "billingScheme", "parameterValue": "'your-billingScheme'" },
    { "parameterName": "recurring", "parameterValue": "{}" },
    { "parameterName": "recurring", "parameterValue": "'your-recurring'" },
    { "parameterName": "recurring", "parameterValue": "0" },
    { "parameterName": "active", "parameterValue": "true" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "nickname", "parameterValue": "'your-nickname'" }
  ],
  "contextPropertyName": "createPriceResult"
}

MScript example:

await _Stripe.createPrice({
  productId: /* string */,
  currency: /* string */,
  unitAmount: /* number */,
  billingScheme: /* string */,
  recurring: /* Object */,
  recurring: /* string */,
  recurring: /* number */,
  active: /* boolean */,
  metadata: /* Object */,
  nickname: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createPrice({
  productId: /* string */,
  currency: /* string */,
  unitAmount: /* number */,
  billingScheme: /* string */,
  recurring: /* Object */,
  recurring: /* string */,
  recurring: /* number */,
  active: /* boolean */,
  metadata: /* Object */,
  nickname: /* string */,
});

getPrice

Get Price

Retrieves a price by ID

Parameters:

ParameterTypeRequiredDescription
priceIdstringYesThe ID of the price to retrieve

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getPriceAction",
  "provider": "Stripe",
  "action": "getPrice",
  "parameters": [
    { "parameterName": "priceId", "parameterValue": "'your-priceId'" }
  ],
  "contextPropertyName": "getPriceResult"
}

MScript example:

await _Stripe.getPrice({
  priceId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getPrice({
  priceId: /* string */,
});

updatePrice

Update Price

Updates an existing price

Parameters:

ParameterTypeRequiredDescription
priceIdstringYesThe ID of the price to update
activebooleanNoUpdated active status
metadataObjectNoUpdated metadata
nicknamestringNoUpdated nickname

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "updatePriceAction",
  "provider": "Stripe",
  "action": "updatePrice",
  "parameters": [
    { "parameterName": "priceId", "parameterValue": "'your-priceId'" },
    { "parameterName": "active", "parameterValue": "true" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "nickname", "parameterValue": "'your-nickname'" }
  ],
  "contextPropertyName": "updatePriceResult"
}

MScript example:

await _Stripe.updatePrice({
  priceId: /* string */,
  active: /* boolean */,
  metadata: /* Object */,
  nickname: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.updatePrice({
  priceId: /* string */,
  active: /* boolean */,
  metadata: /* Object */,
  nickname: /* string */,
});

listPrices

List Prices

Lists prices with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of prices to return
activebooleanNoFilter by active status
productIdstringNoFilter by product ID
typestringNoFilter by type
currencystringNoFilter by currency
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listPricesAction",
  "provider": "Stripe",
  "action": "listPrices",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "active", "parameterValue": "true" },
    { "parameterName": "productId", "parameterValue": "'your-productId'" },
    { "parameterName": "type", "parameterValue": "'your-type'" },
    { "parameterName": "currency", "parameterValue": "'your-currency'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listPricesResult"
}

MScript example:

await _Stripe.listPrices({
  limit: /* number */,
  active: /* boolean */,
  productId: /* string */,
  type: /* string */,
  currency: /* string */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listPrices({
  limit: /* number */,
  active: /* boolean */,
  productId: /* string */,
  type: /* string */,
  currency: /* string */,
  startingAfter: /* string */,
});

Payments

createPaymentIntent

Create Payment Intent

Creates a new payment intent

Parameters:

ParameterTypeRequiredDescription
amountnumberYesAmount in cents to charge
currencystringYesThree-letter ISO currency code
customerIdstringNoID of the customer
descriptionstringNoDescription of the payment
paymentMethodTypesstring[]NoAllowed payment method types
metadataObjectNoSet of key-value pairs
automaticPaymentMethodsbooleanNoEnable automatic payment methods
receiptEmailstringNoEmail to send receipt to
statementDescriptorstringNoStatement descriptor
captureMethodbooleanNo'automatic' or 'manual'

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createPaymentIntentAction",
  "provider": "Stripe",
  "action": "createPaymentIntent",
  "parameters": [
    { "parameterName": "amount", "parameterValue": "0" },
    { "parameterName": "currency", "parameterValue": "'your-currency'" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "paymentMethodTypes", "parameterValue": "[]" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "automaticPaymentMethods", "parameterValue": "true" },
    { "parameterName": "receiptEmail", "parameterValue": "'your-receiptEmail'" },
    { "parameterName": "statementDescriptor", "parameterValue": "'your-statementDescriptor'" },
    { "parameterName": "captureMethod", "parameterValue": "true" }
  ],
  "contextPropertyName": "createPaymentIntentResult"
}

MScript example:

await _Stripe.createPaymentIntent({
  amount: /* number */,
  currency: /* string */,
  customerId: /* string */,
  description: /* string */,
  paymentMethodTypes: /* string[] */,
  metadata: /* Object */,
  automaticPaymentMethods: /* boolean */,
  receiptEmail: /* string */,
  statementDescriptor: /* string */,
  captureMethod: /* boolean */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createPaymentIntent({
  amount: /* number */,
  currency: /* string */,
  customerId: /* string */,
  description: /* string */,
  paymentMethodTypes: /* string[] */,
  metadata: /* Object */,
  automaticPaymentMethods: /* boolean */,
  receiptEmail: /* string */,
  statementDescriptor: /* string */,
  captureMethod: /* boolean */,
});

getPaymentIntent

Get Payment Intent

Retrieves a payment intent by ID

Parameters:

ParameterTypeRequiredDescription
paymentIntentIdstringYesThe ID of the payment intent

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getPaymentIntentAction",
  "provider": "Stripe",
  "action": "getPaymentIntent",
  "parameters": [
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" }
  ],
  "contextPropertyName": "getPaymentIntentResult"
}

MScript example:

await _Stripe.getPaymentIntent({
  paymentIntentId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getPaymentIntent({
  paymentIntentId: /* string */,
});

updatePaymentIntent

Update Payment Intent

Updates a payment intent

Parameters:

ParameterTypeRequiredDescription
paymentIntentIdstringYesThe ID of the payment intent
amountnumberNoUpdated amount in cents
currencystringNoUpdated currency
descriptionstringNoUpdated description
metadataObjectNoUpdated metadata

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "updatePaymentIntentAction",
  "provider": "Stripe",
  "action": "updatePaymentIntent",
  "parameters": [
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "amount", "parameterValue": "0" },
    { "parameterName": "currency", "parameterValue": "'your-currency'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "metadata", "parameterValue": "{}" }
  ],
  "contextPropertyName": "updatePaymentIntentResult"
}

MScript example:

await _Stripe.updatePaymentIntent({
  paymentIntentId: /* string */,
  amount: /* number */,
  currency: /* string */,
  description: /* string */,
  metadata: /* Object */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.updatePaymentIntent({
  paymentIntentId: /* string */,
  amount: /* number */,
  currency: /* string */,
  description: /* string */,
  metadata: /* Object */,
});

confirmPaymentIntent

Confirm Payment Intent

Confirms a payment intent

Parameters:

ParameterTypeRequiredDescription
paymentIntentIdstringYesThe ID of the payment intent
paymentMethodstringNoPayment method ID to use
returnUrlstringNoURL to redirect after payment

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "confirmPaymentIntentAction",
  "provider": "Stripe",
  "action": "confirmPaymentIntent",
  "parameters": [
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "paymentMethod", "parameterValue": "'your-paymentMethod'" },
    { "parameterName": "returnUrl", "parameterValue": "'your-returnUrl'" }
  ],
  "contextPropertyName": "confirmPaymentIntentResult"
}

MScript example:

await _Stripe.confirmPaymentIntent({
  paymentIntentId: /* string */,
  paymentMethod: /* string */,
  returnUrl: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.confirmPaymentIntent({
  paymentIntentId: /* string */,
  paymentMethod: /* string */,
  returnUrl: /* string */,
});

capturePaymentIntent

Capture Payment Intent

Captures a payment intent

Parameters:

ParameterTypeRequiredDescription
paymentIntentIdstringYesThe ID of the payment intent
amountToCapturenumberNoAmount to capture (for partial captures)

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "capturePaymentIntentAction",
  "provider": "Stripe",
  "action": "capturePaymentIntent",
  "parameters": [
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "amountToCapture", "parameterValue": "0" }
  ],
  "contextPropertyName": "capturePaymentIntentResult"
}

MScript example:

await _Stripe.capturePaymentIntent({
  paymentIntentId: /* string */,
  amountToCapture: /* number */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.capturePaymentIntent({
  paymentIntentId: /* string */,
  amountToCapture: /* number */,
});

cancelPaymentIntent

Cancel Payment Intent

Cancels a payment intent

Parameters:

ParameterTypeRequiredDescription
paymentIntentIdstringYesThe ID of the payment intent
cancellationReasonstringNoReason for cancellation

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "cancelPaymentIntentAction",
  "provider": "Stripe",
  "action": "cancelPaymentIntent",
  "parameters": [
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "cancellationReason", "parameterValue": "'your-cancellationReason'" }
  ],
  "contextPropertyName": "cancelPaymentIntentResult"
}

MScript example:

await _Stripe.cancelPaymentIntent({
  paymentIntentId: /* string */,
  cancellationReason: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.cancelPaymentIntent({
  paymentIntentId: /* string */,
  cancellationReason: /* string */,
});

listPaymentIntents

List Payment Intents

Lists payment intents with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of payment intents
customerIdstringNoFilter by customer ID
startingAfterstringNoCursor for pagination
createdAfternumberNoFilter by creation date (Unix timestamp)
createdBeforenumberNoFilter by creation date (Unix timestamp)

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listPaymentIntentsAction",
  "provider": "Stripe",
  "action": "listPaymentIntents",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" },
    { "parameterName": "createdAfter", "parameterValue": "0" },
    { "parameterName": "createdBefore", "parameterValue": "0" }
  ],
  "contextPropertyName": "listPaymentIntentsResult"
}

MScript example:

await _Stripe.listPaymentIntents({
  limit: /* number */,
  customerId: /* string */,
  startingAfter: /* string */,
  createdAfter: /* number */,
  createdBefore: /* number */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listPaymentIntents({
  limit: /* number */,
  customerId: /* string */,
  startingAfter: /* string */,
  createdAfter: /* number */,
  createdBefore: /* number */,
});

createRefund

Create Refund

Creates a refund

Parameters:

ParameterTypeRequiredDescription
paymentIntentIdstringNoPayment intent ID to refund
chargeIdstringNoCharge ID to refund
amountnumberNoAmount to refund in cents (partial refund)
reasonstringNoReason for the refund
metadataObjectNoSet of key-value pairs

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createRefundAction",
  "provider": "Stripe",
  "action": "createRefund",
  "parameters": [
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "chargeId", "parameterValue": "'your-chargeId'" },
    { "parameterName": "amount", "parameterValue": "0" },
    { "parameterName": "reason", "parameterValue": "'your-reason'" },
    { "parameterName": "metadata", "parameterValue": "{}" }
  ],
  "contextPropertyName": "createRefundResult"
}

MScript example:

await _Stripe.createRefund({
  paymentIntentId: /* string */,
  chargeId: /* string */,
  amount: /* number */,
  reason: /* string */,
  metadata: /* Object */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createRefund({
  paymentIntentId: /* string */,
  chargeId: /* string */,
  amount: /* number */,
  reason: /* string */,
  metadata: /* Object */,
});

getRefund

Get Refund

Retrieves a refund by ID

Parameters:

ParameterTypeRequiredDescription
refundIdstringYesThe ID of the refund

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getRefundAction",
  "provider": "Stripe",
  "action": "getRefund",
  "parameters": [
    { "parameterName": "refundId", "parameterValue": "'your-refundId'" }
  ],
  "contextPropertyName": "getRefundResult"
}

MScript example:

await _Stripe.getRefund({
  refundId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getRefund({
  refundId: /* string */,
});

listRefunds

List Refunds

Lists refunds with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of refunds
paymentIntentIdstringNoFilter by payment intent ID
chargeIdstringNoFilter by charge ID
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listRefundsAction",
  "provider": "Stripe",
  "action": "listRefunds",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "chargeId", "parameterValue": "'your-chargeId'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listRefundsResult"
}

MScript example:

await _Stripe.listRefunds({
  limit: /* number */,
  paymentIntentId: /* string */,
  chargeId: /* string */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listRefunds({
  limit: /* number */,
  paymentIntentId: /* string */,
  chargeId: /* string */,
  startingAfter: /* string */,
});

getCharge

Get Charge

Retrieves a charge by ID

Parameters:

ParameterTypeRequiredDescription
chargeIdstringYesThe ID of the charge

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getChargeAction",
  "provider": "Stripe",
  "action": "getCharge",
  "parameters": [
    { "parameterName": "chargeId", "parameterValue": "'your-chargeId'" }
  ],
  "contextPropertyName": "getChargeResult"
}

MScript example:

await _Stripe.getCharge({
  chargeId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getCharge({
  chargeId: /* string */,
});

listCharges

List Charges

Lists charges with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of charges
customerIdstringNoFilter by customer ID
paymentIntentIdstringNoFilter by payment intent ID
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listChargesAction",
  "provider": "Stripe",
  "action": "listCharges",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listChargesResult"
}

MScript example:

await _Stripe.listCharges({
  limit: /* number */,
  customerId: /* string */,
  paymentIntentId: /* string */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listCharges({
  limit: /* number */,
  customerId: /* string */,
  paymentIntentId: /* string */,
  startingAfter: /* string */,
});

Subscriptions

createSubscription

Create Subscription

Creates a new subscription

Parameters:

ParameterTypeRequiredDescription
customerIdstringYesID of the customer
itemsArray<Object>YesArray of subscription items
itemsstringYesPrice ID for the item
itemsnumberNoQuantity for the item
collectionMethodstringNoCollection method
trialPeriodDaysnumberNoNumber of trial days
metadataObjectNoSet of key-value pairs
cancelAtPeriodEndbooleanNoCancel at period end
defaultPaymentMethodstringNoDefault payment method ID

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createSubscriptionAction",
  "provider": "Stripe",
  "action": "createSubscription",
  "parameters": [
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "items", "parameterValue": "'your-items'" },
    { "parameterName": "items", "parameterValue": "'your-items'" },
    { "parameterName": "items", "parameterValue": "0" },
    { "parameterName": "collectionMethod", "parameterValue": "'your-collectionMethod'" },
    { "parameterName": "trialPeriodDays", "parameterValue": "0" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "cancelAtPeriodEnd", "parameterValue": "true" },
    { "parameterName": "defaultPaymentMethod", "parameterValue": "'your-defaultPaymentMethod'" }
  ],
  "contextPropertyName": "createSubscriptionResult"
}

MScript example:

await _Stripe.createSubscription({
  customerId: /* string */,
  items: /* Array<Object> */,
  items: /* string */,
  items: /* number */,
  collectionMethod: /* string */,
  trialPeriodDays: /* number */,
  metadata: /* Object */,
  cancelAtPeriodEnd: /* boolean */,
  defaultPaymentMethod: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createSubscription({
  customerId: /* string */,
  items: /* Array<Object> */,
  items: /* string */,
  items: /* number */,
  collectionMethod: /* string */,
  trialPeriodDays: /* number */,
  metadata: /* Object */,
  cancelAtPeriodEnd: /* boolean */,
  defaultPaymentMethod: /* string */,
});

getSubscription

Get Subscription

Retrieves a subscription by ID

Parameters:

ParameterTypeRequiredDescription
subscriptionIdstringYesThe ID of the subscription

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getSubscriptionAction",
  "provider": "Stripe",
  "action": "getSubscription",
  "parameters": [
    { "parameterName": "subscriptionId", "parameterValue": "'your-subscriptionId'" }
  ],
  "contextPropertyName": "getSubscriptionResult"
}

MScript example:

await _Stripe.getSubscription({
  subscriptionId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getSubscription({
  subscriptionId: /* string */,
});

updateSubscription

Update Subscription

Updates a subscription

Parameters:

ParameterTypeRequiredDescription
subscriptionIdstringYesThe ID of the subscription
itemsArray&lt;Object&gt;NoUpdated subscription items
metadataObjectNoUpdated metadata
cancelAtPeriodEndbooleanNoCancel at period end
defaultPaymentMethodstringNoDefault payment method ID
prorationBehaviorstringNoProration behavior

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "updateSubscriptionAction",
  "provider": "Stripe",
  "action": "updateSubscription",
  "parameters": [
    { "parameterName": "subscriptionId", "parameterValue": "'your-subscriptionId'" },
    { "parameterName": "items", "parameterValue": "'your-items'" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "cancelAtPeriodEnd", "parameterValue": "true" },
    { "parameterName": "defaultPaymentMethod", "parameterValue": "'your-defaultPaymentMethod'" },
    { "parameterName": "prorationBehavior", "parameterValue": "'your-prorationBehavior'" }
  ],
  "contextPropertyName": "updateSubscriptionResult"
}

MScript example:

await _Stripe.updateSubscription({
  subscriptionId: /* string */,
  items: /* Array<Object> */,
  metadata: /* Object */,
  cancelAtPeriodEnd: /* boolean */,
  defaultPaymentMethod: /* string */,
  prorationBehavior: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.updateSubscription({
  subscriptionId: /* string */,
  items: /* Array<Object> */,
  metadata: /* Object */,
  cancelAtPeriodEnd: /* boolean */,
  defaultPaymentMethod: /* string */,
  prorationBehavior: /* string */,
});

cancelSubscription

Cancel Subscription

Cancels a subscription

Parameters:

ParameterTypeRequiredDescription
subscriptionIdstringYesThe ID of the subscription
invoiceNowbooleanNoGenerate final invoice immediately
proratebooleanNoProrate final invoice

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "cancelSubscriptionAction",
  "provider": "Stripe",
  "action": "cancelSubscription",
  "parameters": [
    { "parameterName": "subscriptionId", "parameterValue": "'your-subscriptionId'" },
    { "parameterName": "invoiceNow", "parameterValue": "true" },
    { "parameterName": "prorate", "parameterValue": "true" }
  ],
  "contextPropertyName": "cancelSubscriptionResult"
}

MScript example:

await _Stripe.cancelSubscription({
  subscriptionId: /* string */,
  invoiceNow: /* boolean */,
  prorate: /* boolean */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.cancelSubscription({
  subscriptionId: /* string */,
  invoiceNow: /* boolean */,
  prorate: /* boolean */,
});

listSubscriptions

List Subscriptions

Lists subscriptions with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of subscriptions
customerIdstringNoFilter by customer ID
priceIdstringNoFilter by price ID
statusstringNoFilter by status
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listSubscriptionsAction",
  "provider": "Stripe",
  "action": "listSubscriptions",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "priceId", "parameterValue": "'your-priceId'" },
    { "parameterName": "status", "parameterValue": "'your-status'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listSubscriptionsResult"
}

MScript example:

await _Stripe.listSubscriptions({
  limit: /* number */,
  customerId: /* string */,
  priceId: /* string */,
  status: /* string */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listSubscriptions({
  limit: /* number */,
  customerId: /* string */,
  priceId: /* string */,
  status: /* string */,
  startingAfter: /* string */,
});

Invoices

createInvoice

Create Invoice

Creates a new invoice

Parameters:

ParameterTypeRequiredDescription
customerIdstringYesID of the customer
descriptionstringNoDescription of the invoice
metadataObjectNoSet of key-value pairs
collectionMethodstringNoCollection method
dueDatenumberNoDue date as Unix timestamp
autoAdvancebooleanNoAuto-finalize invoice

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createInvoiceAction",
  "provider": "Stripe",
  "action": "createInvoice",
  "parameters": [
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "collectionMethod", "parameterValue": "'your-collectionMethod'" },
    { "parameterName": "dueDate", "parameterValue": "0" },
    { "parameterName": "autoAdvance", "parameterValue": "true" }
  ],
  "contextPropertyName": "createInvoiceResult"
}

MScript example:

await _Stripe.createInvoice({
  customerId: /* string */,
  description: /* string */,
  metadata: /* Object */,
  collectionMethod: /* string */,
  dueDate: /* number */,
  autoAdvance: /* boolean */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createInvoice({
  customerId: /* string */,
  description: /* string */,
  metadata: /* Object */,
  collectionMethod: /* string */,
  dueDate: /* number */,
  autoAdvance: /* boolean */,
});

getInvoice

Get Invoice

Retrieves an invoice by ID

Parameters:

ParameterTypeRequiredDescription
invoiceIdstringYesThe ID of the invoice

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getInvoiceAction",
  "provider": "Stripe",
  "action": "getInvoice",
  "parameters": [
    { "parameterName": "invoiceId", "parameterValue": "'your-invoiceId'" }
  ],
  "contextPropertyName": "getInvoiceResult"
}

MScript example:

await _Stripe.getInvoice({
  invoiceId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getInvoice({
  invoiceId: /* string */,
});

finalizeInvoice

Finalize Invoice

Finalizes a draft invoice

Parameters:

ParameterTypeRequiredDescription
invoiceIdstringYesThe ID of the invoice
autoAdvancebooleanNoAuto-advance after finalization

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "finalizeInvoiceAction",
  "provider": "Stripe",
  "action": "finalizeInvoice",
  "parameters": [
    { "parameterName": "invoiceId", "parameterValue": "'your-invoiceId'" },
    { "parameterName": "autoAdvance", "parameterValue": "true" }
  ],
  "contextPropertyName": "finalizeInvoiceResult"
}

MScript example:

await _Stripe.finalizeInvoice({
  invoiceId: /* string */,
  autoAdvance: /* boolean */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.finalizeInvoice({
  invoiceId: /* string */,
  autoAdvance: /* boolean */,
});

payInvoice

Pay Invoice

Pays an invoice

Parameters:

ParameterTypeRequiredDescription
invoiceIdstringYesThe ID of the invoice
paymentMethodstringNoPayment method ID to use

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "payInvoiceAction",
  "provider": "Stripe",
  "action": "payInvoice",
  "parameters": [
    { "parameterName": "invoiceId", "parameterValue": "'your-invoiceId'" },
    { "parameterName": "paymentMethod", "parameterValue": "'your-paymentMethod'" }
  ],
  "contextPropertyName": "payInvoiceResult"
}

MScript example:

await _Stripe.payInvoice({
  invoiceId: /* string */,
  paymentMethod: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.payInvoice({
  invoiceId: /* string */,
  paymentMethod: /* string */,
});

voidInvoice

Void Invoice

Voids an invoice

Parameters:

ParameterTypeRequiredDescription
invoiceIdstringYesThe ID of the invoice

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "voidInvoiceAction",
  "provider": "Stripe",
  "action": "voidInvoice",
  "parameters": [
    { "parameterName": "invoiceId", "parameterValue": "'your-invoiceId'" }
  ],
  "contextPropertyName": "voidInvoiceResult"
}

MScript example:

await _Stripe.voidInvoice({
  invoiceId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.voidInvoice({
  invoiceId: /* string */,
});

sendInvoice

Send Invoice

Sends an invoice to the customer

Parameters:

ParameterTypeRequiredDescription
invoiceIdstringYesThe ID of the invoice

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "sendInvoiceAction",
  "provider": "Stripe",
  "action": "sendInvoice",
  "parameters": [
    { "parameterName": "invoiceId", "parameterValue": "'your-invoiceId'" }
  ],
  "contextPropertyName": "sendInvoiceResult"
}

MScript example:

await _Stripe.sendInvoice({
  invoiceId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.sendInvoice({
  invoiceId: /* string */,
});

listInvoices

List Invoices

Lists invoices with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of invoices
customerIdstringNoFilter by customer ID
subscriptionIdstringNoFilter by subscription ID
statusstringNoFilter by status
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listInvoicesAction",
  "provider": "Stripe",
  "action": "listInvoices",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "subscriptionId", "parameterValue": "'your-subscriptionId'" },
    { "parameterName": "status", "parameterValue": "'your-status'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listInvoicesResult"
}

MScript example:

await _Stripe.listInvoices({
  limit: /* number */,
  customerId: /* string */,
  subscriptionId: /* string */,
  status: /* string */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listInvoices({
  limit: /* number */,
  customerId: /* string */,
  subscriptionId: /* string */,
  status: /* string */,
  startingAfter: /* string */,
});

createInvoiceItem

Create Invoice Item

Creates a new invoice item

Parameters:

ParameterTypeRequiredDescription
customerIdstringYesID of the customer
amountnumberNoAmount in cents
currencystringNoCurrency code
priceIdstringNoPrice ID to use
invoiceIdstringNoInvoice ID to attach to
descriptionstringNoDescription of the item
quantitynumberNoQuantity
metadataObjectNoSet of key-value pairs

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createInvoiceItemAction",
  "provider": "Stripe",
  "action": "createInvoiceItem",
  "parameters": [
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "amount", "parameterValue": "0" },
    { "parameterName": "currency", "parameterValue": "'your-currency'" },
    { "parameterName": "priceId", "parameterValue": "'your-priceId'" },
    { "parameterName": "invoiceId", "parameterValue": "'your-invoiceId'" },
    { "parameterName": "description", "parameterValue": "'your-description'" },
    { "parameterName": "quantity", "parameterValue": "0" },
    { "parameterName": "metadata", "parameterValue": "{}" }
  ],
  "contextPropertyName": "createInvoiceItemResult"
}

MScript example:

await _Stripe.createInvoiceItem({
  customerId: /* string */,
  amount: /* number */,
  currency: /* string */,
  priceId: /* string */,
  invoiceId: /* string */,
  description: /* string */,
  quantity: /* number */,
  metadata: /* Object */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createInvoiceItem({
  customerId: /* string */,
  amount: /* number */,
  currency: /* string */,
  priceId: /* string */,
  invoiceId: /* string */,
  description: /* string */,
  quantity: /* number */,
  metadata: /* Object */,
});

deleteInvoiceItem

Delete Invoice Item

Deletes an invoice item

Parameters:

ParameterTypeRequiredDescription
invoiceItemIdstringYesThe ID of the invoice item

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "deleteInvoiceItemAction",
  "provider": "Stripe",
  "action": "deleteInvoiceItem",
  "parameters": [
    { "parameterName": "invoiceItemId", "parameterValue": "'your-invoiceItemId'" }
  ],
  "contextPropertyName": "deleteInvoiceItemResult"
}

MScript example:

await _Stripe.deleteInvoiceItem({
  invoiceItemId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.deleteInvoiceItem({
  invoiceItemId: /* string */,
});

Payment

attachPaymentMethod

Attach Payment Method

Attaches a payment method to a customer

Parameters:

ParameterTypeRequiredDescription
paymentMethodIdstringYesThe ID of the payment method
customerIdstringYesThe ID of the customer

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "attachPaymentMethodAction",
  "provider": "Stripe",
  "action": "attachPaymentMethod",
  "parameters": [
    { "parameterName": "paymentMethodId", "parameterValue": "'your-paymentMethodId'" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" }
  ],
  "contextPropertyName": "attachPaymentMethodResult"
}

MScript example:

await _Stripe.attachPaymentMethod({
  paymentMethodId: /* string */,
  customerId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.attachPaymentMethod({
  paymentMethodId: /* string */,
  customerId: /* string */,
});

detachPaymentMethod

Detach Payment Method

Detaches a payment method from a customer

Parameters:

ParameterTypeRequiredDescription
paymentMethodIdstringYesThe ID of the payment method

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "detachPaymentMethodAction",
  "provider": "Stripe",
  "action": "detachPaymentMethod",
  "parameters": [
    { "parameterName": "paymentMethodId", "parameterValue": "'your-paymentMethodId'" }
  ],
  "contextPropertyName": "detachPaymentMethodResult"
}

MScript example:

await _Stripe.detachPaymentMethod({
  paymentMethodId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.detachPaymentMethod({
  paymentMethodId: /* string */,
});

getPaymentMethod

Get Payment Method

Retrieves a payment method by ID

Parameters:

ParameterTypeRequiredDescription
paymentMethodIdstringYesThe ID of the payment method

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getPaymentMethodAction",
  "provider": "Stripe",
  "action": "getPaymentMethod",
  "parameters": [
    { "parameterName": "paymentMethodId", "parameterValue": "'your-paymentMethodId'" }
  ],
  "contextPropertyName": "getPaymentMethodResult"
}

MScript example:

await _Stripe.getPaymentMethod({
  paymentMethodId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getPaymentMethod({
  paymentMethodId: /* string */,
});

listPaymentMethods

List Payment Methods

Lists payment methods for a customer

Parameters:

ParameterTypeRequiredDescription
customerIdstringYesThe ID of the customer
typestringNoType of payment method
limitnumberNoMaximum number of payment methods
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listPaymentMethodsAction",
  "provider": "Stripe",
  "action": "listPaymentMethods",
  "parameters": [
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "type", "parameterValue": "'your-type'" },
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listPaymentMethodsResult"
}

MScript example:

await _Stripe.listPaymentMethods({
  customerId: /* string */,
  type: /* string */,
  limit: /* number */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listPaymentMethods({
  customerId: /* string */,
  type: /* string */,
  limit: /* number */,
  startingAfter: /* string */,
});

Balance

getBalance

Get Balance

Retrieves the current account balance

Parameters:

This method takes no parameters.

MScript example:

await _Stripe.getBalance()

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getBalance();

listBalanceTransactions

List Balance Transactions

Lists balance transactions with optional filtering

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of transactions
typestringNoFilter by transaction type
startingAfterstringNoCursor for pagination
createdAfternumberNoFilter by creation date (Unix timestamp)
createdBeforenumberNoFilter by creation date (Unix timestamp)

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listBalanceTransactionsAction",
  "provider": "Stripe",
  "action": "listBalanceTransactions",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "type", "parameterValue": "'your-type'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" },
    { "parameterName": "createdAfter", "parameterValue": "0" },
    { "parameterName": "createdBefore", "parameterValue": "0" }
  ],
  "contextPropertyName": "listBalanceTransactionsResult"
}

MScript example:

await _Stripe.listBalanceTransactions({
  limit: /* number */,
  type: /* string */,
  startingAfter: /* string */,
  createdAfter: /* number */,
  createdBefore: /* number */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listBalanceTransactions({
  limit: /* number */,
  type: /* string */,
  startingAfter: /* string */,
  createdAfter: /* number */,
  createdBefore: /* number */,
});

Coupons

createCoupon

Create Coupon

Creates a new coupon

Parameters:

ParameterTypeRequiredDescription
percentOffnumberNoPercentage discount (0-100)
amountOffnumberNoAmount discount in cents
currencystringNoCurrency for amount_off
durationstringNoDuration (forever, once, repeating)
durationInMonthsnumberNoMonths for repeating duration
namestringNoName of the coupon
idstringNoCustom coupon ID
metadataObjectNoSet of key-value pairs
maxRedemptionsnumberNoMaximum times coupon can be used
redeemBynumberNoUnix timestamp for expiration

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createCouponAction",
  "provider": "Stripe",
  "action": "createCoupon",
  "parameters": [
    { "parameterName": "percentOff", "parameterValue": "0" },
    { "parameterName": "amountOff", "parameterValue": "0" },
    { "parameterName": "currency", "parameterValue": "'your-currency'" },
    { "parameterName": "duration", "parameterValue": "'your-duration'" },
    { "parameterName": "durationInMonths", "parameterValue": "0" },
    { "parameterName": "name", "parameterValue": "'your-name'" },
    { "parameterName": "id", "parameterValue": "'your-id'" },
    { "parameterName": "metadata", "parameterValue": "{}" },
    { "parameterName": "maxRedemptions", "parameterValue": "0" },
    { "parameterName": "redeemBy", "parameterValue": "0" }
  ],
  "contextPropertyName": "createCouponResult"
}

MScript example:

await _Stripe.createCoupon({
  percentOff: /* number */,
  amountOff: /* number */,
  currency: /* string */,
  duration: /* string */,
  durationInMonths: /* number */,
  name: /* string */,
  id: /* string */,
  metadata: /* Object */,
  maxRedemptions: /* number */,
  redeemBy: /* number */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createCoupon({
  percentOff: /* number */,
  amountOff: /* number */,
  currency: /* string */,
  duration: /* string */,
  durationInMonths: /* number */,
  name: /* string */,
  id: /* string */,
  metadata: /* Object */,
  maxRedemptions: /* number */,
  redeemBy: /* number */,
});

getCoupon

Get Coupon

Retrieves a coupon by ID

Parameters:

ParameterTypeRequiredDescription
couponIdstringYesThe ID of the coupon

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getCouponAction",
  "provider": "Stripe",
  "action": "getCoupon",
  "parameters": [
    { "parameterName": "couponId", "parameterValue": "'your-couponId'" }
  ],
  "contextPropertyName": "getCouponResult"
}

MScript example:

await _Stripe.getCoupon({
  couponId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getCoupon({
  couponId: /* string */,
});

deleteCoupon

Delete Coupon

Deletes a coupon

Parameters:

ParameterTypeRequiredDescription
couponIdstringYesThe ID of the coupon

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "deleteCouponAction",
  "provider": "Stripe",
  "action": "deleteCoupon",
  "parameters": [
    { "parameterName": "couponId", "parameterValue": "'your-couponId'" }
  ],
  "contextPropertyName": "deleteCouponResult"
}

MScript example:

await _Stripe.deleteCoupon({
  couponId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.deleteCoupon({
  couponId: /* string */,
});

listCoupons

List Coupons

Lists coupons

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of coupons
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listCouponsAction",
  "provider": "Stripe",
  "action": "listCoupons",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listCouponsResult"
}

MScript example:

await _Stripe.listCoupons({
  limit: /* number */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listCoupons({
  limit: /* number */,
  startingAfter: /* string */,
});

Checkout

createCheckoutSession

Create Checkout Session

Creates a checkout session

Parameters:

ParameterTypeRequiredDescription
successUrlstringYesURL to redirect on success
cancelUrlstringNoURL to redirect on cancel
modestringNoSession mode (payment, setup, subscription)
lineItemsArray&lt;Object&gt;NoLine items for the session
lineItemsstringYesPrice ID
lineItemsnumberNoQuantity
customerIdstringNoCustomer ID
customerEmailstringNoCustomer email
metadataObjectNoSet of key-value pairs

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "createCheckoutSessionAction",
  "provider": "Stripe",
  "action": "createCheckoutSession",
  "parameters": [
    { "parameterName": "successUrl", "parameterValue": "'your-successUrl'" },
    { "parameterName": "cancelUrl", "parameterValue": "'your-cancelUrl'" },
    { "parameterName": "mode", "parameterValue": "'your-mode'" },
    { "parameterName": "lineItems", "parameterValue": "'your-lineItems'" },
    { "parameterName": "lineItems", "parameterValue": "'your-lineItems'" },
    { "parameterName": "lineItems", "parameterValue": "0" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "customerEmail", "parameterValue": "'your-customerEmail'" },
    { "parameterName": "metadata", "parameterValue": "{}" }
  ],
  "contextPropertyName": "createCheckoutSessionResult"
}

MScript example:

await _Stripe.createCheckoutSession({
  successUrl: /* string */,
  cancelUrl: /* string */,
  mode: /* string */,
  lineItems: /* Array<Object> */,
  lineItems: /* string */,
  lineItems: /* number */,
  customerId: /* string */,
  customerEmail: /* string */,
  metadata: /* Object */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.createCheckoutSession({
  successUrl: /* string */,
  cancelUrl: /* string */,
  mode: /* string */,
  lineItems: /* Array<Object> */,
  lineItems: /* string */,
  lineItems: /* number */,
  customerId: /* string */,
  customerEmail: /* string */,
  metadata: /* Object */,
});

getCheckoutSession

Get Checkout Session

Retrieves a checkout session

Parameters:

ParameterTypeRequiredDescription
sessionIdstringYesThe ID of the session

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "getCheckoutSessionAction",
  "provider": "Stripe",
  "action": "getCheckoutSession",
  "parameters": [
    { "parameterName": "sessionId", "parameterValue": "'your-sessionId'" }
  ],
  "contextPropertyName": "getCheckoutSessionResult"
}

MScript example:

await _Stripe.getCheckoutSession({
  sessionId: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.getCheckoutSession({
  sessionId: /* string */,
});

listCheckoutSessions

List Checkout Sessions

Lists checkout sessions

Parameters:

ParameterTypeRequiredDescription
limitnumberNoMaximum number of sessions
customerIdstringNoFilter by customer ID
paymentIntentIdstringNoFilter by payment intent ID
subscriptionIdstringNoFilter by subscription ID
startingAfterstringNoCursor for pagination

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "listCheckoutSessionsAction",
  "provider": "Stripe",
  "action": "listCheckoutSessions",
  "parameters": [
    { "parameterName": "limit", "parameterValue": "0" },
    { "parameterName": "customerId", "parameterValue": "'your-customerId'" },
    { "parameterName": "paymentIntentId", "parameterValue": "'your-paymentIntentId'" },
    { "parameterName": "subscriptionId", "parameterValue": "'your-subscriptionId'" },
    { "parameterName": "startingAfter", "parameterValue": "'your-startingAfter'" }
  ],
  "contextPropertyName": "listCheckoutSessionsResult"
}

MScript example:

await _Stripe.listCheckoutSessions({
  limit: /* number */,
  customerId: /* string */,
  paymentIntentId: /* string */,
  subscriptionId: /* string */,
  startingAfter: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.listCheckoutSessions({
  limit: /* number */,
  customerId: /* string */,
  paymentIntentId: /* string */,
  subscriptionId: /* string */,
  startingAfter: /* string */,
});

Webhooks

constructWebhookEvent

Construct Webhook Event

Constructs and verifies a webhook event from raw payload and signature

Parameters:

ParameterTypeRequiredDescription
payload`stringBuffer`Yes
signaturestringYesStripe-Signature header value
webhookSecretstringYesWebhook endpoint secret

IntegrationAction example:

{
  "extendClassName": "IntegrationAction",
  "name": "constructWebhookEventAction",
  "provider": "Stripe",
  "action": "constructWebhookEvent",
  "parameters": [
    { "parameterName": "payload", "parameterValue": "'your-payload'" },
    { "parameterName": "signature", "parameterValue": "'your-signature'" },
    { "parameterName": "webhookSecret", "parameterValue": "'your-webhookSecret'" }
  ],
  "contextPropertyName": "constructWebhookEventResult"
}

MScript example:

await _Stripe.constructWebhookEvent({
  payload: /* string|Buffer */,
  signature: /* string */,
  webhookSecret: /* string */,
})

Service library example:

const { getIntegrationClient } = require("integrations");
const client = await getIntegrationClient("Stripe");
const result = await client.constructWebhookEvent({
  payload: /* string|Buffer */,
  signature: /* string */,
  webhookSecret: /* string */,
});