Stripe Payments & SaaS Billing Systems · 课时

集成国际支付方式

探索并集成信用卡以外的各种国际支付方式,例如 SEPA、iDEAL 和 AliPay。

第 2 / 4 课12 个步骤

集成国际支付方式 是 CoddyKit 上的免费 Stripe Payments & SaaS Billing Systems 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Stripe Payments & SaaS Billing Systems 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Stripe Payments & SaaS Billing Systems 课程共包含 4 节课。

本课时的部分内容尚未翻译,以英文显示。

Go Global with Payments

Expanding your business internationally means reaching customers with diverse payment preferences. While credit cards are common, many regions rely heavily on alternative payment methods (APMs).

This lesson explores how to integrate popular international payment methods like SEPA, iDEAL, and AliPay using Stripe, helping you cater to a global audience.

Understanding Alternative Payments

Alternative Payment Methods (APMs) are non-card payment options. These include bank transfers, digital wallets, local payment schemes, and more.

  • Local Preference: Many customers prefer APMs familiar to their region.
  • Higher Conversion: Offering preferred methods can increase sales.
  • Lower Fees: Some APMs have lower transaction fees than cards.
  • Fraud Reduction: Certain APMs, like bank transfers, can have lower fraud rates.

SEPA Direct Debit Explained

SEPA Direct Debit is a popular payment method across the Single Euro Payments Area (Europe). It allows you to collect funds directly from a customer's bank account.

  • Recurring Payments: Ideal for subscriptions and recurring billing.
  • Bank-to-Bank: Funds are transferred directly between bank accounts.
  • Authorization: Requires a customer's authorization (mandate) to debit their account.

It's asynchronous, meaning the payment isn't confirmed instantly.

SEPA Direct Debit Integration

To integrate SEPA Direct Debit, you typically create a Payment Intent on your server, specifying sepa_debit as a payment method type. You'll need the customer's IBAN (International Bank Account Number).

Try running this example of creating a Payment Intent for SEPA:

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"; // Replace with your actual key

    try {
      PaymentIntentCreateParams params =
        PaymentIntentCreateParams.builder()
          .setAmount(1099L) // Amount in cents (e.g., €10.99)
          .setCurrency("eur")
          .addPaymentMethodType("sepa_debit")
          .setPaymentMethodData(
            PaymentIntentCreateParams.PaymentMethodData.builder()
              .setType(
                PaymentIntentCreateParams.PaymentMethodData.Type.SEPA_DEBIT
              )
              .setSepaDebit(
                PaymentIntentCreateParams.PaymentMethodData.SepaDebit.builder()
                  .setIban("DE89370400440532013000") // Example IBAN
                  .build()
              )
              .setBillingDetails(
                PaymentIntentCreateParams.PaymentMethodData.BillingDetails.builder()
                  .setEmail("jenny.rosen@example.com")
                  .setName("Jenny Rosen")
                  .build()
              )
              .build()
          )
          .setConfirm(true) // Confirm the PaymentIntent immediately
          .build();

      PaymentIntent paymentIntent = PaymentIntent.create(params);
      System.out.println("SEPA PaymentIntent created: " + paymentIntent.getId());
      System.out.println("Status: " + paymentIntent.getStatus());
    } catch (Exception e) {
      System.err.println("Error: " + e.getMessage());
    }
  }
}

Understanding iDEAL Payments

iDEAL is the most popular online payment method in the Netherlands, enabling customers to pay directly from their bank account.

  • Instant Authorization: Payments are authorized in real-time.
  • Bank Redirect: Customers are redirected to their bank's online environment.
  • No Chargebacks: iDEAL payments are guaranteed and cannot be reversed by the customer.

It's a single-use, push-based payment method.

iDEAL Integration Example

To accept iDEAL, you create a Payment Intent with ideal as a payment method type. Stripe handles the redirection to the customer's bank.

Here's how you might create an iDEAL Payment Intent on your server:

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"; // Replace with your actual key

    try {
      PaymentIntentCreateParams params =
        PaymentIntentCreateParams.builder()
          .setAmount(1500L) // Amount in cents (e.g., €15.00)
          .setCurrency("eur")
          .addPaymentMethodType("ideal")
          .setReturnUrl("https://example.com/return") // URL to redirect after payment
          .setPaymentMethodData(
            PaymentIntentCreateParams.PaymentMethodData.builder()
              .setType(
                PaymentIntentCreateParams.PaymentMethodData.Type.IDEAL
              )
              .setIdeal(
                PaymentIntentCreateParams.PaymentMethodData.Ideal.builder()
                  .setBank("ing") // Optional: Pre-select bank, e.g., 'ing', 'rabobank'
                  .build()
              )
              .setBillingDetails(
                PaymentIntentCreateParams.PaymentMethodData.BillingDetails.builder()
                  .setName("Jane Doe")
                  .build()
              )
              .build()
          )
          .build();

      PaymentIntent paymentIntent = PaymentIntent.create(params);
      System.out.println("iDEAL PaymentIntent created: " + paymentIntent.getId());
      System.out.println("Client Secret: " + paymentIntent.getClientSecret());
      System.out.println("Next Action URL: " +
        paymentIntent.getNextAction().getRedirectToUrl().getUrl());
    } catch (Exception e) {
      System.err.println("Error: " + e.getMessage());
    }
  }
}

