在Rails上集成Stripe 5.错误:此货币不支持您的卡

时间:2017-03-12 10:11:11

标签: javascript ruby-on-rails ruby stripe-payments ruby-on-rails-5

我已经安装了gem'tripe-rails将条带集成到我的rails项目中。

出于某种原因,Stripe经常给我一个错误,上面写着“这种货币不支持您的卡”。当我使用他们的测试卡时

这是JSON响应正文。

<ItemGroup>
    <PublishFile Remove="directory\**" />
</ItemGroup>

我的订单管理员。

 {
  "error": {
  "message": "Your card is not supported for this currency.",
  "type": "card_error",
  "param": "number",
  "code": "card_declined",
  "decline_code": "currency_not_supported"
 }
}

提交条形付款的表单。

 def create
   @order = Order.new(product_id: params[:product_id])
   @product = Product.find(params[:product_id])
   stripe_token = params[:stripeToken]
   payment_type = params[:stripeTokenType]
   customer_email = params[:stripeEmail]
   Stripe.api_key = Rails.configuration.stripe.secret_key
   Stripe::Charge.create (
   amount: @product.price* 100,
   currency:"sgd",
   source: stripe_token
   )
 end

我添加了Stripe在application.html.erb中提供的javascript脚本标记

                 <%= form_for [@product, Order.new], method: :post do %>
                  <script
                    src="https://checkout.stripe.com/checkout.js" class="stripe-button"
                    data-key="pk_test_pTJ7JEFGxnr5gdgtDG33ZhTt"
                    data-amount=<%= @product.price * 100 %>
                    data-name="Fruit Ninja"
                    data-description="Buy <%= @product.name %>"
                    data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
                    data-locale="auto">
                  </script>
                <% end %>

我已经尝试了所有的测试卡,但似乎被抛出相同的错误。

2 个答案:

答案 0 :(得分:1)

感谢大家的回复。我意识到在商业环境中将我的国家改为美国解决了这个问题。由于某些原因,条纹测试卡在新加坡不起作用。我已尝试过每张卡片,包括

4000007020000003

返回错误。唯一明显的解决方案是改变我的位置。我通过电子邮件发送了条带支持。

答案 1 :(得分:0)

根据Stripe docs,如果您想使用SGD(新加坡元)进行测试,则需要使用测试卡4000007020000003。查看那里的“亚太”标签了解具体细节。