Полоса Laravel и кассир нет такого способа оплаты

Я использую Laravel 7, интегрирую полосу с кассиром, и у меня возникла проблема

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();
    }
}

и я также создаю план на панели инструментов полосы  введите описание изображения здесь

когда я создаю подписку, появляется ошибка Нет такого способа оплаты Я новичок в полосе, пожалуйста, помогите мне


person Irshad Khan    schedule 03.08.2020    source источник


Ответы (1)


Нет таких ... ошибки обычно вызваны либо несоответствием ключей API (например, использование комбинации вашего теста и живых ключей), либо попыткой доступа к объектам, которые существуют в другой учетной записи (например, попыткой выполнить операцию с вашей платформы. учетной записи на объекте, который был создан на подключенной учетной записи).

person Paul Asjes    schedule 03.08.2020
comment
Да, но где-то у вас либо несоответствие ключей API (например, использование живого ключа на клиенте, но тестового ключа на сервере), либо вы создали токен в одной учетной записи Stripe и пытаетесь использовать его в совершенно другой учетной записи Stripe. , что не сработает. - person Paul Asjes; 04.08.2020
comment
Большое спасибо за ваш ответ. Это была моя ошибка, я использовал старую версию apis, теперь я исправил ее новым методом. Сначала я отправляю платежное намерение, а затем создаю способ оплаты, и я решил эту проблему. я использовал эту laravel.com/docs/7.x/billing документацию - person Irshad Khan; 11.08.2020