AliPay & WeChat Pay in Asia

AliPay and WeChat Pay are dominant digital wallet payment methods in China and widely used across Asia.

  • Mobile-First: Primarily used via QR codes on mobile devices.
  • Instant Payments: Transactions are confirmed in real-time.
  • Wide Adoption: Essential for targeting customers in China and other Asian markets.

These methods are also push-based, requiring customer authentication through their mobile app.

AliPay Integration Example

Integrating AliPay involves creating a Payment Intent with alipay as a payment method type. The customer will typically scan a QR code to authorize the payment.

Here's how to create an AliPay Payment Intent:

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"; // Replace with your actual key

    try {
      PaymentIntentCreateParams params =
        PaymentIntentCreateParams.builder()
          .setAmount(2000L) // Amount in cents (e.g., $20.00)
          .setCurrency("usd") // AliPay can support various currencies
          .addPaymentMethodType("alipay")
          .setReturnUrl("https://example.com/return") // URL to redirect after payment
          .build();

      PaymentIntent paymentIntent = PaymentIntent.create(params);
      System.out.println("AliPay PaymentIntent created: " + paymentIntent.getId());
      System.out.println("Client Secret: " + paymentIntent.getClientSecret());
      System.out.println("Next Action Type: " +
        paymentIntent.getNextAction().getType());
      // In a real app, you'd show the QR code or redirect URL to the user
    } catch (Exception e) {
      System.err.println("Error: " + e.getMessage());
    }
  }
}

General APM Integration Flow

While each APM has specifics, the general integration flow with Stripe often follows these steps:

  1. Server-side: Create a PaymentIntent specifying the desired APM (e.g., sepa_debit, ideal, alipay).
  2. Client-side: Use Stripe.js to confirm the PaymentIntent, often involving user redirection or displaying a QR code.
  3. Customer Action: The customer authenticates or completes the payment on their bank or wallet app.
  4. Server-side: Handle webhooks for asynchronous status updates (e.g., payment_intent.succeeded, payment_intent.payment_failed).

APM Best Practices

Integrating APMs effectively requires attention to a few best practices:

  • Handle Asynchronicity: Many APMs are not instant. Rely on webhooks for final payment status.
  • Clear User Experience: Guide users through redirects and authentication steps clearly.
  • Error Handling: Implement robust error handling for payment failures and cancellations.
  • Localization: Display payment options and messages in the customer's local language.

Always test extensively in Stripe's test mode.

Check Your Knowledge

Which of the following statements about Alternative Payment Methods (APMs) and their integration with Stripe are TRUE?

Recap: Global Payments

You've learned about the importance of integrating international payment methods to serve a global customer base. We covered:

  • What APMs are and why they are crucial.
  • Specifics of SEPA Direct Debit, iDEAL, and AliPay/WeChat Pay.
  • How to integrate these methods using Stripe's Payment Intents API with runnable code examples.
  • General integration flows and best practices for handling APMs.

By offering these diverse options, you can significantly improve conversion rates and customer satisfaction worldwide!

免费开始

用 AI 导师学习 Stripe Payments & SaaS Billing Systems — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
12
课程
48

常见问题解答

「集成国际支付方式」课时是免费的吗?

是的 — 「集成国际支付方式」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Stripe Payments & SaaS Billing Systems 课程的其余内容,请升级到 CoddyKit PRO。 Stripe Payments & SaaS Billing Systems 课程共包含 4 节课。

「集成国际支付方式」这节课中我会学到什么?

探索并集成信用卡以外的各种国际支付方式,例如 SEPA、iDEAL 和 AliPay。 你通过在浏览器中直接运行的动手代码来练习 Stripe Payments & SaaS Billing Systems,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Stripe Payments & SaaS Billing Systems 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Stripe Payments & SaaS Billing Systems 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「集成国际支付方式」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Stripe Payments & SaaS Billing Systems 课中编写并运行代码吗?

能。每节 Stripe Payments & SaaS Billing Systems 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 支持多种货币与定价
  2. 集成国际支付方式
  3. 全球合规与本地化法规
  4. 货币兑换、FX 风险与结算
← 返回 Stripe Payments & SaaS Billing Systems