0Pricing
Stripe Payments & SaaS Billing Systems · Урок

Использование Stripe Connect для платформ

Создавайте торговые площадки и платформы для проведения платежей между несколькими сторонами с помощью Stripe Connect, обрабатывая выплаты и комиссии.

«Использование Stripe Connect для платформ» — бесплатный урок Stripe Payments & SaaS Billing Systems на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Stripe Payments & SaaS Billing Systems, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Stripe Payments & SaaS Billing Systems содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

What is Stripe Connect?

Stripe Connect is a powerful solution for platforms and marketplaces. It allows you to facilitate payments between buyers and sellers, manage payouts, and handle the financial complexity of multi-party transactions.

Think of platforms like Shopify, DoorDash, or Etsy. They all use Connect (or similar solutions) to manage payments for their merchants or service providers.

Powering Your Platform

Connect simplifies many challenges for platforms:

  • Onboarding: Easily register sellers/service providers.
  • Payment Processing: Collect payments from customers on behalf of others.
  • Payouts: Distribute funds to your connected accounts.
  • Compliance: Stripe handles many regulatory and PCI DSS requirements for you.

Connect Account Types

Stripe Connect offers three main account types to fit different platform needs:

  • Standard: For platforms needing minimal involvement in connected accounts.
  • Express: For platforms that want more control over the user experience.
  • Custom: For platforms that need full control and customization.

Each type offers a different balance of control and responsibility.

The Simple Standard Account

Standard accounts are the simplest. Your connected accounts have their own full Stripe accounts and dashboards.

The platform directs users to Stripe to complete their onboarding. Stripe handles their compliance, support, and direct communication.

You direct payments to them and can take an application fee.

Creating a Standard Account Link

To onboard a Standard account, you create an AccountLink. This generates a URL that your user visits to complete their Stripe account setup. Here's how you'd initiate that on your backend:

import com.stripe.Stripe;
import com.stripe.model.AccountLink;
import com.stripe.param.AccountLinkCreateParams;

public class Main {
  public static void main(String[] args) {
    // In a real application, set your secret key securely.
    // Stripe.apiKey = "sk_test_YOUR_SECRET_KEY";

    // Simulate creating a new account first (usually done via Account.create)
    String connectedAccountId = "acct_example_standard"; // Placeholder ID

    AccountLinkCreateParams params = AccountLinkCreateParams.builder()
      .setAccount(connectedAccountId)
      .setRefreshUrl("https://your-platform.com/reauth")
      .setReturnUrl("https://your-platform.com/return")
      .setType(AccountLinkCreateParams.Type.ACCOUNT_ONBOARDING)
      .build();

    // In a live environment, you'd call:
    // AccountLink accountLink = AccountLink.create(params);
    // System.out.println("Generated Account Link URL: " + accountLink.getUrl());

    System.out.println("Simulated Account Link Creation for ID: " + connectedAccountId);
    System.out.println("Users would be redirected to Stripe to complete setup.");
    System.out.println("A real link would look like: https://connect.stripe.com/setup/acct_... ");
  }
}

Payments to Connected Accounts

When a customer pays on your platform, you collect the payment and then transfer the appropriate amount to the connected account. Stripe Connect offers different charge types for this:

  • Direct Charges: The customer's payment goes directly to the connected account, and you take a fee.
  • Destination Charges: The payment is made to your platform account, and then a portion is transferred to the connected account.

We'll focus on Destination Charges as they give platforms more control over funds.

Processing a Destination Charge

With a destination charge, you create a PaymentIntent on your platform's account and specify the transfer_data to indicate which connected account receives the funds.

The amount in transfer_data is what the connected account receives.

import com.stripe.Stripe;
import com.stripe.model.PaymentIntent;
import com.stripe.param.PaymentIntentCreateParams;

