group(function () { Route::get('detail/report/{report}', 'DetailReportController'); Route::post('detail/exim/{exim}', 'DetailEximController'); Route::patch('detail/actions/{action}', 'DetailActionsController'); Route::patch('detail/action/{detail}/{action}', 'DetailActionController'); Route::patch('detail/workflow/{detail}/{transition}', 'DetailWorkflowController'); Route::resource('detail', 'DetailResourceController'); }); // Guard routes for refund Route::prefix('{guard}/payment')->group(function () { Route::get('refund/report/{report}', 'RefundReportController'); Route::post('refund/exim/{exim}', 'RefundEximController'); Route::patch('refund/actions/{action}', 'RefundActionsController'); Route::patch('refund/action/{refund}/{action}', 'RefundActionController'); Route::patch('refund/workflow/{refund}/{transition}', 'RefundWorkflowController'); Route::resource('refund', 'RefundResourceController'); }); // Guard routes for invoice Route::prefix('{guard}/payment')->group(function () { Route::get('invoice/report/{report}', 'InvoiceReportController'); Route::post('invoice/exim/{exim}', 'InvoiceEximController'); Route::patch('invoice/actions/{action}', 'InvoiceActionsController'); Route::patch('invoice/action/{invoice}/{action}', 'InvoiceActionController'); Route::patch('invoice/workflow/{invoice}/{transition}', 'InvoiceWorkflowController'); Route::resource('invoice', 'InvoiceResourceController'); }); // Guard routes for gateway Route::prefix('{guard}/payment')->group(function () { Route::get('gateway/report/{report}', 'GatewayReportController'); Route::post('gateway/exim/{exim}', 'GatewayEximController'); Route::patch('gateway/actions/{action}', 'GatewayActionsController'); Route::patch('gateway/action/{gateway}/{action}', 'GatewayActionController'); Route::patch('gateway/workflow/{gateway}/{transition}', 'GatewayWorkflowController'); Route::resource('gateway', 'GatewayResourceController'); }); // Guard routes for payment Route::prefix('{guard}/payment')->group(function () { Route::get('payment/report/{report}', 'PaymentReportController'); Route::post('payment/exim/{exim}', 'PaymentEximController'); Route::patch('payment/actions/{action}', 'PaymentActionsController'); Route::patch('payment/action/{payment}/{action}', 'PaymentActionController'); Route::patch('payment/workflow/{payment}/{transition}', 'PaymentWorkflowController'); Route::resource('payment', 'PaymentResourceController'); }); // Public routes for payment Route::get('payments/', 'PaymentPublicController@index'); Route::get('payment/{slug?}', 'PaymentPublicController@show');