10

我在任何地方都没有看到 Stripes API 中描述的这个特定错误。有谁知道发生了什么?

这是我创建客户的 VB.net 代码:

Function CreateStripeCustomer(ByVal Token As String) As String
    ''  The Stripe Account API Token - change this for testing 
    Dim STR_Stripe_API_Token As String = "sk_test_SECRET_TEST_KEY" '<-- test secret key. Change to live later.
    ''The Stripe API URL
    Dim STR_Stripe_API_URL As String = "https://api.stripe.com/v1/customers"
    ''Creates a Web Client
    Dim OBJ_Webclient As New System.Net.WebClient()
    ''Creates Credentials
    Dim OBJ_Credentials As New System.Net.NetworkCredential(STR_Stripe_API_Token, "MY_STRIPE.COM_PASSWORD")
    ''Sets the Credentials on the Web Client
    OBJ_Webclient.Credentials = OBJ_Credentials
    ''Creates a Transaction with Data that Will be Sent to Stripe
    Dim OBJ_Transaction As New System.Collections.Specialized.NameValueCollection()
    OBJ_Transaction.Add("email", "PERFECTLY_VALID_EMAIL")
    OBJ_Transaction.Add("card", "PERFECTLY VALID TOKEN RETURNED BY STRIPE.JS")
    ''The Stripe Response String
    Dim STR_Response As String = Encoding.ASCII.GetString(OBJ_Webclient.UploadValues(STR_Stripe_API_URL, OBJ_Transaction))
    Return STR_Response
End Function

402“需要付款”错误在线发生:

Dim STR_Response As String = Encoding.ASCII.GetString(OBJ_Webclient.UploadValues(STR_Stripe_API_URL, OBJ_Transaction))
4

5 回答 5

10

如果您在现场看到这一点,卡号也可能是不正确的,例如:如果您检查 402 响应的正文:

在此处输入图像描述

于 2015-04-24T14:04:59.713 回答
8

好吧,我切换到我的“LIVE”键而不是“TEST”键,并且修复了它。只是浪费了我生命中的 3 个小时试图解决这个问题。希望这对其他人有帮助。

于 2013-10-08T05:27:51.833 回答
6

更正确的答案是你需要使用合适的测试卡号。见https://stripe.com/docs/testing

于 2015-02-02T23:09:59.743 回答
2

对于 iOS

如果您正在学习Ray Wunderlich 网站上的教程,则可能出现错误的原因是您运行了测试后端(web.rb 文件),然后添加了 TEST_SECRET_KEY。

转到终端单击control+C,确保您已经添加了 TEST_SECRET_KEY,保存文件并执行ruby​​ web.rb

目前,一切都应该正常。

作为参考,我使用这个卡号进行测试:4242 4242 4242 4242

于 2018-06-25T18:05:39.630 回答
2

Stripe 提供了一个测试环境,您可以在其中使用测试可发布/秘密密钥,而不是等到生产。然而,看起来不利的一面,实际上非常有用的是,您需要遵守 Stripe 的测试条件并使用他们给定的卡号和输入来测试您的 api 调用的不同方面。

例如,为了接收某些错误,您可以输入这些数字:

card_declined: Use this special card number - 4000000000000002.
incorrect_number: Use a number that fails the Luhn check, e.g. 4242424242424241.
invalid_expiry_month: Use an invalid month e.g. 13.
invalid_expiry_year: Use a year in the past e.g. 1970.
invalid_cvc: Use a two digit number e.g. 99.

有关更多信息,请参阅 Samir 发布的链接。

于 2015-08-05T21:33:09.477 回答