public class Main {
  public static void main(String[] args) {
    // Stripe.apiKey = "sk_test_YOUR_SECRET_KEY"; // Your platform's secret key

    String customerId = "cus_example"; // A customer on your platform
    String connectedAccountId = "acct_example_standard"; // The seller's account

    PaymentIntentCreateParams params = PaymentIntentCreateParams.builder()
      .setCurrency("usd")
      .setAmount(2000L) // Total amount: $20.00
      .addPaymentMethodType("card")
      .setCustomer(customerId)
      .setTransferData(
        PaymentIntentCreateParams.TransferData.builder()
          .setDestination(connectedAccountId)
          .setAmount(1800L) // $18.00 goes to the connected account
          .build()
      )
      .build();

    // In a live environment, you'd call:
    // PaymentIntent paymentIntent = PaymentIntent.create(params);
    // System.out.println("PaymentIntent created: " + paymentIntent.getId());

    System.out.println("Simulated PaymentIntent for $20.00.");
    System.out.println("  $18.00 would be transferred to connected account: " + connectedAccountId);
    System.out.println("  Your platform retains $2.00 as an application fee.");
  }
}

Earning Your Platform Fee

In the previous example, your platform automatically retained the difference between the PaymentIntent amount ($20.00) and the transfer_data.amount ($18.00). This difference ($2.00) is your application fee.

Stripe handles the splitting of funds automatically. This simplifies your accounting and ensures your platform earns its share with each transaction.

Initiating Programmatic Payouts

While Standard accounts can manage their own payouts, you might need to initiate a payout programmatically (e.g., for specific platform rules or refunds). You can create a Transfer object to send funds from your platform to a connected account.

import com.stripe.Stripe;
import com.stripe.model.Transfer;
import com.stripe.param.TransferCreateParams;

public class Main {
  public static void main(String[] args) {
    // Stripe.apiKey = "sk_test_YOUR_SECRET_KEY"; // Your platform's secret key

    String connectedAccountId = "acct_example_standard"; // The recipient account

    TransferCreateParams params = TransferCreateParams.builder()
      .setAmount(5000L) // Amount to transfer: $50.00
      .setCurrency("usd")
      .setDestination(connectedAccountId)
      .build();

    // In a live environment, you'd call:
    // Transfer transfer = Transfer.create(params);
    // System.out.println("Transfer created: " + transfer.getId());

    System.out.println("Simulated Transfer for $50.00 to account: " + connectedAccountId);
    System.out.println("This moves funds from your platform to the connected account.");
  }
}

Choose the Connect Type

Which Stripe Connect account type offers the most direct control for the platform over the user's experience and onboarding flow, requiring the platform to manage more compliance?

Connect Powering Platforms

In this lesson, we explored Stripe Connect, a vital tool for building multi-party platforms and marketplaces.

You learned about the different Connect account types (Standard, Express, Custom), with a focus on Standard accounts. We covered how to onboard connected accounts using AccountLink, collect payments via destination charges, and manage your platform's application fees.

Connect handles much of the complexity, allowing you to focus on your platform's core features!

Часто задаваемые вопросы

Урок «Использование Stripe Connect для платформ» бесплатный?

Да — полный текст урока «Использование Stripe Connect для платформ» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Stripe Payments & SaaS Billing Systems, подпишись на CoddyKit PRO. Курс Stripe Payments & SaaS Billing Systems содержит 4 уроков всего.

Чему я научусь в уроке «Использование Stripe Connect для платформ»?

Создавайте торговые площадки и платформы для проведения платежей между несколькими сторонами с помощью Stripe Connect, обрабатывая выплаты и комиссии. Ты практикуешь Stripe Payments & SaaS Billing Systems с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Stripe Payments & SaaS Billing Systems?

Предыдущий опыт не требуется. Stripe Payments & SaaS Billing Systems на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Использование Stripe Connect для платформ»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Stripe Payments & SaaS Billing Systems?

Да. Каждый урок Stripe Payments & SaaS Billing Systems включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Интеграция с системами CRM и ERP
  2. Использование Stripe Connect для платформ
  3. Изучение сторонних интеграций и плагинов
  4. Синхронизация данных Stripe с хранилищем данных
← Назад к Stripe Payments & SaaS Billing Systems