Skip to content
Create account or Sign in
The Stripe Docs logo
/
Ask AI
Create accountSign in
Get started
Payments
Revenue
Platforms and marketplaces
Money management
Developer resources
APIs & SDKsHelp
Overview
Start an integration
Use for your business
Financial Accounts
CardsInstant currency conversion
Global Payouts
Capital
Embed in your platform
Financial Accounts for platforms
Issuing cards
Capital for platforms
    How Capital for platforms works
    Set up Capital
      No-code integration
      Embedded components integration
        Capital financing
        Capital promo tile
        Capital application
        Capital promotion
      API integration
      Testing
      Provide and reconcile reports
    Import non-Stripe data into Capital underwriting
    Regulatory compliance
    Marketing
    Servicing
    Metrics
United States
English (United States)
HomeMoney managementCapital for platformsSet up CapitalEmbedded components integration

Capital promotion componentPrivate preview

Show promotional content about a connected account's Capital financing offer and launch a Capital application.

The Capital promotion component allows your eligible connected accounts to complete a financing application in your platform’s website or application. Connected accounts can select their offer amount and terms, view contractual details, and submit their application. This component displays educational and promotional content about the Capital program as the starting point in the application process.

Alternate components

  • For a smaller version of this component, see the Capital promo tile component
  • To exclude education and promotional information about the Capital program, see the Capital application component

Before you begin

  • Embedded components are only available to display to connected accounts in the US and UK.
  • Before you go live, you must enable automatic offers and submit your integration to Stripe for review.
  • When you render the component, it links out to Stripe content by default. You can replace the link for Privacy policy and How Capital for platforms works with your equivalent documentation.

Install Capital embedded components

Install a beta version of the Stripe SDKs to create account sessions for private preview components:

  • Ruby >=15.5.0-beta.1
  • Python >=12.5.0b1
  • PHP >=17.6.0-beta.1
  • Node >=18.5.0-beta.1
  • .NET >=48.5.0-beta.1
  • Java >=29.5.0-beta.1
  • Go >=82.5.0-beta.1

Use the beta version of the Stripe’s client-side libraries to render private preview components:

Install the library:

npm install --save @stripe/connect-js@preview

If you’re using React in your application:

npm install --save @stripe/react-connect-js@preview

Set up Connect.js

If you don’t already use Stripe embedded components in your application, initialize Connect.js before you integrate the application component.

Create an Account Session

In your create an Account Session request, specify  capital_financing_promotion in the components parameter.

Command Line
cURL
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/account_sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Version: 2025-10-29.clover; embedded_connect_beta=v2;" \ -d account=
"{{CONNECTED_ACCOUNT_ID}}"
\ -d "components[capital_financing_promotion][enabled]"=true

Render the component

Render the Capital promotion component in the front end:

capital-financing-promotion.js
JavaScript
React
No results
// Include this element in your HTML const capitalFinancingPromotion = stripeConnectInstance.create('capital-financing-promotion'); container.appendChild(capitalFinancingPromotion);
MethodTypeDescriptionDefault
setOnApplicationSubmitted() => voidThe connected account has successfully submitted their application for financing.
setOnApplicationStepChange({step: string}) => voidThe connected account has navigated through the application.
setLayoutfull | bannerControls the layout of the component. banner mode greatly reduces the vertical size of the component, which is useful when stacking the component with other content on the page.full
setOnEligibleFinancingOfferLoaded({productType: standard | refill | none}) => voidThe connected account’s financing offer has been loaded. The productType field corresponds to the product_type field on the Financing Offer object.
setPrivacyPolicyUrlstringAbsolute URL of a page containing your privacy policy.https://stripe.com/privacy
setHowCapitalWorksUrlstringAbsolute URL of a page with information about the Capital program.https://docs.stripe.com/capital/how-capital-for-platforms-works
setEligibilityCriteriaUrlstringAbsolute URL of a page with information about eligibility criteria for the Capital program.https://docs.stripe.com/capital/how-capital-for-platforms-works

Set the display state

