feat: enable flutterwave payment methods
This commit is contained in:
parent
4de520e861
commit
1178006d65
|
@ -32,6 +32,46 @@ class FlutterwaveController extends Controller
|
|||
|
||||
}
|
||||
|
||||
/**
|
||||
* @OA\Get(
|
||||
* path="/flutterwave/methods",
|
||||
* summary="Afficher la liste des methodes de Flutterwave",
|
||||
* tags={"Flutterwave"},
|
||||
* security={{"api_key":{}}},
|
||||
* @OA\Response(
|
||||
* response=200,
|
||||
* description="OK",
|
||||
* @OA\JsonContent(
|
||||
* ref="#/components/schemas/ApiResponse",
|
||||
* example = {
|
||||
* "status" : 200,
|
||||
* "response" : {"hasWebview": true, "methods": { "MOBILE_MONEY": "Mobile Money", "CREDIT_CARD": "Carte de crédit" }},
|
||||
* "error":null
|
||||
* }
|
||||
* )
|
||||
* )
|
||||
* )
|
||||
*/
|
||||
public function getMethods()
|
||||
{
|
||||
$providers = [
|
||||
// 'ALL',
|
||||
'MOBILE_MONEY',
|
||||
// 'CREDIT_CARD',
|
||||
];
|
||||
$methods = [];
|
||||
foreach ($providers as $provider) {
|
||||
$key = 'providers.' . $provider;
|
||||
$method['title'] = Lang::has($key) ? __($key) : $provider;
|
||||
$method['value'] = $provider;
|
||||
$methods[] = $method;
|
||||
}
|
||||
return $this->successResponse([
|
||||
'hasWebview' => true,
|
||||
'methods' => $methods,
|
||||
]);
|
||||
}
|
||||
|
||||
//
|
||||
public function pay(Request $request)
|
||||
{
|
||||
|
|
|
@ -29,6 +29,8 @@ class PaymentController extends Controller
|
|||
return app(YoomeeV2Controller::class)->getMethods();
|
||||
case 'cinetpay':
|
||||
return app(CinetpayController::class)->getMethods();
|
||||
case 'flutterwave':
|
||||
return app(FlutterwaveController::class)->getMethods();
|
||||
default:
|
||||
return $this->errorResponse(__('errors.unexpected_error'));
|
||||
}
|
||||
|
|
|
@ -85,6 +85,7 @@ $router->group(['middleware' => 'auth'], function () use ($router) {
|
|||
* Flutterwave Endpoints
|
||||
*/
|
||||
$router->group(['prefix' => 'flutterwave'], function () use ($router) {
|
||||
$router->get('methods',['as' => 'flutterwave.methods', 'uses' => 'FlutterwaveController@getMethods']);
|
||||
$router->addRoute(['GET','POST'],'pay',['as' => 'flutterwave.pay', 'uses' => 'FlutterwaveController@pay']);
|
||||
$router->post('payOut',['as' => 'flutterwave.payout', 'uses' => 'FlutterwaveController@payOut']);
|
||||
$router->get('checkBalance',['as' => 'flutterwave.check-balance', 'uses' => 'FlutterwaveController@checkBalance']);
|
||||
|
|
Loading…
Reference in New Issue