条纹支付模式 - 没有这样的客户例外
Stripe payment mode - No such customer Exception
我成功地将 Stripe 结帐集成到 Java 网络应用程序中。
我想预填电子邮件和姓名字段。根据文档,我必须创建一个新客户并将其传递给会话。这是代码的相关部分:
Stripe.apiKey = retrieveKey("CLIENT_SECRET_KEY");
Map<String, Object> paramsC = new HashMap<>();
paramsC.put("description", "My First Test Customer (created for API docs)");
paramsC.put("email", "person@example.com");
paramsC.put("name", "some name");
Customer customer = Customer.create(paramsC);
Map<String, Object> params = new HashMap<>();
ArrayList<String> paymentMethodTypes = new ArrayList<>();
paymentMethodTypes.add("card");
params.put("payment_method_types", paymentMethodTypes);
ArrayList<HashMap<String, Object>> lineItems = new ArrayList<>();
HashMap<String, Object> lineItem = new HashMap<>();
lineItem.put("name", "Stainless Steel Water Bottle");
lineItem.put("amount", 8834);
lineItem.put("currency", "eur");
lineItem.put("quantity", 1);
lineItems.add(lineItem);
params.put("line_items", lineItems);
params.put("customer", customer.getId());
params.put("success_url", DOMAIN_URL);
params.put("cancel_url", DOMAIN_URL + "/cancel.xhtml");
RequestOptions requestOptions = RequestOptions.builder().setStripeAccount(CONNECTED_ACCOUNT_ID).build();
session = Session.create(params, requestOptions);
不幸的是我得到了这个错误:
Severe: com.stripe.exception.InvalidRequestException: No such customer: 'cus_****'; code: resource_missing; request-id:
从创建会话的行抛出。
有没有人知道如何解决这个问题。非常感谢。
发生这种情况是因为在结帐会话的 requestOptions
中,您正在设置与 setStripeAccount(CONNECTED_ACCOUNT_ID)
关联的帐户。客户创建没有这个,所以客户是在你的平台账户上创建的,而不是连接的账户。
如果您想在连接的帐户上进行会话,您也需要在那里创建客户。您应该将与 setStripeAccount(CONNECTED_ACCOUNT_ID)
相同的 requestOptions
添加到您的客户创建请求中。
我成功地将 Stripe 结帐集成到 Java 网络应用程序中。
我想预填电子邮件和姓名字段。根据文档,我必须创建一个新客户并将其传递给会话。这是代码的相关部分:
Stripe.apiKey = retrieveKey("CLIENT_SECRET_KEY");
Map<String, Object> paramsC = new HashMap<>();
paramsC.put("description", "My First Test Customer (created for API docs)");
paramsC.put("email", "person@example.com");
paramsC.put("name", "some name");
Customer customer = Customer.create(paramsC);
Map<String, Object> params = new HashMap<>();
ArrayList<String> paymentMethodTypes = new ArrayList<>();
paymentMethodTypes.add("card");
params.put("payment_method_types", paymentMethodTypes);
ArrayList<HashMap<String, Object>> lineItems = new ArrayList<>();
HashMap<String, Object> lineItem = new HashMap<>();
lineItem.put("name", "Stainless Steel Water Bottle");
lineItem.put("amount", 8834);
lineItem.put("currency", "eur");
lineItem.put("quantity", 1);
lineItems.add(lineItem);
params.put("line_items", lineItems);
params.put("customer", customer.getId());
params.put("success_url", DOMAIN_URL);
params.put("cancel_url", DOMAIN_URL + "/cancel.xhtml");
RequestOptions requestOptions = RequestOptions.builder().setStripeAccount(CONNECTED_ACCOUNT_ID).build();
session = Session.create(params, requestOptions);
不幸的是我得到了这个错误:
Severe: com.stripe.exception.InvalidRequestException: No such customer: 'cus_****'; code: resource_missing; request-id:
从创建会话的行抛出。
有没有人知道如何解决这个问题。非常感谢。
发生这种情况是因为在结帐会话的 requestOptions
中,您正在设置与 setStripeAccount(CONNECTED_ACCOUNT_ID)
关联的帐户。客户创建没有这个,所以客户是在你的平台账户上创建的,而不是连接的账户。
如果您想在连接的帐户上进行会话,您也需要在那里创建客户。您应该将与 setStripeAccount(CONNECTED_ACCOUNT_ID)
相同的 requestOptions
添加到您的客户创建请求中。