Add the promotion component on your platform’s home page, or a dedicated Financing page in your platform’s website or app. The application component displays content dynamically based on the connected account’s financing status:

  • No active financing: If the connected account doesn’t have active financing, the component displays generic information about eligibility and the lending program.

  • With active offer: If the connected account is eligible for an offer, the component shows full offer details with a Start application button.

  • Offer in review: After an eligible connected account accepts and applies for a financing offer, use this state to display an application status tracker. Listen to the onApplicationStepChange event to track their offer’s progress. This event is emitted when the connected account advances to the next step or navigates back to a previous step or page in the Capital application process. The name of the next step is provided to the handler you provide in the step field. These steps can appear in any order and repeat. You can modify, add, and remove the step names at any time.

    Only use the onApplicationStepChange object for analytics purposes, such as tracking the average page completion time or pages with the most drop off. Don’t use the onApplicationStepChange object to trigger operational or support workflows, such as sending emails to connected accounts who stopped application progress at a specific page.

  • Submitted offer: After a connected account submits their financing application, the component renders an empty screen. Listen to the onApplicationSubmitted event to display a confirmation screen instead.

  • Active financing in progress: The component doesn’t render (returns null).

The onApplicationStepChange type

The onApplicationStepChange type is defined in connect.js. Every time the connected account navigates from one step to another in the Capital application process, the step change handler receives a onApplicationStepChange object with the following property:

Name
Type
Example value
step
string (must be a valid step name)
business_type
The unique reference to an onboarding step.

Step Names

Each page in an onboarding flow has one of the following step names.

Step nameDescription
stripe_user_authenticationHandles user authentication using a Stripe-hosted window to verify identity and secure the financing workflow.
offer_selectorIntroduces connected accounts to the financing application, providing an overview of the offer and the financing.
offer_summaryDisplays a detailed summary of the financing offer, including key terms and conditions.
business_detailsCollects detailed information about the connected account’s business, such as business address, industry, and operational specifics.
business_verificationGathers documentation and information that verifies the existence and legitimacy of the connected account’s business entity.
business_summaryProvides a review of all business-related information submitted during onboarding, allowing the connected account to confirm or update details.
ownersCollects information about the beneficial owners of the business applying for financing.
directorsGathers details about the directors of the business, if applicable.
executivesCollects information about key executives associated with the business.
representative_detailsCollects information about the individual representing the business in the financing application.
representative_additional_documentAllows the connected account to upload supplementary documents verifying the representative’s identity or authority.
representative_documentCollects a government-issued ID or equivalent document that verifies the identity of the business representative.
person_summaryProvides a review of all person-level information (owners, representatives, executives) submitted, allowing for updates or corrections.
offer_annual_revenueCollects information regarding the connected account’s annual revenue to assess financing eligibility and terms.
offer_financial_dataRequests additional financial documents and data necessary for underwriting and approval of the financing offer.
offer_missing_contact_infoPrompts the connected account to provide or update missing contact information relevant to the financing application.
offer_payout_detailsCollects payment and payout details to facilitate disbursement of financing funds to the connected account’s bank account.
lending_network_offer_review_agreementsProvides connected accounts with agreements specific to financing offers sourced through Stripe’s Lending Network for review and acceptance.
offer_review_agreementsPresents the legal agreements and terms related to the selected financing offer for review and acceptance by the connected account.
offer_completeConfirms that the financing offer has been submitted and the application process is complete.

Step Restrictions

  • The StepChange object is only for analytics.
  • Steps can appear in any order and can repeat.
  • The list of valid step names can change at any time, without notice.

Submit the component for review

To use any of the Capital components in live mode, Stripe and our financial partners must review and approve all customer-facing content that references Stripe Capital:

  1. Create a test offer in a sandbox, and set the offer status to delivered. Use this test offer to preview the application component in your platform’s website or dashboard.
  2. Capture a preview of the sandbox offer and how the embedded component displays in your platform’s UI (such as screenshots or a recorded video).
  3. Submit the preview to Stripe. After approval, Stripe enables you to use the component in live mode.

OptionalAdditional embedded components

The promotion component is one of several embedded components available for Capital for platforms. For example, you can embed the Capital financing component, which allows your connected accounts to manage their payments and view transaction history.

See also

  • Set up an embedded components integration
Was this page helpful?
YesNo
  • Need help? Contact Support.
  • Check out our changelog.
  • Questions? Contact Sales.
  • LLM? Read llms.txt.
  • Powered by Markdoc