Java Android:使用Stripe API创建新的客户记录

Java Android:使用Stripe API创建新的客户记录,java,android,stripe-payments,Java,Android,Stripe Payments,我有一个新客户,他正在结账,希望存储他们的卡以备将来使用。如果我读的是正确的,我需要分别打电话给Stripe,一个是用卡创建客户,另一个是用卡收费 问题是。。有没有一种方法可以只使用Android/Java代码而不使用任何后端服务器大小的代码(如PHP、Node.JS等)在Stripe中创建新的客户记录 因为我在Java文档中遇到了问题。我试图遵循文档,但遗憾的是,这些代码在我的Android项目中不起作用(即使我将其添加到build.gradle中,等等) 我对Stripe是新手,所以我没有那

我有一个新客户,他正在结账,希望存储他们的卡以备将来使用。如果我读的是正确的,我需要分别打电话给Stripe,一个是用卡创建客户,另一个是用卡收费

问题是。。有没有一种方法可以只使用Android/Java代码而不使用任何后端服务器大小的代码(如PHP、Node.JS等)在Stripe中创建新的客户记录

因为我在Java文档中遇到了问题。我试图遵循文档,但遗憾的是,这些代码在我的Android项目中不起作用(即使我将其添加到build.gradle中,等等)

我对Stripe是新手,所以我没有那么多知识

这是我试图遵循并应用于我的项目的代码

// Set your secret key: remember to change this to your live secret key in production
// See your keys here: https://dashboard.stripe.com/account/apikeys
Stripe.apiKey = "sk_test_ejKNr41rD0SbiNVxkZOcneG0";

// Token is created using Stripe.js or Checkout!
// Get the payment token submitted by the form:
String token = request.getParameter("stripeToken");

// Create a Customer:
Map<String, Object> customerParams = new HashMap<String, Object>();
customerParams.put("email", "paying.user@example.com");
customerParams.put("source", token);
Customer customer = Customer.create(customerParams);

// Charge the Customer instead of the card:
Map<String, Object> chargeParams = new HashMap<String, Object>();
chargeParams.put("amount", 1000);
chargeParams.put("currency", "eur");
chargeParams.put("customer", customer.getId());
Charge charge = Charge.create(chargeParams);

// YOUR CODE: Save the customer ID and other info in a database for later.

// YOUR CODE (LATER): When it's time to charge the customer again, retrieve the customer ID.
Map<String, Object> chargeParams = new HashMap<String, Object>();
chargeParams.put("amount", 1500); // $15.00 this time
chargeParams.put("currency", "eur");
chargeParams.put("customer", customerId);
Charge charge = Charge.create(chargeParams);
//设置您的密钥:请记住在生产中将其更改为您的实时密钥
//请在此处查看您的钥匙:https://dashboard.stripe.com/account/apikeys
Stripe.apiKey=“sk_test_ejKNr41rD0SbiNVxkZOcneG0”;
//令牌是使用Stripe.js或Checkout创建的!
//获取表单提交的支付令牌:
字符串标记=request.getParameter(“stripeToken”);
//创建客户:
Map customerParams=新HashMap();
customerParams.put(“电子邮件”,“付款”)。user@example.com");
customerParams.put(“源”,令牌);
Customer=Customer.create(customerParams);
//向客户收费,而不是刷卡:
Map chargeParams=new HashMap();
chargeParams.put(“金额”,1000);
chargeParams.put(“货币”、“欧元”);
chargeParams.put(“customer”,customer.getId());
Charge=Charge.create(chargeParams);
//您的代码:将客户ID和其他信息保存在数据库中以备将来使用。
//您的代码(稍后):当再次向客户收费时,检索客户ID。
Map chargeParams=new HashMap();
chargeParams.put(“金额”,1500);//$这次是15点
chargeParams.put(“货币”、“欧元”);
chargeParams.put(“客户”,customerId);
Charge=Charge.create(chargeParams);
有没有一种方法可以只使用Android/Java代码而不使用任何后端服务器大小的代码(如PHP、Node.JS等)在Stripe中创建新的客户记录

不可以。条带只能用于收集和标记客户付款信息。此操作使用可发布的API密钥完成

所有其他操作(例如,使用to或token)都是使用您的密钥完成的,该密钥决不能共享或嵌入到您的移动应用程序中,因为攻击者随后可能会检索该密钥并使用该密钥代表您发出API请求


Stripe确实提供了一个,但它是用于服务器端的,不能从Android移动应用程序中使用。

我明白了。。谢谢你说清楚。我只是想知道是否有一个Android的选项。嗯,我需要求助于Node.js-_-