Stripe Payments & SaaS Billing Systems · Aula

Aproveitando o Stripe Connect para plataformas

Crie marketplaces ou plataformas que facilitem pagamentos entre várias partes usando o Stripe Connect, gerenciando repasses e tarifas.

Aula 2 de 411 etapas

Aproveitando o Stripe Connect para plataformas é uma aula grátis de Stripe Payments & SaaS Billing Systems no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Stripe Payments & SaaS Billing Systems, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Stripe Payments & SaaS Billing Systems inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

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!

Grátis para começar

Aprenda Stripe Payments & SaaS Billing Systems com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
12
Aulas
48

Perguntas Frequentes

A aula “Aproveitando o Stripe Connect para plataformas” é grátis?

Sim — o texto completo de “Aproveitando o Stripe Connect para plataformas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Stripe Payments & SaaS Billing Systems, atualize para CoddyKit PRO. O curso de Stripe Payments & SaaS Billing Systems inclui 4 aulas no total.

O que vou aprender em “Aproveitando o Stripe Connect para plataformas”?

Crie marketplaces ou plataformas que facilitem pagamentos entre várias partes usando o Stripe Connect, gerenciando repasses e tarifas. Você pratica Stripe Payments & SaaS Billing Systems com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Stripe Payments & SaaS Billing Systems?

Nenhuma experiência prévia é necessária. Stripe Payments & SaaS Billing Systems no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Aproveitando o Stripe Connect para plataformas”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Stripe Payments & SaaS Billing Systems?

Sim. Cada aula de Stripe Payments & SaaS Billing Systems inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Integração com sistemas de CRM e ERP
  2. Aproveitando o Stripe Connect para plataformas
  3. Exploração de integrações e plugins de terceiros
  4. Sincronizando dados do Stripe com um armazém de dados
← Voltar para Stripe Payments & SaaS Billing Systems