diff --git a/app/Helpers/Bank/Nordigen/Transformer/TransactionTransformer.php b/app/Helpers/Bank/Nordigen/Transformer/TransactionTransformer.php index f8fb444797f9..bd905bb42eab 100644 --- a/app/Helpers/Bank/Nordigen/Transformer/TransactionTransformer.php +++ b/app/Helpers/Bank/Nordigen/Transformer/TransactionTransformer.php @@ -88,10 +88,10 @@ class TransactionTransformer implements BankRevenueInterface // description could be in varios places $description = ''; - if (array_key_exists('bank_remittanceInformationStructured', $transaction)) - $description = $transaction["bank_remittanceInformationStructured"]; - else if (array_key_exists('bank_remittanceInformationStructuredArray', $transaction)) - $description = implode($transaction["bank_remittanceInformationStructured"], '\r\n'); + if (array_key_exists('remittanceInformationStructured', $transaction)) + $description = $transaction["remittanceInformationStructured"]; + else if (array_key_exists('remittanceInformationStructuredArray', $transaction)) + $description = implode(' \r\n', $transaction["remittanceInformationStructuredArray"]); else if (array_key_exists('remittanceInformationUnstructured', $transaction)) $description = $transaction["remittanceInformationUnstructured"]; else diff --git a/app/Http/Controllers/Bank/NordigenController.php b/app/Http/Controllers/Bank/NordigenController.php index 777cf62a57fc..e3c68963f395 100644 --- a/app/Http/Controllers/Bank/NordigenController.php +++ b/app/Http/Controllers/Bank/NordigenController.php @@ -61,7 +61,7 @@ class NordigenController extends BaseController // redirect to requisition flow try { - $requisition = $nordigen->createRequisition(config('ninja.app_url') . '/api/v1/nordigen/confirm', $data['institution_id'], $request->token); + $requisition = $nordigen->createRequisition(config('ninja.app_url') . '/nordigen/confirm', $data['institution_id'], $request->token); } catch (NordigenException $e) { // TODO: property_exists returns null in these cases... => why => therefore we just get unknown error everytime $responseBody is typeof GuzzleHttp\Psr7\Stream Log::error($e); $responseBody = $e->getResponse()->getBody(); diff --git a/app/Http/Controllers/BankIntegrationController.php b/app/Http/Controllers/BankIntegrationController.php index e722f0fab86b..8c1862b1516c 100644 --- a/app/Http/Controllers/BankIntegrationController.php +++ b/app/Http/Controllers/BankIntegrationController.php @@ -200,13 +200,13 @@ class BankIntegrationController extends BaseController $user_account = $user->account; - // if (Cache::get("throttle_polling:{$user_account->key}")) // @todo uncomment for PR - // return response()->json(BankIntegration::query()->company(), 200); - $this->refreshAccountsYodlee($user); $this->refreshAccountsNordigen($user); + if (Cache::get("throttle_polling:{$user_account->key}")) + return response()->json(BankIntegration::query()->company(), 200); + // Processing transactions for each bank account if (Ninja::isHosted() && $user->account->bank_integration_account_id) $user_account->bank_integrations->where("integration_type", BankIntegration::INTEGRATION_TYPE_YODLEE)->where('auto_sync', true)->each(function ($bank_integration) use ($user_account) { diff --git a/routes/api.php b/routes/api.php index cca9161dc91e..ea565393a676 100644 --- a/routes/api.php +++ b/routes/api.php @@ -400,7 +400,9 @@ Route::group(['middleware' => ['throttle:api', 'api_db', 'token_auth', 'locale'] Route::get('statics', StaticController::class); // Route::post('apple_pay/upload_file','ApplyPayController::class, 'upload'); - Route::post('api/v1/yodlee/status/{account_number}', [YodleeController::class, 'accountStatus']); + Route::post('api/v1/yodlee/status/{account_number}', [YodleeController::class, 'accountStatus']); // @todo @turbo124 check route-path?! + + Route::get('nordigen/institutions', [NordigenController::class, 'institutions'])->name('nordigen.institutions'); }); Route::post('api/v1/sms_reset', [TwilioController::class, 'generate2faResetCode'])->name('sms_reset.generate')->middleware('throttle:10,1'); @@ -427,9 +429,6 @@ Route::post('api/v1/yodlee/data_updates', [YodleeController::class, 'dataUpdates Route::post('api/v1/yodlee/refresh_updates', [YodleeController::class, 'refreshUpdatesWebhook'])->middleware('throttle:100,1'); Route::post('api/v1/yodlee/balance', [YodleeController::class, 'balanceWebhook'])->middleware('throttle:100,1'); -Route::get('api/v1/nordigen/institutions', [NordigenController::class, 'institutions'])->middleware('throttle:100,1')->middleware('token_auth')->name('nordigen_institutions'); -Route::any('api/v1/nordigen/confirm', [NordigenController::class, 'confirm'])->middleware('throttle:100,1')->name('nordigen_callback'); - Route::get('api/v1/protected_download/{hash}', [ProtectedDownloadController::class, 'index'])->name('protected_download')->middleware('throttle:300,1'); Route::fallback([BaseController::class, 'notFound'])->middleware('throttle:404'); diff --git a/routes/web.php b/routes/web.php index c47c9e139332..4f60662b7e68 100644 --- a/routes/web.php +++ b/routes/web.php @@ -57,6 +57,7 @@ Route::get('stripe/completed', [StripeConnectController::class, 'completed'])->n Route::get('yodlee/onboard/{token}', [YodleeController::class, 'auth'])->name('yodlee.auth'); Route::get('nordigen/connect/{token}', [NordigenController::class, 'connect'])->name('nordigen.connect'); +Route::any('nordigen/confirm', [NordigenController::class, 'confirm'])->name('nordigen.confirm'); Route::get('checkout/3ds_redirect/{company_key}/{company_gateway_id}/{hash}', [Checkout3dsController::class, 'index'])->middleware('domain_db')->name('checkout.3ds_redirect'); Route::get('mollie/3ds_redirect/{company_key}/{company_gateway_id}/{hash}', [Mollie3dsController::class, 'index'])->middleware('domain_db')->name('mollie.3ds_redirect');