当前位置: 首页 > 知识库问答 >
问题:

Laravel条纹和收银员没有这种付款方式

柴砚文
2023-03-14

我正在使用Laravel 7,我正在将stripe与出纳集成,我面临着这个问题

No such PaymentMethod: 'tok_1HBxFdEft5GkDC4v7ZnPgW5Y'

我正在使用自定义的签出表单Html代码是

<form class="rt-formtheme rt-paymentmethodform" method="POST" action="{{route('subscripe.process')}}" id="subscribe-form">
                    @csrf
                    <div class="div-stripe-errors col-12" style="margin-top: 30px;"></div>
                    <fieldset>
                        <legend>Choose your card</legend>
                        <!-- <div class="form-group">
                            <button type="submit" class="rt-btn rt-savebtn">Save</button>
                        </div> -->
                        <div class="form-group">
                            <span class="rt-radio">
                                <input type="radio" name="radiobutton" id="visa">
                                <label for="visa"><img src="{{asset('images/visa.png')}}"  alt=""></label>
                            </span>
                        </div>
                        <div class="form-group">
                            <span class="rt-radio">
                                <input type="radio" name="radiobutton" id="american-express">
                                <label for="american-express"><img src="{{asset('images/american-express.png')}}"  alt=""></label>
                            </span>
                        </div>
                        <div class="form-group">
                            <label>Card Number</label>
                            <input type="text" name="cardnumber" class="form-control" placeholder="1234 5678 9012 3456" data-stripe="number">
                        </div>
                        <div class="rt-twocols">
                            <div class="form-group">
                                <div class="rt-twoinputfieldholder">
                                    <div class="rt-twoinputfieldbox">
                                        <label>Expiry Month</label>
                                        <input type="text" name="expirymonth" class="form-control" placeholder="MM" data-stripe="exp-month">
                                    </div>
                                    <div class="rt-twoinputfieldbox">
                                        <label>Expiry Year</label>
                                        <input type="text" name="expiryyear" class="form-control" placeholder="YY" data-stripe="exp-year">
                                    </div>
                                </div>
                            </div>
                            <div class="form-group">
                                <label>CVC</label>
                                <input type="text" name="cvv" class="form-control" placeholder="123" data-stripe="cvc">
                            </div>
                        </div>
                        <div class="form-group margin-zero rt-savecarddetailbox">
                            <span class="rt-checkbox">
                                <input type="checkbox" name="savecarddetail" id="savecarddetail">
                                <label for="savecarddetail">Save Card Details</label>
                            </span>
                            <button type="submit" class="rt-btn float-right">Checkout</button>
                        </div>
                    </fieldset>
                </form>

js代码是

<script src="https://js.stripe.com/v2/"></script>
<script>
Stripe.setPublishableKey('{{ env("STRIPE_KEY") }}');
$(document).ready(function(){
    $('#subscribe-form').submit(function(e){
        
        var form = $(this);
        
        form.find('button').prop('disabled', true);

        Stripe.card.createToken(form, function(status, response) {
            if (response.error) {
                form.find('.div-stripe-errors').text(response.error.message).addClass('alert alert-danger');
                form.find('button').prop('disabled', false);
            } else {
                // append the token to the form
                form.append($('<input type="hidden" name="cc_token">').val(response.id));
                // debugger
                // submit the form
                form.get(0).submit();
            }
        });

        e.preventDefault();
    });
});

路线是

    Route::post('/subscribe_process', 'Dashboard\CheckoutController@subscribeProcess')->name('subscripe.process');

控制方法是

public function subscribeProcess(Request $request)
{
    try{
        $cc_token = $request->cc_token;
        $user = Auth::user();
        $user->newSubscription('Main','Monthly')->create($cc_token);
        alert()->success('User Updated Successfully', 'Success');
        return \redirect()->back();
    }catch(\Exception $ex){
        return $ex->getMessage();
    }
}

当我创建一个订阅它显示错误没有这样的付款方式,我是新的条纹请帮助我

共有1个答案

齐元章
2023-03-14

“没有这样的……”错误通常是由API密钥不匹配(例如,使用测试和活动密钥的混合)或尝试访问存在于不同帐户上的对象(例如,尝试从平台帐户对在连接帐户上创建的对象执行操作)引起的。

 类似资料:
  • 我对拉威尔的付款有问题。我需要结合收费和新的订阅作为一个,这样当有一个不完全的付款例外,我仍然可以得到条纹Webhook。 另一种方法是捕获异常并构建类似laravel的处理不完整异常的方法。 请让我知道你是如何处理这个问题的。谢啦

  • 我正在使用Laravel出纳和Stripe开发一个web应用程序订阅。 我正在使用stripev3javascriptapi,并使用card元素生成stripetoken。正在生成条带标记,如果您查看条带仪表板,将创建一个客户。此外,正在用户数据库中保存条带id。但是,当我尝试使用以下代码向用户订阅计划时: 它失败了,错误是:“没有这样的客户:cus_xxxxxx”。$PlanId变量是Strip

  • 我们是一家小型初创企业,大约两个月前开始。我们使用Stripe作为主要支付处理器,同时使用PayPal作为次要选项。 我们的计划是每月订阅,每月从$ 5到$ 25不等。我们的付款表单当前收集用户的姓名,CC,到期日期和CVC安全代码。 第一个月后,我们开始注意到用户的定期付款在 Stripe 上开始失败。我们不知道为什么会发生这种情况。如果第一笔付款成功,为什么未来的订阅付款会失败?到目前为止,我

  • 我想每30天用Stripe卡重复充值,金额会波动。 从文件中我得知,如果有可能卡需要3DS,我们应该使用源,所以我切换到源;) 从源对象条带.js检索中,我查看参数来决定是创建需要3DS还是正常卡充电的源对象。 使用JS,我得到了将设置为可选或必需的源对象。当我使用以下命令检索源代码后,它被设置为可选:,它看起来像这样: 我把它附在客户身上,然后充电。我猜意味着我可以稍后再给卡充电… 当我创建了一

  • 我有一个Squarespace应用程序,可以为客户收取费用,但Squarespare不创建客户对象,它只存储费用。 我的目标:当用户进行购买时,创建一个附加了订阅计划的Customer对象,以便我们可以对卡进行重复收费。 我可以通过条带测试API提取费用列表,并且每个费用都有一个包含卡令牌。因此,根据我的理解,我应该能够创建一个客户并传入源或源ID,它将向该客户添加源。 我的代码如下: 我在条纹沙

  • 我使用的是Laravel5.8版和出纳10.7版。1. 我想开始并收取用户注册时的每月订阅费。 所以我写进了RegisterController。php 此外,我还将其添加到注册表中。刀身php文件: 以及: Stripe\Exception\InvalidRequestException此客户没有附加的付款来源或默认付款方式。 有什么问题?我怎么能修好它?