# Integration mit den in Connect eingebetteten Komponenten

# Integration mit den in Connect eingebetteten Komponenten

> Um eine Kontositzung zu erstellen, können Sie die SDKs von Stripe verwenden:
> 
> - [Ruby](https://github.com/stripe/stripe-ruby) `>=15.4.0`
- [Python](https://github.com/stripe/stripe-python) `>=12.4.0`
- [PHP](https://github.com/stripe/stripe-php) `>=17.5.0`
- [Node](https://github.com/stripe/stripe-node) `>=18.4.0`
- [.NET](https://github.com/stripe/stripe-dotnet) `>=48.4.0`
- [Java](https://github.com/stripe/stripe-java) `>=29.4.0`
- [Go](https://github.com/stripe/stripe-go) `>=82.4.0`

Erstellen Sie eine vollständige, funktionierende Integration mit den [in Connect eingebetteten Komponenten](https://docs.stripe.com/connect/get-started-connect-embedded-components.md). Verwenden Sie die in Connect eingebetteten Komponenten, um innerhalb von Minuten Dashboard-Funktionen für verbundene Konten zu Ihrer Website hinzuzufügen. Diese Bibliotheken und die unterstützende API helfen Ihnen bei der Inbetriebnahme fast ohne Code, sodass Ihre Nutzer/innen direkt in Ihrem Dashboard auf Stripe-Produkte zugreifen können.

  // This is a placeholder - it should be replaced with your secret API key.
  // Sign in to see your own test API key embedded in code samples.
  // Don’t submit any personally identifiable information in requests made with this key.
  'sk_INSERT_YOUR_SECRET_KEY',
app.post('/account_session', async (req, res) => {
  try {
    const accountSession = await stripe.accountSessions.create({
      account: "{{CONNECTED_ACCOUNT_ID}}",
      components: {
        payments: {
          enabled: true,
          features: {
            refund_management: true,
            dispute_management: true,
            capture_payments: true,
          }
        }
      }
    });

    res.json({
      client_secret: accountSession.client_secret,
    });
  } catch (error) {
    console.error('An error occurred when calling the Stripe API to create an account session', error);
    res.status(500);
    res.send({error: error.message});
  }
});
\# This is a placeholder - it should be replaced with your secret API key.
# Sign in to see your own test API key embedded in code samples.
# Don’t submit any personally identifiable information in requests made with this key.
client = Stripe::StripeClient.new('sk_INSERT_YOUR_SECRET_KEY')
post '/account_session' do
  content_type 'application/json'

  begin
    account_session = client.v1.account_sessions.create({
      account: "{{CONNECTED_ACCOUNT_ID}}",
      components: {
        payments: {
          enabled: true,
          features: {
            refund_management: true,
            dispute_management: true,
            capture_payments: true
          }
        }
      }
    })

    {
      client_secret: account_session[:client_secret]
    }.to_json
  rescue => error
    puts "An error occurred when calling the Stripe API to create an account session: #{error.message}";
    return [500, { error: error.message }.to_json]
  end
end
\# This is a placeholder - it should be replaced with your secret API key.
# Sign in to see your own test API key embedded in code samples.
# Don’t submit any personally identifiable information in requests made with this key.
client = stripe.StripeClient('sk_INSERT_YOUR_SECRET_KEY')
@app.route('/account_session', methods=['POST'])
def create_account_session():
    try:
        account_session = client.v1.account_sessions.create(params={
          'account': "{{CONNECTED_ACCOUNT_ID}}",
          'components': {
            "payments": {
              "enabled": True,
              "features": {
                "refund_management": True,
                "dispute_management": True,
                "capture_payments": True
              }
            },
          },
        })

        return jsonify({
          'client_secret': account_session.client_secret,
        })
    except Exception as e:
        print('An error occurred when calling the Stripe API to create an account session: ', e)
        return jsonify(error=str(e)), 500
  // This is your test secret API key.
  "api_key" => $stripeSecretKey,
try {
  $account_session = $stripe->accountSessions->create([
    'account' => "{{CONNECTED_ACCOUNT_ID}}",
    'components' => [
      'payments' => [
        'enabled' => true,
        'features' => [
          'refund_management' => true,
          'dispute_management' => true,
          'capture_payments' => true,
        ],
      ],
    ],
  ]);

  echo json_encode(array(
    'client_secret' => $account_session->client_secret
  ));
} catch (Exception $e) {
  error_log("An error occurred when calling the Stripe API to create an account session: {$e->getMessage()}");
  http_response_code(500);
  echo json_encode(['error' => $e->getMessage()]);
}
    // This is a placeholder - it should be replaced with your secret API key.
    // Sign in to see your own test API key embedded in code samples.
    // Don’t submit any personally identifiable information in requests made with this key.
    StripeClient client = new StripeClient("sk_INSERT_YOUR_SECRET_KEY");
    post("/account_session", (request, response) -> {
      response.type("application/json");

      try {
        Map<String, Object> params = new HashMap<>();
        params.put("account", "{{CONNECTED_ACCOUNT_ID}}");
        Map<String, Object> payments = new HashMap<>();
        payments.put("enabled", true);

        Map<String, Object> features = new HashMap<>();
        features.put("refund_management", true);
        features.put("dispute_management", true);
        features.put("capture_payments", true);
        payments.put("features", features);

        Map<String, Object> components = new HashMap<>();
        components.put("payments", payments);
        params.put("components", components);
        AccountSession accountSession = client.v1().accountSessions().create(params);
        CreateAccountSessionResponse accountSessionResponse = new CreateAccountSessionResponse(accountSession.getClientSecret());
        return gson.toJson(accountSessionResponse);
      } catch(Exception e) {
        System.out.println("An error occurred when calling the Stripe API to create an account session: " + e.getMessage());
        response.status(500);
        return gson.toJson(new ErrorResponse(e.getMessage()));
      }
    });
package main

import (
  "bytes"
  "context"
  "encoding/json"
  "io"
  "log"
  "net/http"
  "github.com/stripe/stripe-go/v82"
)
    // This is a placeholder - it should be replaced with your secret API key.
    // Sign in to see your own test API key embedded in code samples.
    // Don’t submit any personally identifiable information in requests made with this key.
    sc = stripe.NewClient("sk_INSERT_YOUR_SECRET_KEY")
func CreateAccountSession(sc *stripe.Client, w http.ResponseWriter, r *http.Request) {
    if r.Method != "POST" {
      http.Error(w, http.StatusText(http.StatusMethodNotAllowed), http.StatusMethodNotAllowed)
      return
    }

    accountSession, err := sc.V1AccountSessions.Create(context.TODO(),
      &stripe.AccountSessionCreateParams{
        Account: stripe.String("{{CONNECTED_ACCOUNT_ID}}"),
        Components: &stripe.AccountSessionCreateComponentsParams{
          Payments: &stripe.AccountSessionCreateComponentsPaymentsParams{
            Enabled: stripe.Bool(true),
            Features: &stripe.AccountSessionCreateComponentsPaymentsFeaturesParams{
              RefundManagement: stripe.Bool(true),
              DisputeManagement: stripe.Bool(true),
              CapturePayments: stripe.Bool(true),
            },
          },
        },
      },
    )

    if err != nil {
      log.Printf("An error occurred when calling the Stripe API to create an account session: %v", err)
      w.WriteHeader(http.StatusInternalServerError)
      if stripeErr, ok := err.(*stripe.Error); ok {
        writeJSON(w, struct {
          Error string `json:"error"`
        }{
          Error: stripeErr.Msg,
        })
      } else {
        writeJSON(w, struct {
          Error string `json:"error"`
        }{
          Error: err.Error(),
        })
      }
      return
    }

    writeJSON(w, struct {
      ClientSecret string `json:"client_secret"`
    }{
      ClientSecret: accountSession.ClientSecret,
    })
}
            // This is a placeholder - it should be replaced with your secret API key.
            // Sign in to see your own test API key embedded in code samples.
            // Don’t submit any personally identifiable information in requests made with this key.
            // Don't put any keys in code. See https://docs.stripe.com/keys-best-practices.
            services.AddSingleton(new StripeClient("<<YOUR_SECRET_KEY>>"));
    [Route("account_session")]
    [ApiController]
    public class AccountSessionApiController : Controller
    {
        private readonly StripeClient _client;

        public AccountSessionApiController(StripeClient client)
        {
            _client = client;
        }

        [HttpPost]
        public ActionResult Post()
        {
            try
            {
                AccountSession accountSession = _client.V1.AccountSessions.Create(
                    new AccountSessionCreateOptions
                    {
                        Account = "{{CONNECTED_ACCOUNT_ID}}",
                        Components = new AccountSessionComponentsOptions
                        {
                            Payments = new AccountSessionComponentsPaymentsOptions
                            {
                                Enabled = true,
                                Features = new AccountSessionComponentsPaymentsFeaturesOptions
                                {
                                    RefundManagement = true,
                                    DisputeManagement = true,
                                    CapturePayments = true
                                }
                            }
                        }
                    }
                );

                return Json(new { client_secret = accountSession.ClientSecret });
            } catch(Exception ex) {
                Console.Write("An error occurred when calling the Stripe API to create an account session:  " + ex.Message);
                Response.StatusCode = 500;
                return Json(new { error = ex.Message });
            }
        }
    }
{
  "require": {
      "stripe/stripe-php": "17.5.0"
  }
}
certifi==2026.1.4
chardet==5.2.0
click==8.3.1
Flask==3.1.2
idna==3.11
itsdangerous==2.2.0
Jinja2==3.1.6
MarkupSafe==3.0.3
requests==2.32.5
stripe==12.4.0
toml==0.10.2
Werkzeug==3.1.5
source 'https://rubygems.org/'

gem 'sinatra'
gem 'stripe', '15.4.0'
<project>
<!-- model version - always 4.0.0 for Maven 2.x POMs -->
<modelVersion>4.0.0</modelVersion>

<!-- project coordinates - values which uniquely identify this project -->
<groupId>com.stripe.sample</groupId>
<artifactId>stripe-account-onboarding</artifactId>
<version>1.0.0-SNAPSHOT</version>

<!-- library dependencies -->
<dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>2.0.3</version>
    </dependency>
    <dependency>
        <groupId>com.sparkjava</groupId>
        <artifactId>spark-core</artifactId>
        <version>2.9.4</version>
    </dependency>
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.9.1</version>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.20</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>com.stripe</groupId>
        <artifactId>stripe-java</artifactId>
        <version>29.4.0</version>
    </dependency>
</dependencies>
<build>
    <finalName>sample</finalName>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.10.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
            <execution>
                <phase>package</phase>
                <goals>
                <goal>single</goal>
                </goals>
            </execution>
            </executions>
            <configuration>
            <descriptorRefs>
                <!-- This tells Maven to include all dependencies -->
                <descriptorRef>jar-with-dependencies</descriptorRef>
            </descriptorRefs>
            <archive>
                <manifest>
                <mainClass>Server</mainClass>
                </manifest>
            </archive>
            </configuration>
        </plugin>
    </plugins>
</build>
</project>
module stripe.com/docs/connect/connect-embedded-components/quickstart

go 1.21

require github.com/stripe/stripe-go/v82 v82.4.0
<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <RootNamespace>StripeExample</RootNamespace>
    <RollForward>Major</RollForward>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.11" />
    <PackageReference Include="Stripe.net" Version="48.4.0" />
  </ItemGroup>

</Project>
  // Fetch the AccountSession client secret
  const response = await fetch('/account_session', { method: "POST" });
  // Fetch the AccountSession client secret
  const response = await fetch('/account_session.php', {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
    },
  });
  const stripeConnectInstance = loadConnectAndInitialize({
    // This is a placeholder - it should be replaced with your publishable API key.
    // Sign in to see your own test API key embedded in code samples.
    // Don’t submit any personally identifiable information in requests made with this key.
    publishableKey: "pk_INSERT_YOUR_PUBLISHABLE_KEY",
    fetchClientSecret: fetchClientSecret,
    appearance: {
      overlays: 'dialog',
      variables: {
        colorPrimary: '#625afa',
      },
    },
      });
      const container = document.getElementById("container");
      const paymentsComponent = stripeConnectInstance.create("payments");
      container.appendChild(paymentsComponent);
{
  "name": "stripe-sample-code",
  "version": "1.0.0",
  "description": "Build a full, working integration using Connect embedded components. Here are some basic scripts you can use to build and run the application.",
  "scripts": {
    "start": "parcel watch",
    "build": "parcel build"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "parcel": "^2.8.3"
  },
  "source": "public/index.html",
  "dependencies": {
    "@stripe/connect-js": "3.3.27"
  }
}
{
  "name": "stripe-sample-code",
  "version": "1.0.0",
  "description": "Build a full, working integration using Connect embedded components. Here are some basic scripts you can use to build and run the application.",
  "scripts": {
    "start-client": "parcel watch",
    "start-server": "node server.js",
    "start": "concurrently \"yarn start-client\" \"yarn start-server\"",
    "build": "parcel build"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "concurrently": "4.1.2",
    "parcel": "^2.8.3"
  },
  "source": "public/index.html",
  "dependencies": {
    "express": "^4.17.1",
    "stripe": "17.6.0",
    "@stripe/connect-js": "3.3.27"
  }
}
{
  "name": "stripe-sample",
  "version": "0.1.0",
  "dependencies": {
    "@stripe/connect-js": "3.3.27",
    "@stripe/react-connect-js": "3.3.25",
    "express": "^4.17.1",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-scripts": "^3.4.0",
    "stripe": "17.6.0"
  },
  "devDependencies": {
    "concurrently": "4.1.2",
    "parcel": "^2.8.3"
  },
  "homepage": "http://localhost:3000",
  "proxy": "http://localhost:4242",
  "source": "public/index.html",
  "scripts": {
    "start-client": "parcel watch",
    "start-server": "node server.js",
    "build": "parcel build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "start": "concurrently \"yarn start-client\" \"yarn start-server\""
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}
{
  "name": "client",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-scripts": "^3.4.0",
    "@stripe/connect-js": "3.3.27",
    "@stripe/react-connect-js": "3.3.25"
  },
  "homepage": "http://localhost:3000",
  "proxy": "http://localhost:4242",
  "scripts": {
    "start": "parcel watch",
    "build": "parcel build"
  },
  "source": "public/index.html",
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "parcel": "^2.8.3"
  }
}
import {
  ConnectPayments,
  ConnectComponentsProvider,
} from "@stripe/react-connect-js";
  const [stripeConnectInstance] = useState(() => {
    const fetchClientSecret = async () => {
      // Fetch the AccountSession client secret
      const response = await fetch('/account_session', { method: "POST" });
      // Fetch the AccountSession client secret
      const response = await fetch('/account_session.php', {
        method: "POST",
        headers: {
          "Content-Type": "application/json",
        },
      });
      if (!response.ok) {
        // Handle errors on the client side here
        const {error} = await response.json();
        console.log('An error occurred: ', error);
        return undefined;
      } else {
        const {client_secret: clientSecret} = await response.json();
        return clientSecret;
      }
    };
    return loadConnectAndInitialize({
        // This is a placeholder - it should be replaced with your publishable API key.
        // Sign in to see your own test API key embedded in code samples.
        // Don’t submit any personally identifiable information in requests made with this key.
        publishableKey: "pk_INSERT_YOUR_PUBLISHABLE_KEY",
        fetchClientSecret: fetchClientSecret,
        appearance: {
          overlays: 'dialog',
          variables: {
            colorPrimary: '#625afa',
          },
        },
      })
    });
        <ConnectComponentsProvider connectInstance={stripeConnectInstance}>
          <ConnectPayments />
        </ConnectComponentsProvider>
const stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);
export default async function handler(req, res) {
  if (req.method === 'POST') {
    try {
      const accountSession = await stripe.accountSessions.create({
        account: "{{CONNECTED_ACCOUNT_ID}}",
        components: {
          payments: {
            enabled: true,
            features: {
              refund_management: true,
              dispute_management: true,
              capture_payments: true,
            }
          }
        }
      });

      res.json({
        client_secret: accountSession.client_secret,
      });
    } catch (error) {
      console.error('An error occurred when calling the Stripe API to create an account session', error);
      res.status(500);
      res.send({error: error.message});
    }
  }
}
import {
  ConnectPayments,
  ConnectComponentsProvider,
} from "@stripe/react-connect-js";
    return loadConnectAndInitialize({
        // This is a placeholder - it should be replaced with your publishable API key.
        // Sign in to see your own test API key embedded in code samples.
        // Don’t submit any personally identifiable information in requests made with this key.
        publishableKey: "pk_INSERT_YOUR_PUBLISHABLE_KEY",
        fetchClientSecret: fetchClientSecret,
        appearance: {
          overlays: 'dialog',
          variables: {
            colorPrimary: '#625afa',
          },
        },
      })
    });
          <ConnectComponentsProvider connectInstance={stripeConnectInstance}>
            <ConnectPayments />
          </ConnectComponentsProvider>
\# This is a public sample test API key.
# Don’t submit any personally identifiable information in requests made with this key.
# Sign in to see your own test API key embedded in code samples.
STRIPE_SECRET_KEY=sk_INSERT_YOUR_SECRET_KEY
{
  "name": "stripe-sample",
  "version": "0.1.0",
  "scripts": {
    "dev": "next dev -p 4242"
  },
  "dependencies": {
    "@stripe/connect-js": "3.3.27",
    "@stripe/react-connect-js": "3.3.25",
    "micro": "9.4.1",
    "micro-cors": "0.1.1",
    "next": "^13.0.0",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "stripe": "17.6.0"
  }
}
{
  "name": "stripe-sample",
  "version": "0.1.0",
  "private": true,
  "source": "public/index.html",
  "scripts": {
    "start-client": "parcel watch",
    "start-server": "node server.js",
    "build": "parcel build",
    "start": "concurrently \"yarn start-client\" \"yarn start-server\""
  },
  "dependencies": {
    "@stripe/connect-js": "3.3.27",
    "express": "^4.17.1",
    "stripe": "17.6.0",
    "vue": "^3.2.38"
  },
  "devDependencies": {
    "@parcel/transformer-vue": "^2.9.3",
    "concurrently": "4.1.2",
    "parcel": "^2.9.3"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}
{
  "name": "stripe-sample",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "start": "parcel watch",
    "build": "parcel build"
  },
  "source": "public/index.html",
  "dependencies": {
    "@stripe/connect-js": "3.3.27",
    "vue": "^3.2.38"
  },
  "devDependencies": {
    "@parcel/transformer-vue": "^2.9.3",
    "parcel": "^2.9.3"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}
      const response = await fetch('/account_session', { method: "POST" });
      const response = await fetch('/account_session.php', { method: "POST" });
    const stripeConnectInstance = loadConnectAndInitialize({
      // This is a placeholder - it should be replaced with your publishable API key.
      // Sign in to see your own test API key embedded in code samples.
      // Don’t submit any personally identifiable information in requests made with this key.
      publishableKey: "pk_INSERT_YOUR_PUBLISHABLE_KEY",
      fetchClientSecret: fetchClientSecret,
      appearance: {
        overlays: 'dialog',
        variables: {
          colorPrimary: '#625afa',
        },
      },
    });
      const container = document.getElementById("container");
      const paymentsComponent = stripeConnectInstance.create("payments");
      container.appendChild(paymentsComponent);
1. Build the server

~~~
pip3 install -r requirements.txt
~~~

2. Run the server

~~~
export FLASK_APP=server.py
python3 -m flask run --port=4242
~~~
1. Build the server

~~~
bundle install
~~~

2. Run the server

~~~
ruby server.rb -o 0.0.0.0
~~~
1. Build the server

~~~
composer install
~~~

2. Run the server

~~~
php -S 127.0.0.1:4242 --docroot=dist
~~~
1. Build the server

~~~
dotnet restore
~~~

2. Run the server

~~~
dotnet run
~~~
1. Build the server

~~~
mvn package
~~~

2. Run the server

~~~
java -cp target/sample-jar-with-dependencies.jar com.stripe.sample.Server
~~~
1. Install the dependencies

~~
go mod download github.com/stripe/stripe-go/v82
~~

2. Run the server

~~~
go run server.go
~~~

3. Build the client app

~~~
npm install
~~~

4. Run the client app

~~~
npm start
~~~

5. Go to [http://localhost:4242/index.html](http://localhost:4242/index.html)
1. Build the application

~~~
npm install
~~~

2. Run the application

~~~
npm start
~~~

3. Go to [http://localhost:4242/index.html](http://localhost:4242/index.html)
1. Build the application

~~~
npm install
~~~

2. Run the application

~~~
npm run dev
~~~

3. Go to [localhost:4242](http://localhost:4242)
### Stripe Node-Bibliothek installieren

Installieren Sie das Paket und importieren Sie es in Ihren Code. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `package.json`-Datei benötigen, laden Sie die Projektdateien über den Download-Link im Code-Editor herunter.

#### npm

Installieren Sie die Bibliothek:

```bash
npm install --save stripe@18.4.0
```

#### GitHub

Laden Sie den Quellcode der Stripe-Node-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-node/releases/tag/v18.4.0) herunter.

### Stripe-Ruby-Bibliothek installieren

Installieren Sie Stripe Ruby Gem und fordern Sie es in Ihrem Code an. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine Gemfile benötigen, laden Sie die Projektdateien über den Download-Link im Code-Editor herunter.

#### Terminal

Installieren Sie das Gem:

```bash
gem install stripe -v 15.4.0
```

#### Bundler

Fügen Sie diese Zeile zu Ihrer Gemfile hinzu:

```bash
gem 'stripe', '15.4.0'
```

#### GitHub

Laden Sie den Quellcode von Stripe-Ruby Gem direkt [von GitHub](https://github.com/stripe/stripe-ruby/releases/tag/v15.4.0) herunter.

### Stripe Java-Bibliothek installieren

Fügen Sie Ihrem Build die Abhängigkeit hinzu und importieren Sie die Bibliothek. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `pom.xml`-Beispieldatei (für Maven) benötigen, laden Sie die Projektdateien über den Link im Code-Editor herunter.

#### Maven

Fügen Sie Ihrem POM die folgende Abhängigkeit hinzu.

```bash
<dependency>\n<groupId>com.stripe</groupId>\n<artifactId>stripe-java</artifactId>\n<version>29.4.0</version>\n</dependency>
```

#### Gradle

Fügen Sie die Abhängigkeit zu Ihrer `build.gradle`-Datei hinzu.

```bash
implementation "com.stripe:stripe-java:29.4.0"
```

#### GitHub

Laden Sie die JAR-Datei direkt [von GitHub](https://github.com/stripe/stripe-java/releases/tag/v29.4.0) herunter.

### Stripe-Python-Paket installieren

Installieren Sie das Stripe-Paket und importieren Sie es in Ihren Code. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `requirements.txt`-Datei benötigen, laden Sie die Projektdateien über den Link im Code-Editor herunter.

#### pip

Installieren Sie das Paket über pip:

```bash
pip3 install stripe==12.4.0
```

#### GitHub

Laden Sie den Quellcode der Stripe-Python-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-python/releases/tag/v12.4.0) herunter.

### Stripe PHP-Bibliothek installieren

Installieren Sie die Bibliothek mit Composer und initialisieren Sie sie mit Ihrem geheimen API-Schlüssel. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `composer.json`-Datei benötigen, laden Sie die Dateien über den Link im Code-Editor herunter.

#### Composer

Installieren Sie die Bibliothek:

```bash
composer require stripe/stripe-php:17.5.0
```

#### GitHub

Laden Sie den Quellcode der Stripe-PHP-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-php/releases/tag/v17.5.0) herunter.

### Installieren Sie die Stripe Go-Bibliothek

Fügen Sie die Abhängigkeit zu Ihrem Build hinzu und importieren Sie die Bibliothek. Wenn Sie dagegen von Grund auf neu beginnen und eine `go.mod`-Datei benötigen, laden Sie die Projektdateien über den Link im Code-Editor herunter.

#### Go

Initialisieren Sie mit Go-Modulen:

```bash
go get -u github.com/stripe/stripe-go/v82@v82.4.0
```

#### GitHub

Laden Sie den Quellcode des Stripe-Go-Moduls direkt [von GitHub](https://github.com/stripe/stripe-go/releases/tag/v82.4.0) herunter.

### Stripe.net-Bibliothek installieren

Installieren Sie das Paket mit .NET oder NuGet. Wenn Sie aber komplett neu beginnen möchten, laden Sie die Dateien herunter, die eine konfigurierte `.csproj`-Datei enthalten.

#### dotnet

Installieren Sie die Bibliothek:

```bash
dotnet add package Stripe.net --version 48.4.0
```

#### NuGet

Installieren Sie die Bibliothek:

```bash
Install-Package Stripe.net -Version 48.4.0
```

#### GitHub

Laden Sie den Quellcode der Stripe.net-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-dotnet/releases/tag/v48.4.0) herunter.

### Installieren Sie die Stripe Bibliothek

Installieren Sie die Pakete und importieren Sie sie in Ihren Code. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `package.json`-Datei benötigen, laden Sie die Projektdateien über den Download-Link im Code-Editor herunter.

Installieren Sie die Bibliotheken:

```bash
npm install --save stripe@18.4.0
```

### Stripe Node-Bibliothek installieren

Installieren Sie das Paket und importieren Sie es in Ihren Code. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `package.json`-Datei benötigen, laden Sie die Projektdateien über den Download-Link im Code-Editor herunter.

#### npm

Installieren Sie die Bibliothek:

```bash
npm install --save stripe@18.4.0
```

#### GitHub

Laden Sie den Quellcode der Stripe-Node-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-node/releases/tag/v18.4.0) herunter.

### Stripe-Ruby-Bibliothek installieren

Installieren Sie Stripe Ruby Gem und fordern Sie es in Ihrem Code an. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine Gemfile benötigen, laden Sie die Projektdateien über den Download-Link im Code-Editor herunter.

#### Terminal

Installieren Sie das Gem:

```bash
gem install stripe -v 15.4.0
```

#### Bundler

Fügen Sie diese Zeile zu Ihrer Gemfile hinzu:

```bash
gem 'stripe', '15.4.0'
```

#### GitHub

Laden Sie den Quellcode von Stripe-Ruby Gem direkt [von GitHub](https://github.com/stripe/stripe-ruby/releases/tag/v15.4.0) herunter.

### Stripe Java-Bibliothek installieren

Fügen Sie Ihrem Build die Abhängigkeit hinzu und importieren Sie die Bibliothek. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `pom.xml`-Beispieldatei (für Maven) benötigen, laden Sie die Projektdateien über den Link im Code-Editor herunter.

#### Maven

Fügen Sie Ihrem POM die folgende Abhängigkeit hinzu.

```bash
<dependency>\n<groupId>com.stripe</groupId>\n<artifactId>stripe-java</artifactId>\n<version>29.4.0</version>\n</dependency>
```

#### Gradle

Fügen Sie die Abhängigkeit zu Ihrer `build.gradle`-Datei hinzu.

```bash
implementation "com.stripe:stripe-java:29.4.0"
```

#### GitHub

Laden Sie die JAR-Datei direkt [von GitHub](https://github.com/stripe/stripe-java/releases/tag/v29.4.0) herunter.

### Stripe-Python-Paket installieren

Installieren Sie das Stripe-Paket und importieren Sie es in Ihren Code. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `requirements.txt`-Datei benötigen, laden Sie die Projektdateien über den Link im Code-Editor herunter.

#### pip

Installieren Sie das Paket über pip:

```bash
pip3 install stripe==12.4.0
```

#### GitHub

Laden Sie den Quellcode der Stripe-Python-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-python/releases/tag/v12.4.0) herunter.

### Stripe PHP-Bibliothek installieren

Installieren Sie die Bibliothek mit Composer und initialisieren Sie sie mit Ihrem geheimen API-Schlüssel. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `composer.json`-Datei benötigen, laden Sie die Dateien über den Link im Code-Editor herunter.

#### Composer

Installieren Sie die Bibliothek:

```bash
composer require stripe/stripe-php:17.5.0
```

#### GitHub

Laden Sie den Quellcode der Stripe-PHP-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-php/releases/tag/v17.5.0) herunter.

### Installieren Sie die Stripe Go-Bibliothek

Fügen Sie die Abhängigkeit zu Ihrem Build hinzu und importieren Sie die Bibliothek. Wenn Sie dagegen von Grund auf neu beginnen und eine `go.mod`-Datei benötigen, laden Sie die Projektdateien über den Link im Code-Editor herunter.

#### Go

Initialisieren Sie mit Go-Modulen:

```bash
go get -u github.com/stripe/stripe-go/v82@v82.4.0
```

#### GitHub

Laden Sie den Quellcode des Stripe-Go-Moduls direkt [von GitHub](https://github.com/stripe/stripe-go/releases/tag/v82.4.0) herunter.

### Stripe.net-Bibliothek installieren

Installieren Sie das Paket mit .NET oder NuGet. Wenn Sie aber komplett neu beginnen möchten, laden Sie die Dateien herunter, die eine konfigurierte `.csproj`-Datei enthalten.

#### dotnet

Installieren Sie die Bibliothek:

```bash
dotnet add package Stripe.net --version 48.4.0
```

#### NuGet

Installieren Sie die Bibliothek:

```bash
Install-Package Stripe.net -Version 48.4.0
```

#### GitHub

Laden Sie den Quellcode der Stripe.net-Bibliothek direkt [von GitHub](https://github.com/stripe/stripe-dotnet/releases/tag/v48.4.0) herunter.

### Installieren Sie die Stripe Bibliothek

Installieren Sie die Pakete und importieren Sie sie in Ihren Code. Wenn Sie dagegen von Grund auf neu beginnen möchten und eine `package.json`-Datei benötigen, laden Sie die Projektdateien über den Download-Link im Code-Editor herunter.

Installieren Sie die Bibliotheken:

```bash
npm install --save stripe@18.4.0
```

### Legen Sie Ihre Umgebungsvariablen fest

Fügen Sie Ihren Geheimschlüssel zu einer `.env`-Datei hinzu. Next.js lädt sie automatisch als [Umgebungsvariablen](https://nextjs.org/docs/basic-features/environment-variables) in ihre Anwendung.

### Erstellen Sie einen Endpoint auf Ihrem Server

Fügen Sie einen neuen Endpoint auf Ihrem Server hinzu, den Ihr Client aufrufen kann.

### Delegieren Sie den API-Zugriff auf Ihr verbundenes Konto

Um Anfragen im Namen Ihres verbundenen Kontos zu stellen, übergeben Sie die ID des verbundenen Kontos an die [AccountSessions API](https://docs.stripe.com/api/account_sessions.md).

### Aktivieren Sie bestimmte eingebettete Komponenten für Ihre verbundenen Konten

Geben Sie die integrierten Komponenten an, die Sie für Ihre verbundenen Konten aktivieren möchten. Die vollständige Liste der unterstützten eingebetteten Komponenten finden Sie unter [Mit in Connect integrierten Komponenten loslegen](https://docs.stripe.com/connect/supported-embedded-components.md).

### Erstellen Sie eine AccountSession

Rufen Sie die API `v1/account_sessions` von Ihrem Endpoint aus auf, um eine neue [AccountSession](https://docs.stripe.com/api/account_sessions.md) zu erstellen.

### Das Client-Geheimnis zurückgeben

Geben Sie die Eigenschaft `client_secret` aus der AccountSession in der Antwort zurück.

### Laden Sie das Connect.js-Skript

Importieren Sie das Modul [@stripe/connect-js](https://github.com/stripe/connect-js) und rufen Sie `loadConnectAndInitialize(initParams)` auf, um den Code zu laden, der zum Verbinden Ihres Clients mit Stripe erforderlich ist. Connect.js wird asynchron geladen und gibt eine `StripeConnectInstance` an den Client zurück.

#### npm

Installieren Sie die Bibliothek:

```bash
npm install --save @stripe/connect-js
```

#### GitHub

Laden Sie den Quellcode der @stripe/connect-js-Bibliothek direkt [von GitHub](https://github.com/stripe/connect-js) herunter.

### React Connect.js importieren

Importieren Sie das Modul [@stripe/react-connect-js](https://github.com/stripe/react-connect-js). React Connect.js ist ein schlanker Wrapper um eingebettete Connect-Komponenten, mit dem Sie jeder React-App eingebettete Komponenten hinzufügen können.

#### npm

Installieren Sie die Bibliothek:

```bash
npm install --save @stripe/react-connect-js
```

#### GitHub

Laden Sie den Quellcode der @stripe/react-connect-js-Bibliothek direkt [von GitHub](https://github.com/stripe/react-connect-js) herunter.

### Connect.js initialisieren

`loadConnectAndInitialize(initParams)` gibt ein StripeConnectInstance-Objekt zurück, das zum Erstellen einer StripeConnectInstance verwendet wird. Initialisieren Sie die StripeConnectInstance, indem Sie Ihren [veröffentlichbaren Schlüssel](https://docs.stripe.com/keys.md) und die Funktion `fetchClientSecret` zum Abrufen eines Client-Geheimnisses übergeben.

### In Connect eingebettete Komponenten einschließen

Fügen Sie die eingebetteten Connect-Komponenten zum DOM hinzu. Nach der Initialisierung verarbeitet die StripeConnectInstance Anfragen an Stripe und aktualisiert die Nutzeroberfläche der Webkomponenten. Sie können diese Elemente jederzeit im DOM bereitstellen oder ihre Bereitstellung aufheben und sie mit Ihrem eigenen HTML-Code umschließen, damit sich die inneren Elemente nahtlos in Ihre Seite einfügen.

Nach einer erfolgreichen Initialisierung verwaltet StripeConnectInstance den Kontext für alle in Connect eingebetteten Komponenten in Ihrer Anwendung und verwendet dieses Client-Geheimnis und den veröffentlichbaren Schlüssel, um Stripe zu kontaktieren.

### Optional: Eingebettete Komponenten von Style Connect

[Passen Sie das Erscheinungsbild der in Connect eingebetteten Komponenten an](https://docs.stripe.com/connect/get-started-connect-embedded-components.md#customize-the-look-of-connect-embedded-components), indem Sie bei der Initialisierung die Konfiguration `appearance` an StripeConnect übergeben. Für in Connect eingebettete Komponenten wird bereits die Schriftfamilie des übergeordneten HTML-Elements übernommen. Sie können diese aber auch an den Rest Ihrer Anwendung anpassen, indem Sie das Farbschema Ihres Unternehmens übergeben.
