In my Stripe dashboard I've created a product with 2 prices: 1mo, and 6mo plans.
Then in my app I select one plan and I try to subscribe by passing a single price_string.
Laravel returns 'Route not defined" error , though apparently the route is defined.
Any idea what could be wrong ?
Many thanks
laravel: 10, cashier: latest
MainController.php
public function checkout_gold(Request $request) {
....
$pagedata= compact(["app_url" ]);
$price= $request->input('price');
return $request->user()
->newSubscription('default', $price )
->allowPromotionCodes()
->checkout([
'success_url' => route('/retCheckout').'?plan=gold&status=success&pagedata='.$pagedata,
'cancel_url' => route('/retCheckout').'?plan=gold&status=cancel&pagedata='.$pagedata
]);
}
pricetable.js
function subscribe (plan, price) {
var data = {price:price};
var link = pagedata.app_url+"/checkout-"+plan;
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
data: data,
url: link,
method: "POST",
....
}
web.php:
Route::get('/retCheckout', function (Request $request) {
return view('ret-checkout', ['plan' => $request->get('plan'), 'status' => $request->get('status'),
'pagedata' => $request->get('pagedata') ]);
});
Route::controller(MainController::class)->group(function () {
Route::post('/checkout-gold', 'checkout_gold');
...
});
