我正在我的应用程序中集成Stripe Payment模块。在那我用Stripe Library.
现在使用此代码我生成令牌。使用此令牌,我需要卡id
before payment
。
How to get this card id'. ?
这里我向您展示Stripe的回应。
当我输入关于卡的卡信息时这样:
Stripe_Token::create(array(
"card" => array(
"number" => "4242424242424242",
"exp_month" => 8,
"exp_year" => 2015,
"cvc" => "314"
)
));
之后Stripe给我这个回复:
{
"id": "tok_14WdJ02eZvKYlo2CyaZ49ZP7",
"livemode": false,
"created": 1409272314,
"used": false,
"object": "token",
"type": "card",
"card": {
"id": "card_14WdJ02eZvKYlo2C5nE5XjtP",
"object": "card",
"last4": "4242",
"brand": "Visa",
"funding": "credit",
"exp_month": 8,
"exp_year": 2015,
"fingerprint": "Xt5EWLLDS7FJjR1c",
"country": "US",
"name": null,
"address_line1": null,
"address_line2": null,
"address_city": null,
"address_state": null,
"address_zip": null,
"address_country": null,
"customer": null
}
}
付款前和创建令牌之后 我需要这张卡片ID:
"card": {
"id": "card_14WdJ02eZvKYlo2C5nE5XjtP",
}
希望你能得到我的问题。
答案 0 :(得分:4)
正如您在条带的响应中所看到的,您可以简单地从您获得的令牌对象获取您的卡ID和所有其他字段,如下所示:
String card_id = token.getCard().getId(); // to get card id
String id = token.getId(); // to get this "id": "tok_14WdJ02eZvKYlo2CyaZ49ZP7"
boolean live_mode = token.getLivemode(); // to get livemode
String last_four = token.getCard().getLast4(); // to get last 4
其中令牌是响应对象。
答案 1 :(得分:2)
生成令牌后 使用这个......
Customer.all(new HashMap<String, Object>());
最后使用这个我得到了我想要的Cardid。
以下是客户的总回复。
{
"data": [
com.stripe.model.Customer JSON: {
"object": "customer",
"created": 1410001523,
"id": "cus_4j9JlwfZ5arO4M",
"livemode": false,
"description": null,
"email": "customer@example.com",
"delinquent": false,
"metadata": {
},
"subscriptions": {
"object": "list",
"total_count": 0,
"has_more": false,
"url": "/v1/customers/cus_4j9JlwfZ5arO4M/subscriptions",
"data": [
]
},
"discount": null,
"account_balance": 0,
"currency": "usd",
"cards": {
"object": "list",
"total_count": 1,
"has_more": false,
"url": "/v1/customers/cus_4j9JlwfZ5arO4M/cards",
"data": [
{
"id": "card_14Zh0M2eZvKYlo2CAl9gQ262",
"object": "card",
"last4": "4242",
"brand": "Visa",
"funding": "credit",
"exp_month": 12,
"exp_year": 2015,
"fingerprint": "Xt5EWLLDS7FJjR1c",
"country": "US",
"name": "akinci_yasin@hotmail.com",
"address_line1": null,
"address_line2": null,
"address_city": null,
"address_state": null,
"address_zip": null,
"address_country": null,
"cvc_check": null,
"address_line1_check": null,
"address_zip_check": null,
"customer": "cus_4j9JlwfZ5arO4M"
}
]
},
"default_card": "card_14Zh0M2eZvKYlo2CAl9gQ262"
},
#<com.stripe.model.Customer[...] ...>,
#<com.stripe.model.Customer[...] ...>
],
"has_more": false
}
希望它对你有所帮助。 谢谢
答案 2 :(得分:1)
package gson.sample.one;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
public class gsonsample
{
public class card {
public String id;
public String object;
public String last4;
public String brand;
public String funding;
public int exp_month;
public int exp_year;
public String fingerprint;
public String country;
public String name;
public String address_line1;
public String address_line2;
public String address_city;
public String address_state;
public String address_zip;
public String address_country;
public String customer;
}
public class Response {
public String id;
public Boolean livemode;
public int created;
public String object;
public String type;
public card card;
}
public static void main(String [] args)
{
String json = "{ \"id\": \"tok_14WdJ02eZvKYlo2CyaZ49ZP7\", \"livemode\": false, \"created\": 1409272314, \"used\": false, \"object\": \"token\", \"type\": \"card\", \"card\": { \"id\": \"card_14WdJ02eZvKYlo2C5nE5XjtP\", \"object\": \"card\", \"last4\": \"4242\", \"brand\": \"Visa\", \"funding\": \"credit\", \"exp_month\": 8, \"exp_year\": 2015, \"fingerprint\": \"Xt5EWLLDS7FJjR1c\", \"country\": \"US\", \"name\": null, \"address_line1\": null, \"address_line2\": null, \"address_city\": null, \"address_state\": null, \"address_zip\": null, \"address_country\": null, \"customer\": null } }";
//
Gson gson = new GsonBuilder().create();
Response response = gson.fromJson(json, Response.class);
String id = response.card.id;
System.out.println(id);
}
}
Stripe还在Java API的模型定义和unit tests中的用法示例中定义了这些对象。