条带:在订阅时设置连接帐户时出现问题
stripe: problems setting connected account on subscription
我在为 Stripe 订阅添加金额费用时遇到了一些问题。查看 this documentation 我应该可以在创建订阅时添加一个关联帐户,这样我就可以在订阅上设置申请费,而无需在之后对其进行任何修改。
我正在尝试在创建订阅时使用 RequestOptions 来添加连接的条带帐户,但似乎如果我使用它,它会重定向到真实帐户,并且找不到我正在使用的发出请求的客户失败。
这里是整个过程的代码:
attachPayMethodToCustomer(bookingDetails.getPaymentMethod(), user.getCustomerId());
Price price = getPriceForItem(item, bookingDetails.isExclusive());
SubscriptionCreateParams.Item item = SubscriptionCreateParams.Item.builder()
.setQuantity(1L)
.setPrice(price.getId())
.build();
BigDecimal bd = new BigDecimal(calculateSubscriptionFee(price.getUnitAmount() / 100, bookingDetails.isRecorded()), new MathContext(2, RoundingMode.HALF_UP));
SubscriptionCreateParams.Builder params = SubscriptionCreateParams.builder()
.setCustomer(user.getCustomerId())
.setApplicationFeePercent(bd)
.addItem(item);
if (bookingDetails.hasExtras()) {
Price recordPrice = getExtrasPrice(seller().getCurrency());
SubscriptionCreateParams.Item extraItem = SubscriptionCreateParams.Item.builder()
.setQuantity(1L)
.setPrice(extraPrice.getId())
.build();
params.addItem(extraItem);
}
RequestOptions ro = new RequestOptions.RequestOptionsBuilder()
.setStripeAccount(seller.getStripeAccountId())
.build();
Subscription subscription = Subscription.create(params.build(), ro);
我在尝试创建订阅时收到此异常:
com.stripe.exception.InvalidRequestException: 没有这样的客户: 'cus_IaFZjrBAlBsXXX';代码:resource_missing; request-id: req_C67JN4tgneXXXX 但我可以在仪表板上看到客户。我也尝试覆盖条纹 api 键以使用测试键,但我有同样的问题。
非常感谢,
阿德里安
在与 Stripe 支持人员交谈后,我似乎以错误的方式进行了操作。
为此,他们有不同的方式来称呼目的地费用(这里是 the link)
基本上,不是使用 RequestOptions,而是在订阅中有一个名为 TransferData 的选项,您可以在其中放置连接的帐户 ID。这是他们网站上的示例
SubscriptionCreateParams params = SubscriptionCreateParams.builder()
.setCustomer("cus_XXXXXXX")
.addItem(SubscriptionCreateParams.Item.builder()
.setPrice("price_XXXXX")
.build())
.setTransferData(
SubscriptionCreateParams.TransferData.builder()
.setDestination("{{CONNECTED_STRIPE_ACCOUNT_ID}}")
.build())
.addExpand("latest_invoice.payment_intent")
.build();
Subscription subscription = Subscription.create(params);
非常感谢 Stripe 支持团队!
我在为 Stripe 订阅添加金额费用时遇到了一些问题。查看 this documentation 我应该可以在创建订阅时添加一个关联帐户,这样我就可以在订阅上设置申请费,而无需在之后对其进行任何修改。
我正在尝试在创建订阅时使用 RequestOptions 来添加连接的条带帐户,但似乎如果我使用它,它会重定向到真实帐户,并且找不到我正在使用的发出请求的客户失败。
这里是整个过程的代码:
attachPayMethodToCustomer(bookingDetails.getPaymentMethod(), user.getCustomerId());
Price price = getPriceForItem(item, bookingDetails.isExclusive());
SubscriptionCreateParams.Item item = SubscriptionCreateParams.Item.builder()
.setQuantity(1L)
.setPrice(price.getId())
.build();
BigDecimal bd = new BigDecimal(calculateSubscriptionFee(price.getUnitAmount() / 100, bookingDetails.isRecorded()), new MathContext(2, RoundingMode.HALF_UP));
SubscriptionCreateParams.Builder params = SubscriptionCreateParams.builder()
.setCustomer(user.getCustomerId())
.setApplicationFeePercent(bd)
.addItem(item);
if (bookingDetails.hasExtras()) {
Price recordPrice = getExtrasPrice(seller().getCurrency());
SubscriptionCreateParams.Item extraItem = SubscriptionCreateParams.Item.builder()
.setQuantity(1L)
.setPrice(extraPrice.getId())
.build();
params.addItem(extraItem);
}
RequestOptions ro = new RequestOptions.RequestOptionsBuilder()
.setStripeAccount(seller.getStripeAccountId())
.build();
Subscription subscription = Subscription.create(params.build(), ro);
我在尝试创建订阅时收到此异常:
com.stripe.exception.InvalidRequestException: 没有这样的客户: 'cus_IaFZjrBAlBsXXX';代码:resource_missing; request-id: req_C67JN4tgneXXXX 但我可以在仪表板上看到客户。我也尝试覆盖条纹 api 键以使用测试键,但我有同样的问题。
非常感谢, 阿德里安
在与 Stripe 支持人员交谈后,我似乎以错误的方式进行了操作。
为此,他们有不同的方式来称呼目的地费用(这里是 the link)
基本上,不是使用 RequestOptions,而是在订阅中有一个名为 TransferData 的选项,您可以在其中放置连接的帐户 ID。这是他们网站上的示例
SubscriptionCreateParams params = SubscriptionCreateParams.builder()
.setCustomer("cus_XXXXXXX")
.addItem(SubscriptionCreateParams.Item.builder()
.setPrice("price_XXXXX")
.build())
.setTransferData(
SubscriptionCreateParams.TransferData.builder()
.setDestination("{{CONNECTED_STRIPE_ACCOUNT_ID}}")
.build())
.addExpand("latest_invoice.payment_intent")
.build();
Subscription subscription = Subscription.create(params);
非常感谢 Stripe 支持团队!