<?php
use App\Bank\Payment;
use App\Classes\GenerateImaliAccount;
use App\Classes\SendSMSSislog;
use App\Classes\TransactionGeneration;
use App\DayCloseStore;
use App\Exports\CreditSolicitation;
use App\Exports\CreditSolicitationPdf;
use App\Exports\SubAccountExport;
use App\Exports\SubAccountExportSchool;
use App\Http\Controllers\Partner\BimController;
use App\Http\Controllers\ServiceConfigAccountController;
use App\Http\Controllers\ServiceConfigController;
use App\Http\Controllers\SmsController;
use App\Http\Controllers\TypeServiceController;
use App\Imali\ImaliAccount;
use App\Imali\MerchantAccount;
use App\PurchaseVoucher;
use App\Store;
use App\StoreConfig;
use App\StoreDevice;
use Illuminate\Http\Request;
use \Maatwebsite\Excel\Facades\Excel;
use App\Http\Controllers\TopUpTestController;
use App\Http\Controllers\TopUpController;
use App\Http\Controllers\Api\AdminController;
use App\Http\Controllers\Api\Auth\LoginController;
use App\Http\Controllers\ATSourceController;
use App\Http\Controllers\BusinessController;
use App\Http\Controllers\BusinessLoginController;
use App\Http\Controllers\StoreController;
use App\Http\Controllers\LogController;
use App\Http\Controllers\CloseController;
use App\Http\Controllers\PaymentController;
use App\Http\Controllers\UserClientController;
use App\Http\Controllers\ComercianteController;
use App\Http\Controllers\MerchantController;
use App\Http\Controllers\DashboardTopUp;
use App\Http\Controllers\TransactionHistoryController;
use App\Http\Controllers\StoreDeviceController;
use App\Http\Controllers\RefundController;
use App\Http\Controllers\StoreConfigController;
use App\Http\Controllers\StatistiController;
use App\Http\Controllers\SubAccountControlller;
use App\Http\Controllers\ThirdPartController;
use App\Http\Controllers\UserController;
use App\Http\Controllers\UssdController;
use App\Http\Controllers\VoucherHistoryController;
use Illuminate\Support\Facades\Route;
Route::get('top-up-dashboard', [DashboardTopUp::class, 'getDashboard']);
Route::get('get-transaction-histories/{accountNumber}/{date1}/{date2}', [TransactionHistoryController::class, 'getExtrato']);
Route::get('user-extrato', [PaymentController::class, 'getExtrato']);
Route::get('get-report', [StatistiController::class, 'getWeekReport']);
Route::post('send-sms', [SmsController::class, 'sendSms']);
// USSD
Route::prefix('ussd')->group(function () {
Route::get('balance/{phone}', 'UserController@getBalance');
Route::get('check-phone/{phone}', 'Sislog\UssdController@checkPhone');
Route::get('check-imali-account/{account_number}/{phone}', 'Sislog\UssdController@checkImaliAccount');
Route::get('get-store-transactions/{phone}', [UssdController::class, 'getTransactions']);
});
Route::get('fcm', 'FcmController@sendNotification');
// USER CLIENT SESSION
//Route::post('save-token', 'UserClientController@saveToken');
Route::post('save-token', [UserClientController::class, 'saveToken']);
Route::post('save-client-integrator', [UserClientController::class, 'saveClientIntegrator']);
//Route::post('save-client-integrator', 'UserClientController@saveClientIntegrator');
Route::get('get-clients', 'UserClientController@getClients');
// AND USER CLIENT TEST
Route::get('get-pedido/{id}/{client_id}', 'MoneyRequestController@getPedido');
Route::get('get-client-test', 'TopUpTestController@getDstvProducts');
Route::get('check-client-start-test/{smartCard}', [TopUpTestController::class, 'checkClientStartTimes']);
Route::post('pay-startimes-test', [TopUpTestController::class, 'payStartTimesPackage']);
// GET-TRANSACTION
Route::get('check-transaction/{id}', [UserClientController::class, 'checkTransactionStatus']);
Route::get('get-lang', [UserClientController::class, 'getLang'])->middleware('localization');
Route::middleware(['auth:sanctum', 'localization'])->prefix('apps')->group(function () {
// Route::get('make-recharge', 'Partner\BimController@makeRecharge');
Route::post('make-recharge', [BimController::class, 'makeRecharge']);
Route::get('check-reference', 'Partner\BimController@verificarEntidadeReferencia');
});
Route::middleware('localization')->prefix('partner')->group(function () {
Route::get('check-doc-reference', [UserClientController::class, 'checkReference']);
Route::get('payment-doc-register', [UserClientController::class, 'paymentRegister']);
});
//@Source Methods
Route::middleware(['auth:sanctum', 'localization'])->prefix('partner')->group(function () {
Route::get('validate-imali-account', [ATSourceController::class, 'validateImaliAccount']);
Route::get('check-balance/{account_number}', [ATSourceController::class, 'checkImaliSubAccounBalance']);
Route::get('get-account-transactions/{account_number}', [ATSourceController::class, 'getSubAccountPayments']);
// Union Bank Methods
Route::post('account-deposit', [ATSourceController::class, 'accountDeposit']);
Route::get('check-client', [ATSourceController::class, 'checkClient']);
});
// Metodos SIMO
Route::post('validate-payment', [UserClientController::class, 'validatePayment']);
Route::post('notify-payment', [UserClientController::class, 'notifyPayment']);
Route::middleware(['auth:sanctum', 'localization'])->prefix('partner')->group(function () {
// GET-TRANSACTION
Route::get('get-transaction/{id}', [UserClientController::class, 'getTransaction']);
// GET-TRANSACTION
Route::get('check-transaction/{id}', [UserClientController::class, 'checkTransactionStatus']);
// GENERATE TRANSACTION
Route::post('generate-transaction', [UserClientController::class, 'Qrcode']); // funciona
// GET STATIC QRCODE
Route::get('get-qrcode/{accountNumber}', [UserClientController::class, 'getStoreQrcode']); // funciona
// GENERATE PAYMENT
Route::post('generate-payment', [UserClientController::class, 'generatePayment']); // funciona
// CONFIRM PAYMENT
Route::post('confirm-payment', [UserClientController::class, 'makePayment']); // funciona
// GENERATE PAYMENT PUSH
// Route::post('generate-payment-push', [UserClientController::class, 'generatePaymentPush']); // funciona
Route::post('generate-payment-push', [ThirdPartController::class, 'generatePushPaymentNew']); // funciona
// get Store Payments REFUBNDD
Route::get('get-store-payments-refunds/{accountNumber}', [UserClientController::class, 'getRefunds']);
// get Store Payments by Dates
Route::get('get-store-payments/{date1}/{date2}', [MerchantController::class, 'getPaymentsWithDate']);
// REFUND CUSTOMER
Route::post('refund-customer', [UserClientController::class, 'refundCustomerNew']);
Route::post('refund-confirmation', [UserClientController::class, 'confirmRefund']);
// get Store Payments
Route::get('get-store-payments/{accountNumber}', [UserClientController::class, 'getStorePayments']);
// get Generated Payments
Route::get('get-generated-payments/{accountNumber}', [UserClientController::class, 'getGeneratedPayments']);
// Rotas das Subcontas iMali - NFC
//Route::get('check-card-balance/{card_number}', [UserClientController::class, 'checkCardBalance']);
//Route::post('make-payment-refund', [UserClientController::class, 'makePaymentRefund']);
//Route::post('mine-transaction-store-2024', [PaymentController::class, 'makePaymentStoreApp2024']);
Route::middleware('localization')->post('make-payment-card', [PaymentController::class, 'makePaymentStoreApp2024SubAccounts']);
Route::get('check-card-balance/{card_number}', [UserClientController::class, 'checkCardBalance']);
Route::post('make-payment-refund', [UserClientController::class, 'makePaymentRefund']);
// NOVA ROTA PARA INTEGRADORES
Route::middleware('localization')->post('imaliway/{payment_method}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStore']);
// iMali GateWay Payments - POS e APP Web
Route::post('imaliway/v2/{payment_method}/{payment_type}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::get('imaliway/v2/{payment_type}/payments/{partner_transation_id}/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
});
// NOVA ROTA... os integradores e Lojas
// Route::middleware('localization')->post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
// Route::middleware('localization')->get('imaliway/v2/payments/status/{partner_transation_id}', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
// Route::middleware('localization')->get('imaliway/v2/payments/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
// Route::middleware('localization')->post('imaliway/v2/payments/qrcode/refresh', [App\Http\Controllers\ThirdPartController::class, 'make_refresh_qrcode_payments_new25']);
Route::middleware('localization')->post('imaliway/v2/{payment_method}/{payment_type}/payments/{transation_id}/confirm', [App\Http\Controllers\ThirdPartController::class, 'confirm_push_payment_new25']);
Route::middleware('localization')->post('imaliway/v2/{payment_method}/{payment_type}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
// Route::middleware('localization')->post('imaliway/v2/{payment_method}/payments/{payment_type}/{transation_id}', [App\Http\Controllers\ThirdPartController::class, 'send_push_payment_to_client_new25']);
Route::middleware('localization')->get('imaliway/v2/{payment_type}/payments/{partner_transation_id}/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
// Route::middleware('localization')->get('imaliway/v2/check/{payment_method}/status/{transation_id}', [App\Http\Controllers\ThirdPartController::class, 'check_wallets_payment_status_new25']);
// Route::get('subaccount-extract-file/{card_number}/{startDate?}/{endDate?}', function ($subAccounNumber, $startDate = null, $endDate = null) {
// return (new SubAccountExport($subAccounNumber, $startDate, $endDate))->exportPDF();
// });
Route::get('subaccount-extract', [PaymentController::class, 'subAccountExtract']);
Route::get('make-recharge', 'Partner\BimController@makeRecharge');
Route::get('check-reference', 'Partner\BimController@verificarEntidadeReferencia');
Route::post('store/login', 'Api\LoginStore@login');
Route::post('store/refresh', 'Api\LoginStore@refresh');
Route::get('period-store-day-test', [CloseController::class, 'getPeriodCloses']);
Route::middleware('auth:store-api')->prefix('store')->group(function () {
Route::get('account', 'StoreController@getUser');
Route::post('generate-transaction-store', 'StoreAmountGenerationController@generateTransactionStore');
Route::get('get-transactions/{id}', 'StoreController@getTransactions');
Route::get('get-period-transactions/{date1}/{date2}', [StoreController::class, 'getPeriodTransactions']);
Route::get('get-all-transactions', 'StoreController@getAllTransactions');
Route::get('get-all-store-transactions', 'StoreController@getAllStoreTransactions');
Route::post('get-closed-transactions', 'StoreController@getClosedTransactions');
Route::get('get-dashboard/{id}', 'StoreController@getDashboard');
Route::post('get-dashboard2', 'StoreController@getDashboard2');
Route::get('get-daily-dashboard', 'StoreController@getDailyDashboard');
Route::post('update-firebase-token', 'StoreController@updateFirebaseToken');
Route::get('close-store-day', 'StoreController@getStoreDayCloses');
Route::get('period-store-day', [CloseController::class, 'getPeriodCloses']);
Route::post('logout', 'Api\LoginStore@logout');
Route::post('change-password', 'StoreController@changePassword');
Route::get('admin/get-merchant-transactions/{id}', 'StoreController@getStoreTransactions');
Route::post('receive-notification', [StoreDeviceController::class, 'receiveNotification']);
Route::post('refund-account', [RefundController::class, 'refundCustomerNewStore']);
Route::post('confirm-refund-account', [RefundController::class, 'refundConfirmation']);
Route::post('close-period', [CloseController::class, 'closePeriod']);
Route::post('open-period', [CloseController::class, 'openPeriod']);
});
Route::get('store/dashboard', 'StoreController@getChartDashboard');
//Route::get('store/get-dashboard/{id}', 'StoreController@getDashboard');
//MERCHANT ROUTES
Route::post('merchant/login', 'Api\MerchantController@login');
Route::post('merchant/refresh', 'Api\MerchantController@refresh');
Route::middleware('auth:merchant-api')->prefix('merchant')->group(function () {
Route::get('account', 'MerchantController@loggedUser');
Route::post('logout', 'Api\MerchantController@logout');
// Route::get('get-merchant-stores/{id}', 'ComercianteController@getStore');
// Route::get('get-store-payments', 'MerchantController@getPayments');
Route::get('get-store-payments/{date1}/{date2}', [MerchantController::class, 'getPaymentsWithDate']);
Route::get('get-stores', 'MerchantController@getMerchantStores');
Route::post('refund-imali-account', [RefundController::class, 'refundCustomerNew']);
Route::post('refund-confirmation', [RefundController::class, 'refundConfirmation']);
Route::get('get-refunds', [RefundController::class, 'getRefundCustomer']);
Route::post('change-password', [MerchantController::class, 'changePassword']);
Route::get('get-store-periods/{storeId}', [MerchantController::class, 'getStorePeriods']);
Route::get('get-store-period-transactions/{storeId}', [MerchantController::class, 'getPeriodTransactions']);
Route::get('get-imali-account/{accountNumber}', 'MerchantController@getImaliAccount');
Route::get('get-periodos', 'MerchantController@getPeridos');
Route::get('get-periodos-loja/{storeId}', 'MerchantController@getPeridosLoja');
Route::get('get-closed-transactions-store/{storeId}/{dateReference}', 'MerchantController@getPagamentosPeriodoLoja');
Route::get('get-general-dashboard', 'MerchantController@getMerchantDashboard');
Route::get('get-store-dashboard/{storeId}', 'MerchantController@getStoreDashboard');
Route::get('get-period-transactions/{store_id}/{date1}/{date2}', [StoreController::class, 'getPeriodTransactionsMerchant']);
});
// // todo BUSINESS-API
// //? Rotas do dasboard para contas Empresa
// Route::middleware('auth:business-api')->prefix('business')->group(function () {
// Route::get('get-all-stores', [BusinessController::class, 'getAllStores']);
// Route::get('user', [BusinessController::class, 'getUser']);
// // Route::post('money-request', [MoneyRequestController::class, 'requestMoney']);
// // comprar recargas para uma ou varias contas
// // fazer withdrawalls com varias fontes MPesa, Banco, etc
// // Consultar lojas, movimentos (pagamentos, transferencias) da conta Empresa
// });
// //BUSINESS LOGIN
// Route::post('business/login', [BusinessController::class, 'login']);
//Route::get('/miguel-admin', 'LogController@getLogs')->middleware('auth:admin-api');
Route::post('admin/save-comerciante-test', 'ComercianteController@saveComerciante');
//Route::get('admin/get-daily-close-topup', 'CloseController@getTopUpDailyClose');
//Route::get('admin/get-daily-close-topup/{date1}/{date2}', 'CloseController@getTopUpDailyClose');
Route::get('admin/get-daily-close-topup/{date1}/{date2}', [CloseController::class, 'getTopUpDailyClose']);
Route::get('admin/get-documents-test', 'UserDocumentController@getDocuments');
Route::middleware('localization')->group(function () {
Route::post('send-codigo', 'UserController@verifyUserNumber');
//Route::middleware('localization')->post('register', 'Api\Auth\RegisterController@register');
Route::post('register', 'Api\Auth\RegisterController@register');
//Route::middleware('localization')->post('login', 'Api\Auth\LoginController@login');
Route::post('login', 'Api\Auth\LoginController@login');
Route::post('refresh', 'Api\Auth\LoginController@refresh');
Route::post('send-password-reset-link', 'Api\Auth\LoginController@resetLink');
//? dados do Pais-Provincia-Distritos
Route::get('get-country', [App\Http\Controllers\Api\Auth\CountryController::class, 'getCoutry']);
Route::get('get-provinces/{id}', [App\Http\Controllers\Api\Auth\CountryController::class, 'getProvinces']);
Route::get('get-districts/{id}', [App\Http\Controllers\Api\Auth\CountryController::class, 'getDistricts']);
Route::get('get-activity-branch', [App\Http\Controllers\Api\Auth\CountryController::class, 'getActivityBranch']);
});
//===================== ADMIN ROUTES =====================
Route::prefix('admin')->group(function () {
Route::post('save-user', [AdminController::class, 'saveUser']);
Route::post('login', [AdminController::class, 'login']);
Route::post('refresh', [AdminController::class, 'refresh']);
Route::post('logout', [AdminController::class, 'logout']);
});
//Route::get('get-type-services', [TypeServiceController::class, 'index']);
//Route::post('save-type-services', [TypeServiceController::class, 'store']);
//Route::post('update-type-services/{id}', [TypeServiceController::class, 'update']);
//Route::get('delete-type-services/{id}', [TypeServiceController::class, 'destroy']);
//Route::get('get-type-services/{id}', [TypeServiceController::class, 'edit'])/;
//Route::get('get-services', [ServiceConfigController::class, 'index']);
//Route::post('save-services', [ServiceConfigController::class, 'store']);
//Route::post('update-services/{id}', [ServiceConfigController::class, 'update']);
//Route::get('delete-services/{id}', [ServiceConfigController::class, 'destroy']);
//Route::get('get-services/{id}', [ServiceConfigController::class, 'edit']);
//Route::get('get-account-services', [ServiceConfigAccountController::class, 'index']);
//Route::post('save-account-services', [ServiceConfigAccountController::class, 'store']);
//Route::post('update-account-services/{id}', [ServiceConfigAccountController::class, 'update']);
//Route::get('delete-account-services/{id}', [ServiceConfigAccountController::class, 'destroy']);
//Route::get('get-account-services/{id}', [ServiceConfigAccountController::class, 'edit']);
Route::middleware('auth:admin-api')->prefix('admin')->group(function () {
// Rotas para aceitar ou cancelar o pedido de exclusao de uma conta iMali
Route::post('accept-account-deletion-request', 'UserController@acceptAccountDeletionRequest');
Route::post('cancel-account-deletion-request', 'UserController@cancelAccountDeletionRequest');
Route::post('block-or-enable-imaliaccount', 'UserController@blockOrEnableIMaliAccount');
// Rotas para aceitar ou cancelar o pedido de exclusao de uma conta iMali
//Account Deletion Requests
Route::get('get-accounts-deletion-requests', 'UserController@getAccountDeletionRequests');
Route::post('update-token', [UserClientController::class, 'saveToken']);
Route::post('save-client-integrator', [UserClientController::class, 'saveClientIntegrator']);
Route::get('get-clients', 'UserClientController@getClients');
Route::post('add-store-to-client', [UserClientController::class, 'addStoreToUserClient']);
Route::get('get-transactions-histories/{from}/{to}', [TransactionHistoryController::class, 'historyTransactions']);
Route::get('get-topup-history/{date1}/{date2}', [VoucherHistoryController::class, 'getVoucherHistories']);
Route::post('add-or-update-config', [StoreConfigController::class, 'addOrUpdateConfigs']);
Route::get('get-store-config/{id}', [StoreConfigController::class, 'getStoreConfig']);
Route::get('find-imali-account/{query}', [MerchantController::class, 'getAccountNumber']);
Route::get('find-store-account/{query}', [MerchantController::class, 'getStoreAccount']);
Route::get('find-merchant-account/{query}', [MerchantController::class, 'getMerchantAccount']);
Route::post('update-store-logo', [StoreController::class, 'updateStoreImage']);
// reset Password
Route::post('change-password', [AdminController::class, 'changePassword']);
Route::post('deny-documents-update', 'UserDocumentController@negarPedidoActualizacaoDocumentos');
Route::post('accept-documents-update', 'UserDocumentController@updateUserInformation');
Route::get('get-documents/{status}', 'UserDocumentController@getDocuments');
Route::get('get-user-documents/{id}', 'UserDocumentController@getUserDocuments');
Route::post('send-messages', 'PushNotificationController@sendMessage');
Route::get('get-app-logs', [LogController::class, 'getLogs']);
Route::get('get-full-logs', [LogController::class, 'getFullLog']);
Route::get('get-my-transferencias2/{id}', 'PaymentController@getTransferenciasHistory');
Route::get('get-my-transferencias-data', 'PaymentController@getTransferenciasHistoryData');
Route::get('get-imali-configuracoes', 'DashboardController@getImaliConfiguracoes');
Route::get('get-carregamentos2/{datainicial}/{datafinal}', 'DashboardController@getCarregamentos');
Route::get('get-dashboard', 'DashboardController@getIndicadores');
Route::post('update-imaliaccount-config', 'DashboardController@updateImaliAccountConfig');
Route::post('update-imaliaccount-kyc', 'ImaliAccountController@updateKyc');
// USERS ALL AND CRUD //
Route::post('create-user', 'Api\AdminController@saveUser');
Route::get('account', 'Api\AdminController@loggedUser');
Route::get('paytekusers', 'Api\AdminController@getUsers');
Route::get('delete-user/{id}', 'Api\AdminController@deleteUser');
Route::get('get-user/{id}', 'Api\AdminController@getUser');
Route::post('update-user', 'Api\AdminController@updateUser');
Route::get('paytekuser-enable-or-disable/{id}', 'Api\AdminController@enableOrDisable');
// Route::get('admin/update-profile-user/{id}', 'Api\AdminController@updateUserPasword');
Route::post('update-user-password', 'Api\AdminController@updateUserPasword');
Route::get('get-merchant-transactions/{id}', 'StoreController@getStoreTransactions');
// END USERS AND CRUD
Route::get('get-profits/{date1}/{date2}', 'ProfitController@getProfits');
// Route::get('get-stores', 'StoreController@getStores');
Route::get('get-stores', [StoreController::class, 'getStores']);
// Route::get('get-stores', [StoreController::class, 'getStorePayments']);
Route::get('get-imali-accounts', 'UserController@getImaliAccounts');
Route::get('enable-or-disable-imali-account/{account_number}', 'UserController@updateUserStatus');
Route::get('get-merchant-stores/{id}', 'ComercianteController@getStore');
Route::post('get-merchant', 'ComercianteController@getMerchant2');
Route::get('get-comerciantes', 'ComercianteController@getComerciantes');
Route::get('get-ramo-activity', 'ComercianteController@getRamoActivity');
Route::get('get-stores', 'StoreController@getStores');
Route::get('get-profits', 'ProfitController@getProfits');
Route::get('get-imali-configuracoes', 'DashboardController@getImaliConfiguracoes');
Route::get('get-carregamentos2/{datainicial}/{datafinal}', 'DashboardController@getCarregamentos');
Route::get('get-dashboard', 'DashboardController@getIndicadores');
Route::post('update-imaliaccount-config', 'DashboardController@updateImaliAccountConfig');
Route::get('get-imali-accounts', 'UserController@getImaliAccounts');
Route::get('get-user-token/{phone}', 'UserController@getUserToken');
Route::get('mytransactions/{id}', 'PaymentController@getMyTransactions');
Route::get('get-user/{id}', 'PaymentController@getUser');
Route::get('get-test/{id}', 'PaymentController@getTesteTransaction');
Route::post('recharge', 'UserController@rechargeAccount');
Route::post('recharge-bank-reference', 'UserController@rechargeByReference');
// Route::post('recharge-bank-reference', [App\Http\Controllers\UserController::class, 'rechargeByReference'])->name('recharge-bank-reference');
Route::get('users', 'UserController@users');
Route::get('get-bank-connections', 'UserController@bankConnections');
Route::post('update-user-data-mobile', 'UserController@updateUserDataMobile');
// SAVE COMERCIANTE
// Route::post('save-comerciante', 'ComercianteController@saveComerciante');
Route::post('save-comerciante', [ComercianteController::class, 'saveComerciante']);
// Route::post('save-store', 'ComercianteController@saveLoja');
Route::post('save-store', [ComercianteController::class, 'saveLoja']);
Route::post('update-merchant', 'ComercianteController@updateComerciante');
// FIM DO SAVE MERCHANT
Route::post('mine-transaction', 'PaymentController@makePayment');
Route::post('mine-transaction-store', 'PaymentController@makePaymentStore');
Route::get('get-payments', 'PaymentController@getPayments');
Route::get('get-my-payment/{id}', 'PaymentController@getMyPayments');
Route::get('get-my-payments', 'PaymentController@getMyPayments2');
Route::get('get-transferencias', 'PaymentController@getTransferencias');
Route::get('get-carregamentos', 'PaymentController@getCarregamentos');
Route::get('get-my-carregamentos2/{id}', 'PaymentController@getMyCarregamentos2');
Route::get('get-my-carregamentos', 'PaymentController@getMyCarregamentos');
Route::get('get-my-transferencias/{id}', 'PaymentController@getMyTransferencias');
Route::post('transfer-money', 'PaymentController@transferMoney');
Route::post('check-account', 'PaymentController@checkReceiver');
Route::get('get-comerciante2/{account_number}', 'ComercianteController@getComerciante2');
Route::get('get-comerciante/{account_number}', 'ComercianteController@getComerciante');
Route::get('generate-qrcode/{id}/{account_number}', 'ComercianteController@generateQrcode');
Route::post('get-merchant', 'ComercianteController@getMerchant2');
Route::get('get-comerciantes', 'ComercianteController@getComerciantes');
Route::get('get-ramo-activity', 'ComercianteController@getRamoActivity');
// Get Users By admon
Route::get('get-user-by-account-number/{account_number}', 'ComercianteController@getUserByImaliAccount');
Route::get('get-user-by-account-reference/{reference}', 'ComercianteController@getUserByImaliAccountReference');
Route::get('get-user-data/{id}', 'ComercianteController@getUserData');
// PESQUISA POR PARAMETRO
Route::post('update-store', 'StoreController@updateStore');
Route::get('get-merchant-transactions-searched/{datainicial}/{datafinal}/{id}', 'StoreController@getStorePayments');
Route::get('get-transferencias2/{datainicial}/{datafinal}', 'DashboardController@getTransferencias');
Route::get('get-transaction-history/{datainicial}/{datafinal}/{imali}/{type}', 'ImaliAccountController@getImaliTransactions');
Route::get('get-payments2/{datainicial}/{datafinal}', 'DashboardController@getPayments');
Route::get('get-transferencias2/{datainicial}/{datafinal}', 'DashboardController@getTransferencias');
Route::get('get-comerciante-payments/{account_number}', 'ComercianteController@getComercianteTransactions');
Route::get('get-my-transferencias2/{id}', 'PaymentController@getTransferenciasHistory');
Route::get('get-my-transferencias-data', 'PaymentController@getTransferenciasHistoryData');
// KYC
Route::post('save-kyc', 'UserKycController@saveKyc');
Route::post('update-kyc', 'UserKycController@updateKyc');
Route::get('delete-kyc/{id}', 'UserKycController@deleteKyc');
// CLOSE DAY
Route::get('store-closes/{date1}/{date2}', 'StoreController@getAdminStoresCloses');
Route::get('close-store-day', 'StoreController@getStoreDayCloses');
Route::post('save-close-store-day', 'DayCloseStoreController@dayCloseStore');
Route::get('store-day-closes/{store_id}', 'StoreController@getStoreCloses');
// MPESA
Route::post('revert-recharge-transanction', 'UserController@reverteTransaction');
Route::post('send-money-b2b', 'UserController@sendMoneyB2B');
Route::post('send-money-imali-mpesa', 'UserController@sendMoneyImaliMpesa')->middleware('json.response');
// ================ SERVICES NOTIFICATION =======================
Route::get('get-services', [ServiceConfigController::class, 'index']);
Route::post('save-services', [ServiceConfigController::class, 'store']);
Route::post('update-services/{id}', [ServiceConfigController::class, 'update']);
Route::get('delete-services/{id}', [ServiceConfigController::class, 'destroy']);
Route::get('get-services/{id}', [ServiceConfigController::class, 'edit']);
Route::get('get-account-services', [ServiceConfigAccountController::class, 'index']);
Route::post('save-account-services', [ServiceConfigAccountController::class, 'store']);
Route::post('update-account-services/{id}', [ServiceConfigAccountController::class, 'update']);
Route::get('delete-account-services/{id}', [ServiceConfigAccountController::class, 'destroy']);
Route::get('get-account-services/{id}', [ServiceConfigAccountController::class, 'edit']);
//================ FIM DE SERVICES NOTIFICATION =======================
// KRB Methods
Route::post('create-partner-services', [MerchantController::class, 'createPartnerServices']);
Route::get('get-partner-services', [MerchantController::class, 'getPartnerServices']);
Route::post('update-user-client/{id}', [UserClientController::class, 'updateUserClient2024']);
// Payment Services
Route::post('create-payment-services', [AdminController::class, 'createPaymentServices']);
//Route::get('get-payment-services', [AdminController::class, 'getPaymentServices']);
Route::get('get-all-payment-services', [AdminController::class, 'getAllPaymentServices']);
Route::post('create-ai-data', [AdminController::class, 'createIAData']);
// Kiara Methods
Route::get('get-merchants', 'ComercianteController@getComerciantes');
Route::get('get-subaccounts', 'UserController@getSubAccountsAdmin');
Route::get('get-all-stores-transactions', [App\Http\Controllers\ThirdPartController::class, 'getAllStoresTransactionsAdmin']);
// Route::get('stores-transactions-exp', [App\Http\Controllers\ThirdPartController::class, 'getAllStoresTransactionsAdminExport']);
Route::get('get-month-close', [App\Http\Controllers\ThirdPartController::class, 'getMonthClose']);
});
Route::get('ai-data', [AdminController::class, 'getAllIAData']);
// get All transactions TRANSFER | PAYMENT
Route::get('all-transaction', [PaymentController::class, 'getAllTransactionData']);
//Route::get('get-payment-services', [AdminController::class, 'getPaymentServices']);
Route::post('create-applications', [App\Http\Controllers\ApplicationController::class, 'createApplication']);
Route::post('encrypt-applications', [App\Http\Controllers\ApplicationController::class, 'encryptString']);
//JWT
Route::post('encrypt-jwt', [App\Http\Controllers\ApplicationController::class, 'encryptStringJWT']);
Route::middleware(['applicationsv2', 'localization'])->prefix('apps')->group(function () {
// Route::get('decrypt-jwt', [App\Http\Controllers\ApplicationController::class, 'decryptStringJWT']);
Route::get('get-payment-services', [AdminController::class, 'getPaymentServices']);
Route::get('get-merchant-from-website/{account_number}', [App\Http\Controllers\ThirdPartController::class, 'getStoreMerchant']);
// Route::post('decrypt-applications', [App\Http\Controllers\ApplicationController::class, 'decryptString']);
// Route::post('c2b/{wallet_name}/recharge/store', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStore']);
// Route::post('imaliway/{payment_method}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStore']);
// iMali GateWay Payments - POS e APP Web
// Route::post('imaliway/v2/{payment_method}/{payment_type}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
// Route::get('imaliway/v2/{payment_type}/payments/{partner_transation_id}/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::get('imaliway/v2/payments/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
Route::post('imaliway/v2/payments/qrcode/refresh', [App\Http\Controllers\ThirdPartController::class, 'make_refresh_qrcode_payments_new25']);
});
// TERMINAL
Route::post('encrypt-terminal', [App\Http\Controllers\ApplicationController::class, 'encryptString']);
Route::post('create-terminal', [App\Http\Controllers\ApplicationController::class, 'createterminals']);
Route::get('get-my-terminals/{account_number}', [App\Http\Controllers\ApplicationController::class, 'getMyTerminals']);
Route::post('decrypt-applications', [App\Http\Controllers\ApplicationController::class, 'decryptString']);
// ROTAS DAS TERMINALs iMali
Route::middleware('terminals')->prefix('terminals')->group(function () {
// Route::post('imaliway/{payment_method}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStore']);
Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::get('account_store', [App\Http\Controllers\StoreController::class, 'getUserStore']);
Route::get('get-store-transactions', [App\Http\Controllers\StoreController::class, 'getTransactionsStore']);
// GENERATE TRANSACTION
Route::post('generate-store-transaction', [UserClientController::class, 'QrcodeStore']); // funciona
Route::get('get-payment-services', [AdminController::class, 'getPaymentServices']);
});
// ROTAS DAS TERMINALs iMali V2
Route::middleware('terminalsv2')->prefix('terminalsv2')->group(function () {
// Route::post('imaliway/{payment_method}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStore']);
Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::get('imaliway/v2/payments/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
Route::get('account_store', [App\Http\Controllers\StoreController::class, 'getUserStore']);
Route::get('get-store-transactions', [App\Http\Controllers\StoreController::class, 'getTransactionsStore']);
// GENERATE TRANSACTION
Route::post('generate-store-transaction', [UserClientController::class, 'QrcodeStore']); // funciona
Route::get('get-payment-services', [AdminController::class, 'getPaymentServices']);
});
// NOVAS ROTAS DOS PARTNERS iMali --- IMALIGATEWAY ..::::::::..
Route::middleware(['localization', 'partnersv2'])->prefix('partners')->group(function () {
// Route::prefix('partners')->group(function () {
// Route::post('imaliway/{payment_method}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStore']);
// Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'imaliway_guard_new25']);
Route::post('imaliway/v2/payments/check', [App\Http\Controllers\ThirdPartController::class, 'checkB2CDepositNew25']);
Route::get('imaliway/v2/payments/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
Route::post('imaliway/v2/payments/qrcode/refresh', [App\Http\Controllers\ThirdPartController::class, 'make_refresh_qrcode_payments_new25']);
Route::get('imaliway/v2/payments/client/balance', [App\Http\Controllers\ThirdPartController::class, 'check_imali_account_balance_new25']);
// B2C
Route::get('imaliway/v2/payments/check-b2c-fees', [App\Http\Controllers\ThirdPartController::class, 'checkB2CFeesTransactionImaliway']);
// Teste de pagamento por Cartao NFC
Route::get('imaliway/v2/payments/balance', [ThirdPartController::class, 'check_card_balance_new25']);
Route::post('imaliway/v2/payments/refund', [ThirdPartController::class, 'make_payment_refund_new25']);
// Teste de pagamento por Cartao NFC
});
// NOVAS ROTAS DOS PARTNERS iMali
Route::middleware(['partnersv2'])->prefix('partnersv2')->group(function () {
Route::post('imaliway/{payment_method}/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStore']);
Route::get('imaliway/{payment_method}/payments/status/{push_id}', [App\Http\Controllers\ThirdPartController::class, 'checkPushStatus']);
// GENERATE PAYMENT PUSH
// Route::post('generate-payment-push', [App\Http\Controllers\ThirdPartController::class, 'generatePaymentPush']); // funciona
Route::middleware('localization')->post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::middleware('localization')->get('imaliway/v2/payments/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
Route::middleware('localization')->post('imaliway/v2/payments/qrcode/refresh', [App\Http\Controllers\ThirdPartController::class, 'make_refresh_qrcode_payments_new25']);
});
//fim rotas admin
## ================ SERVICES NOTIFICATION =======================
///Route::get('get-services', [ServiceConfigController::class, 'index']);
//Route::post('save-services', [ServiceConfigController::class, 'store']);
//Route::post('update-services/{id}', [ServiceConfigController::class, 'update']);
//Route::get('delete-services/{id}', [ServiceConfigController::class, 'destroy']);
//Route::get('get-services/{id}', [ServiceConfigController::class, 'edit']);
//Route::get('get-account-services', [ServiceConfigAccountController::class, 'index']);
//Route::post('save-account-services', [ServiceConfigAccountController::class, 'store']);
//Route::post('update-account-services/{id}', [ServiceConfigAccountController::class, 'update']);
//Route::get('delete-account-services/{id}', [ServiceConfigAccountController::class, 'destroy']);
//Route::get('get-account-services/{id}', [ServiceConfigAccountController::class, 'edit']);
## ================ FIM DE SERVICES NOTIFICATION =======================
//Route::post('add-store-to-client', 'UserClientController@addStoreToUserClient');
Route::post('add-store-to-client', [UserClientController::class, 'addStoreToUserClient']);
Route::post('userF', 'UserClientController@getUser');
//Route::post('send-codigo', 'UserController@verifyUserNumber');
Route::post('send-sms-token', 'UserController@sendSMSToken');
Route::post('resend-code-verification', 'UserController@resendCode');
Route::post('check-codigo', 'UserController@checkCodigo');
Route::post('sms-test', 'UserController@sendSMS');
Route::get('teste', 'UserController@teste');
Route::post('update-firebase-token', 'UserController@updateFirebaseToken');
Route::post('recharge-by-reference', 'UserController@rechargeByReference2');
Route::get('topup-water-client2', 'TopUpController@getWaterClient');
Route::get('topup-advice', 'TopUpController@runAdvice');
Route::get('topup-close', 'TopUpController@topUpClose');
Route::get('topup-balance', 'TopUpController@getBalance');
Route::get('get-my-devices', 'ConfigController@getMyDevices');
Route::get('get-map-stores-off', [MerchantController::class, 'getAllStores']);
//? registo de tarifas
Route::post('imali-tariffs', 'ImaliTariffController@createTariff');
Route::post('delete-account', 'UserController@makeAccountDeletionRequest2024')->name('delete-account');
// todo BUSINESS-API
// comprar recargas para uma ou varias contas
// fazer withdrawalls com varias fontes MPesa, Banco, etc
// Consultar lojas, movimentos (pagamentos, transferencias) da conta Empresa
//? Rotas do dasboard para contas Empresa
Route::middleware(['auth:business'])->prefix('business-web')->group(function () {
Route::get('get-all-stores', [BusinessController::class, 'getAllStores']);
Route::get('user', [BusinessController::class, 'getUser']);
Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
// Metodos Lojas Conta Empresa
Route::get('get-empresa-stores', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaStores']);
// Route::get('get-payments-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsStores']);
Route::get('get-payments-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsStores']);
Route::get('get-payments-stores-details/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsDetails']);
Route::get('get-stores-data/{id}', [App\Http\Controllers\ThirdPartController::class, 'getStoresData']);
// Links
Route::get('get-stores-links', [App\Http\Controllers\ThirdPartController::class, 'getStoresLink']);
Route::get('get-payments-links', [App\Http\Controllers\ThirdPartController::class, 'getLinkPayments']);
// Create Link
Route::post('create-payment-link', [App\Http\Controllers\PaymentController::class, 'paymentLink']);
Route::get('update-payment-link', [App\Http\Controllers\PaymentController::class, 'updateLink']);
// Metricas
Route::get('get-count-stores', [App\Http\Controllers\ThirdPartController::class, 'getCountStores']);
Route::get('get-all-transactions-stores', [App\Http\Controllers\ThirdPartController::class, 'getAllTransactionStores']);
Route::get('get-total-transactions-stores', [App\Http\Controllers\ThirdPartController::class, 'getTotalTransactionStores']);
Route::get('get-transactions-by-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getTransactionByStores']);
Route::get('get-total-by-day', [App\Http\Controllers\ThirdPartController::class, 'getTotalTransactionStoresDay']);
Route::get('get-transactions-days/{id}/{startDate}/{endDate}', [App\Http\Controllers\ThirdPartController::class, 'getTransactionStoresDates']);
Route::get('get-all-stores-transactions', [App\Http\Controllers\ThirdPartController::class, 'getAllStoresTransactions']);
Route::get('get-all-stores-transactions-c2b-b2c', [App\Http\Controllers\ThirdPartController::class, 'getAllStoresTransactionsC2B2C']);
// Metodos de Solicitacao de Credito
Route::get('get-credit-solicitation', [App\Http\Controllers\CreditSolicitationController::class, 'get_credit_solicitation']);
Route::post('update-credit-solicitation', [App\Http\Controllers\CreditSolicitationController::class, 'update_credit_solicitation']);
Route::get('business-solicitation-file/{card_number}', function ($subAccounNumber) {
return (new CreditSolicitationPdf($subAccounNumber))->exportPDF();
});
// ORDENS DE DEBITO NA CONTA BUSINESS...
Route::post('create_debit', [App\Http\Controllers\DebitOrderController::class, 'create_debit']);
Route::get('get_debit', [App\Http\Controllers\DebitOrderController::class, 'get_debit']);
Route::post('approve_debit/{id}', [App\Http\Controllers\DebitOrderController::class, 'approve']);
Route::post('reject_debit/{id}', [App\Http\Controllers\DebitOrderController::class, 'reject']);
Route::post('complete_debit/{id}', [App\Http\Controllers\DebitOrderController::class, 'complete']);
Route::post('change-password', [App\Http\Controllers\BusinessController::class, 'changePassword']);
Route::post('logout', 'Api\Auth\LoginController@logout');
// LOGs Business Dashboard
Route::get('activity-log', [App\Http\Controllers\BusinessLogController::class, 'activity_log']);
});
Route::post('webhook-dojah', [App\Http\Controllers\DojahWebhookController::class, 'receive']);
Route::get('webhook-dojah', [App\Http\Controllers\DojahWebhookController::class, 'key']);
// Route::get('webhook-dojah', function () {
// return response()->json(['status' => 'ok', 'message' => 'Endpoint ok']);
// });
// Route::middleware(['auth:business-api', 'log'])->prefix('business')->group(function () {
Route::middleware(['auth:business-api'])->prefix('business')->group(function () {
Route::get('get-all-stores', [BusinessController::class, 'getAllStores']);
Route::get('user', [BusinessController::class, 'getUser']);
// todo -- ROTAS PARA IMALIWAY
Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::get('imaliway/v2/payments/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
Route::post('imaliway/v2/payments/qrcode/refresh', [App\Http\Controllers\ThirdPartController::class, 'make_refresh_qrcode_payments_new25']);
Route::get('imaliway/v2/payments/pendings', [App\Http\Controllers\ThirdPartController::class, 'get_imali_push_pendings_new25']);
// TODO -- ROTAS PARA IMALIWAY
// Metodos Lojas Conta Empresa
Route::get('get-empresa-stores', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaStoresMobile']);
// Route::get('get-payments-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsStores']);
Route::get('get-payments-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsStores']);
Route::get('get-payments-stores-details/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsDetails']);
Route::get('get-stores-data/{id}', [App\Http\Controllers\ThirdPartController::class, 'getStoresData']);
// Links
Route::get('get-stores-links', [App\Http\Controllers\ThirdPartController::class, 'getStoresLink']);
Route::get('get-payments-links', [App\Http\Controllers\ThirdPartController::class, 'getLinkPayments']);
// Create Link
Route::post('create-payment-link', [App\Http\Controllers\PaymentController::class, 'paymentLink']);
Route::get('update-payment-link', [App\Http\Controllers\PaymentController::class, 'updateLink']);
// Metricas
Route::get('get-count-stores', [App\Http\Controllers\ThirdPartController::class, 'getCountStores']);
Route::get('get-all-transactions-stores', [App\Http\Controllers\ThirdPartController::class, 'getAllTransactionStores']);
Route::get('get-total-transactions-stores', [App\Http\Controllers\ThirdPartController::class, 'getTotalTransactionStores']);
Route::get('get-transactions-by-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getTransactionByStores']);
Route::get('get-total-by-day', [App\Http\Controllers\ThirdPartController::class, 'getTotalTransactionStoresDay']);
Route::get('get-transactions-days/{id}/{startDate}/{endDate}', [App\Http\Controllers\ThirdPartController::class, 'getTransactionStoresDates']);
Route::get('get-all-stores-transactions', [App\Http\Controllers\ThirdPartController::class, 'getAllStoresTransactions']);
Route::get('get-all-stores-transactions-c2b-b2c', [App\Http\Controllers\ThirdPartController::class, 'getAllStoresTransactionsC2B2C']);
// Metodos de Solicitacao de Credito
Route::get('get-credit-solicitation', [App\Http\Controllers\CreditSolicitationController::class, 'get_credit_solicitation']);
Route::post('update-credit-solicitation', [App\Http\Controllers\CreditSolicitationController::class, 'update_credit_solicitation']);
Route::get('business-solicitation-file/{card_number}', function ($subAccounNumber) {
return (new CreditSolicitationPdf($subAccounNumber))->exportPDF();
});
// ORDENS DE DEBITO NA CONTA BUSINESS...
Route::post('create_debit', [App\Http\Controllers\DebitOrderController::class, 'create_debit']);
Route::get('get_debit', [App\Http\Controllers\DebitOrderController::class, 'get_debit']);
Route::post('approve_debit/{id}', [App\Http\Controllers\DebitOrderController::class, 'approve']);
Route::post('reject_debit/{id}', [App\Http\Controllers\DebitOrderController::class, 'reject']);
Route::post('complete_debit/{id}', [App\Http\Controllers\DebitOrderController::class, 'complete']);
Route::post('change-password', [App\Http\Controllers\BusinessController::class, 'changePassword']);
Route::post('logout', 'Api\Auth\LoginController@logout');
// LOGs Business Dashboard
Route::get('activity-log', [App\Http\Controllers\BusinessLogController::class, 'activity_log']);
});
//BUSINESS LOGIN
// Route::post('business/login', [LoginController::class, 'login']);
// Route::post('business/login', 'Api\Auth\LoginController@login');
// todo --- 20/10/2025 ⭐
// Route::post('business/login', [BusinessLoginController::class, 'login']);
Route::post('business-web/login', [BusinessLoginController::class, 'login']);
// Route::middleware('auth:api', 'appversion', 'localization')->group(function () {
Route::middleware('auth:api', 'localization')->group(function () {
//Account Deletion Request
Route::post('make-account-deletion-request', 'UserController@makeAccountDeletionRequest');
// Route::get('get-account-deletion-requests', 'UserController@getAccountDeletionRequests');
Route::get('get-account-deletion-reasons', 'UserController@getAccountDeletionReasons');
// DENY PAYMENT PUSH
Route::post('deny-payment-push', [UserClientController::class, 'denyPaymentPush']); // funciona
//check Pin
Route::post('check-pin-unlock', [\App\Http\Controllers\UserController::class, 'validatePin']);
//get All Stores
Route::get('get-map-stores', [MerchantController::class, 'getAllStores']);
// PAGAR STARTIMES
Route::post('pay-startimes-test', [TopUpTestController::class, 'payStartTimesPackage']);
// ATERAR ISTO
Route::post('pay-startimes', [TopUpController::class, 'payStartTimesPackage']);
Route::get('check-client-start/{smartCard}', [TopUpController::class, 'checkClientStartTimes']);
Route::post('upload-document', 'UserDocumentController@updateDocoment');
Route::get('get-meu-extrato', 'MonthCloseController@getMonthClose');
Route::get('topup-zap-pacotes', 'TopUpController@getZapPacotes');
Route::post('topup-buy-zap-pacote', 'TopUpController@buyZapPacote');
// Route::get('topup-get-dstv/{customer_number}/{type}', 'TopUpTestController@getDstvProducts'); // teste
Route::get('topup-get-dstv/{customer_number}/{type}', [TopUpController::class, 'getDstvProducts']);
// Route::post('topup-pay-dstv', 'TopUpTestController@buyDstvPacote'); // teste
Route::post('topup-pay-dstv', [TopUpController::class, 'buyDstvPacote']);
Route::post('pay-dstv', 'TopUpTestController@buyDstvPacote');
Route::get('get-my-water-contador', 'WaterController@getWaterContadores');
//? Remover contador de Agua
Route::get("remove-contadors-water/{id}", 'WaterController@destroy');
//? Adicionar contador de Agua
Route::post('add-water-contadors', 'WaterController@addContaWaters');
//? Remover contador de Credelec
Route::get("remove-contadors-credelec/{id}", 'TopUpController@destroy');
Route::post('topup-water-client', 'TopUpController@getWaterClient');
Route::post('topup-pay-water', 'TopUpController@payWater');
Route::post('topup-check-contador', 'TopUpController@checkContador');
Route::get('get-my-contador', 'TopUpController@getMyContador');
Route::post('deny-money-request', 'MoneyRequestController@recusarPedido');
Route::post('money-request', 'MoneyRequestController@requestMoney');
Route::get('get-meus-pedidos', 'MoneyRequestController@getMeusPedidos');
Route::get('get-app-logs', 'LogController@getLogs');
Route::post('update-avatar', 'UserController@updateAvatar');
Route::get('user', 'UserController@getUser');
Route::get('show-hide-balance', 'UserController@hideAndShowBalance');
Route::get('disable-user/{id}', 'UserController@disableUser');
Route::post('change-password', 'UserController@changePassword');
Route::post('check-pin', 'UserController@checkPin');
// Route::post('generate-amount', 'UserController@generateAmount');
Route::post('generate-amount', [UserController::class, 'generateAmount']);
Route::get('get-client/{transaction}', 'UserController@getClientDataForPayment');
Route::get('get-client-account/{account}', [UserController::class, 'getClientAccount']);
Route::post('upload-photo', 'UserController@uploadPhoto');
// Route::post('logout', 'Api\Auth\LoginController@refresh');
Route::post('logout', 'Api\Auth\LoginController@logout');
Route::get('get-my-imali/{id}', 'UserController@getMyImaliAccount');
Route::get('get-imali-accounts', 'UserController@getImaliAccounts');
Route::get('mytransactions/{id}', 'PaymentController@getMyTransactions');
Route::get('get-user/{id}', 'PaymentController@getUser');
Route::get('get-test/{id}', 'PaymentController@getTesteTransaction');
Route::post('recharge', 'UserController@rechargeAccount');
Route::post('recharge-bank-reference', 'UserController@rechargeByReference');
Route::get('users', 'UserController@users');
Route::get('get-bank-connections', 'UserController@bankConnections');
Route::post('update-user-data-mobile', 'UserController@updateUserDataMobile');
Route::post('save-comerciante', 'ComercianteController@saveComerciante');
Route::post('save-store', 'ComercianteController@saveLoja');
Route::post('update-merchant', 'ComercianteController@updateComerciante');
Route::post('mine-transaction', 'PaymentController@makePayment');
// MAKE PAYMENT
// Route::post('mine-transaction-store', 'PaymentController@makePaymentStore');
// Route::post('mine-transaction-store-no-pin', 'PaymentController@makePaymentStore2');
// Route::post('mine-transaction-store', [PaymentController::class, 'makePaymentStoreAppNew']); //? OLD
Route::post('mine-transaction-store', [PaymentController::class, 'payment_guard']); // todo ---- NEW
// Route::post('mine-transaction-store', [PaymentController::class, 'makePaymentStore']);
// Route::post('mine-transaction-store-no-pin', [PaymentController::class, 'makePaymentStore2']);
Route::post('mine-transaction-store-no-pin', [PaymentController::class, 'makePaymentStoreAppNew']);
// Route::post('mine-transaction-store-2024', [PaymentController::class, 'makePaymentStoreApp2024']); //? OLD
Route::post('mine-transaction-store-2024', [PaymentController::class, 'payment_guard']); // todo ---- NEW
Route::get('get-payments', 'PaymentController@getPayments');
Route::get('get-my-payment/{id}', 'PaymentController@getMyPayments');
Route::get('get-my-payments', 'PaymentController@getMyPayments2');
Route::get('get-transferencias', 'PaymentController@getTransferencias');
Route::get('get-carregamentos', 'PaymentController@getCarregamentos');
Route::get('get-my-carregamentos2/{id}', 'PaymentController@getMyCarregamentos2');
Route::get('get-my-carregamentos', 'PaymentController@getMyCarregamentos');
Route::get('get-my-transferencias/{id}', 'PaymentController@getMyTransferencias');
Route::get('get-my-vouchers', 'PaymentController@getMyVouchers');
//? Get Withdrawalls Request data
Route::get('get-my-withdrawalls', 'PaymentController@getMyWithDrawalls');
//? Get Withdrawalls Request data
//Route::post('transfer-money', 'PaymentController@transferMoney');
//Route::post('transfer-money-no-pin', 'PaymentController@transferMoney2');
Route::post('transfer-money-new', 'PaymentController@transferMoneyNew2024');
Route::post('transfer-money', 'PaymentController@transferMoneyNew2024');
Route::post('transfer-money-no-pin', 'PaymentController@transferMoneyNew2024');
Route::post('pay-loans', 'PaymentController@pay_loans');
Route::get('pay-loans-payments/{credit_request}', 'PaymentController@pay_loans_payments');
Route::get('accept-loans', 'PaymentController@accept_loans');
Route::post('check-account', 'PaymentController@checkReceiver');
Route::get('get-comerciante2/{account_number}', 'ComercianteController@getComerciante2');
Route::get('get-comerciante/{account_number}', 'ComercianteController@getComerciante');
// Route::post('get-merchant', 'ComercianteController@getMerchant');
// Route::post('get-merchant', 'ComercianteController@getMerchant2');
// Route::post('get-merchant', [ComercianteController::class, 'getStorePayment']);
// Route::post('get-merchant', [ComercianteController::class, 'getStorePayment_new25']);
Route::post('get-merchant', [ComercianteController::class, 'getStorePayment_new25_v8']);
//Route::post('get-merchant', [ComercianteController::class, 'getMerchant2']);
Route::get('get-comerciantes', 'ComercianteController@getComerciantes');
Route::get('get-ramo-activity', 'ComercianteController@getRamoActivity');
//Route::get('get-user-by-account-number/{account_number}', 'ComercianteController@getUserByImaliAccount');
Route::get('get-user-by-account-number/{account_number}', 'ComercianteController@getUserByImaliAccount');
Route::get('get-user-by-account-number-phone/{account_number}', 'ComercianteController@getUserByImaliAccountPhone');
Route::get('get-user-data/{id}', 'ComercianteController@getUserData');
Route::get('get-payments2/{datainicial}/{datafinal}', 'DashboardController@getPayments');
Route::get('get-transferencias2/{datainicial}/{datafinal}', 'DashboardController@getTransferencias');
Route::get('get-comerciante-payments/{account_number}', 'ComercianteController@getComercianteTransactions');
Route::get('get-my-transferencias2/{id}', 'PaymentController@getTransferenciasHistory');
Route::get('get-my-transferencias-data', 'PaymentController@getTransferenciasHistoryData');
// novo metodo transferencias...
Route::get('get-all-transfers', 'PaymentController@getTransferInEx');
// Route::get('get-imali-configuracoes', 'DashboardController@getImaliConfiguracoes');
// Route::get('get-carregamentos2/{datainicial}/{datafinal}', 'DashboardController@getCarregamentos');
//
// Route::get('get-dashboard', 'DashboardController@getIndicadores');
//
// Route::post('update-imaliaccount-config', 'DashboardController@updateImaliAccountConfig');
Route::post('buy-voucher', 'TopUpController@buyVoucher');
Route::post('buy-voucher-token', 'TopUpController@buyVoucherPin');
Route::post('buy-voucher-direct', 'TopUpController@buyVoucherDirectRecharge');
// Route::post('buy-voucher-advice', 'TopUpController@buyVoucherWithAdvice');
// MOBILE ROUTES
Route::get('get-imali-by-phone/{phone}', 'ImaliAccountController@getImaliByPhoneNumber');
Route::get('get-contacts', 'ImaliAccountController@getContacts');
Route::get('get-contacts2', 'ImaliAccountController@getContacts2');
Route::get('get-my-month-consuming', 'UserController@getMyMonthConsuming');
Route::get('get-my-credelec', 'UserController@getMyCredelec');
Route::get('get-my-water', 'UserController@getMyWater');
// END MOBILE ROUTES //
Route::post('buy-credelec', 'TopUpController@buyCredelec');
//? Update Username
Route::post('update-username', 'UserController@updateUsername');
//? Nova rota de teste de Credelec
Route::post('credelec-message', 'TopUpController@credelecMessage');
//? Check Transaction
Route::post('check-withdrawall-transaction', 'UserController@checkWithdrawallTransaction');
//? Save WithDrawalls
Route::post('save-withdrawalls', 'UserController@createWithDrawalls');
//? Validate NIB
Route::post('check-nib', 'UserController@checkNIB');
//? Adicionar novo contacto
Route::post('check-contact', 'UserController@checkContact')->name('check-contact');
Route::post('add-contact', 'UserController@addContact')->name('add-contact');
Route::post('remove-contact', 'UserController@removeContact')->name('remove-contact');
Route::get('get-my-contacts', 'UserController@getMyConctacts')->name('get-my-contacts');
Route::post('check-default-number', 'UserController@checkDefaultNumber')->name('check-default-number');
Route::post('change-default-number', 'UserController@changeDefaultNumber')->name('change-default-number');
//? Adicionar novo contacto
// todo -- METODO GENERICO PARA DEPOSITO..
// Route::post('c2b/{wallet_name}/recharge', [App\Http\Controllers\ThirdPartController::class, 'c2bPayment']);
// Route::post('b2c/{wallet_name}/withdraw', [App\Http\Controllers\ThirdPartController::class, 'b2cPayment']);
// Route::get('customer/{wallet_name}/name', [App\Http\Controllers\ThirdPartController::class, 'maskedName']);
Route::post('c2b/{wallet_name}/recharge', [App\Http\Controllers\ThirdPartController::class, 'c2bDeposit']);
Route::post('b2c/{wallet_name}/withdraw', [App\Http\Controllers\ThirdPartController::class, 'b2cWithdraw']);
Route::get('transac/{wallet_name}/status', [App\Http\Controllers\ThirdPartController::class, 'walletTransacStatus']);
Route::get('customer/{wallet_name}/name', [App\Http\Controllers\ThirdPartController::class, 'getWalletCustomerName']);
Route::get('check/{wallet_name}/b2c-transaction', [App\Http\Controllers\ThirdPartController::class, 'checkB2CTransaction']);
// todo -- 21/10/2025
// Route::get('check/{transfer_to}/withdrawall_transaction', [App\Http\Controllers\ThirdPartController::class, 'checkWithdrawallTransactionNew25']);
// Route::post('create/{transfer_to}/withdrawall_transaction', [App\Http\Controllers\ThirdPartController::class, 'createWithDrawalls_new25']);
Route::get('check-b2c-withdrawall_transaction', [App\Http\Controllers\ThirdPartController::class, 'checkWithdrawallTransactionNew25']);
Route::post('create-b2c-withdrawall_transaction', [App\Http\Controllers\ThirdPartController::class, 'createWithDrawalls_new25']);
// mKesh Response
Route::middleware('localization')->post('recharge-by-mkesh-response', [App\Http\Controllers\ThirdPartController::class, 'c2bMKeshPaymentResponse']);
// // Metodos Lojas Conta Empresa
Route::middleware('localization')->get('get-empresa-stores', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaStoresMobile']);
// Route::middleware('localization')->get('get-payments-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsStores']);
// Route::middleware('localization')->get('get-payments-stores-details/{id}', [App\Http\Controllers\ThirdPartController::class, 'getEmpresaPaymentsDetails']);
// // Metricas
// Route::middleware('localization')->get('get-count-stores', [App\Http\Controllers\ThirdPartController::class, 'getCountStores']);
// Route::middleware('localization')->get('get-all-transactions-stores', [App\Http\Controllers\ThirdPartController::class, 'getAllTransactionStores']);
// Route::middleware('localization')->get('get-total-transactions-stores', [App\Http\Controllers\ThirdPartController::class, 'getTotalTransactionStores']);
// Route::middleware('localization')->get('get-transactions-by-stores/{id}', [App\Http\Controllers\ThirdPartController::class, 'getTransactionByStores']);
// Route::middleware('localization')->get('get-total-by-day', [App\Http\Controllers\ThirdPartController::class, 'getTotalTransactionStoresDay']);
// Route::middleware('localization')->get('get-transactions-days/{id}/{startDate}/{endDate}', [App\Http\Controllers\ThirdPartController::class, 'getTransactionStoresDates']);
//? Pagamento Via Entidades externas
Route::post('withdrawall-by-mpesa', 'ThirdPartController@b2cPayment');
Route::post('recharge-by-mpesa', 'ThirdPartController@c2bPayment');
Route::get('mpesa-customer-masked-name', [App\Http\Controllers\ThirdPartController::class, 'maskedName']);
Route::get('check-mpesa-withdrawall-transaction', 'ThirdPartController@checkB2CTransaction');
//? Pagamento Via Entidades externas
Route::post('create-imali-subaccount-2024', 'UserController@createSubAccounts2024');
//? Criar subcontas iMali
Route::post('create-imali-subaccount', 'UserController@createSubAccounts');
Route::get('get-subaccounts', 'UserController@getSubAccounts');
Route::post('remove-subaccount-money', 'UserController@removeSubAccountMoney');
Route::get('get-subaccounts-transactions', 'UserController@getMyTransactionSubAccount');
//Route::get('get-subaccounts-transactions', 'UserController@getSubAccountsTransactions');
// enviar dinheiro da conta principal para subconta
Route::post('add-money-subaccount', 'UserController@addMoneySubAccount');
// remover dinheiro da conta principal para subconta
Route::post('remove-money-subaccount', 'UserController@removeMoneySubAccount');
Route::post('delete-imali-subaccount', 'UserController@deleteSubAccounts');
Route::post('update-imali-subaccount/{account_number}', 'UserController@updateSubAccounts');
// GET Accounts
Route::get('get-payment-accounts', [UserClientController::class, 'getPaymentAccounts']);
// SWITCH LANG
Route::post('switch-lang', [UserController::class, 'switchLang']);
Route::get('get-meu-extrato', 'MonthCloseController@getMonthClose');
// TESTE Withdrawall 10/12/2024
Route::get('check/{wallet_name}/transaction-status', [App\Http\Controllers\ThirdPartController::class, 'check_pending_withdrawalls']);
// Get My Generated Push Payments
// Route::get('get-my-push-payments', [App\Http\Controllers\ThirdPartController::class, 'getMyGeneratedPushPayments']);
// Get Payment Request Push Payment
Route::get('get-my-push-payments', [App\Http\Controllers\ThirdPartController::class, 'get_my_generated_push_payments_new25']);
// Route::post('create-business-credit-request', [App\Http\Controllers\CreditSolicitationController::class, 'businessCreditRequest']);
// Route::post('create-business-credit-request-2', [App\Http\Controllers\CreditSolicitationController::class, 'businessCreditRequest2']);
// Route::post('create-business-credit-request-3', [App\Http\Controllers\CreditSolicitationController::class, 'businessCreditRequest3']);
// Route::post('final-method', [App\Http\Controllers\CreditSolicitationController::class, 'final_method']);
Route::post('create-business-credit-request', [App\Http\Controllers\CreditSolicitationController::class, 'business_credit_request_method']);
// todo -- EDIT CREDIT REQUEST SOLICITATION
Route::post('edit-business-credit-request-1', [App\Http\Controllers\CreditSolicitationController::class, 'businessCreditRequestEdit']);
Route::post('edit-business-credit-request-2', [App\Http\Controllers\CreditSolicitationController::class, 'businessCreditRequestEditII']);
Route::post('edit-business-credit-request-3', [App\Http\Controllers\CreditSolicitationController::class, 'businessCreditRequestEditIII']);
Route::post('delete-credit-request', [App\Http\Controllers\CreditSolicitationController::class, 'destroy_credit_request']);
Route::get('business-solicitation', [App\Http\Controllers\CreditSolicitationController::class, 'getbusinessCreditRequest']);
Route::get('in-creation-business-solicitation', [App\Http\Controllers\CreditSolicitationController::class, 'getInCreationBusinessCreditRequest']);
// Route::get('business-solicitation', [App\Http\Controllers\CreditSolicitationController::class, 'getbusinessCreditRequestPDFBKP']);
Route::get('get-my-pending-payments', [App\Http\Controllers\ThirdPartController::class, 'get_imali_push_pendings_new25']);
// LINKS de terminal em BUSINESS
Route::post('imaliway/v2/payments', [App\Http\Controllers\ThirdPartController::class, 'c2bDepositStoreNew25']);
Route::get('imaliway/v2/payments/status', [App\Http\Controllers\ThirdPartController::class, 'check_payment_requests_status_new25']);
Route::post('imaliway/v2/payments/qrcode/refresh', [App\Http\Controllers\ThirdPartController::class, 'make_refresh_qrcode_payments_new25']);
Route::get('imaliway/v2/payments/client/balance', [App\Http\Controllers\ThirdPartController::class, 'check_imali_account_balance_new25']);
// LINKS de terminal em BUSINESS
// Route::get('subaccount-extract-file/{card_number}/{startDate}/{endDate}', function ($subAccounNumber, $startDate, $endDate) {
// return (new SubAccountExport($subAccounNumber, $startDate, $endDate))->exportPDF();
// });
Route::get('subaccount-extract-file/{card_number}/{startDate?}/{endDate?}', function ($subAccounNumber, $startDate = null, $endDate = null) {
return (new SubAccountExport($subAccounNumber, $startDate, $endDate))->exportPDF();
});
// Apagar ficheiro
Route::post('delete-subaccount-extract', [App\Http\Controllers\SubAccountControlller::class, 'deleteGeneratedPDF']);
// AI Comments
Route::post('ai-comments', [App\Http\Controllers\Api\AdminController::class, 'create_ai_comment']);
Route::get('users-transac-error', [App\Http\Controllers\Api\AdminController::class, 'users_transac_error']);
});
// Commitions
Route::post('create-transaction-type', [App\Http\Controllers\TransactionCommitionController::class, 'create_transaction']);
Route::get('get-transaction-type', [App\Http\Controllers\TransactionCommitionController::class, 'get_transaction']);
Route::post('create-transaction-direction', [App\Http\Controllers\TransactionCommitionController::class, 'create_transaction_direction']);
Route::get('get-transaction-direction', [App\Http\Controllers\TransactionCommitionController::class, 'get_transaction_direction']);
Route::post('create-fees', [App\Http\Controllers\TransactionCommitionController::class, 'create_transaction_fees']);
Route::get('get-transaction-fees', [App\Http\Controllers\TransactionCommitionController::class, 'get_transaction_fees']);
// AI Comments
Route::get('get-ai-comments', [App\Http\Controllers\Api\AdminController::class, 'get_ai_comment']);
Route::get('get-extract-card-data', [App\Http\Controllers\ThirdPartController::class, 'card_export']);
Route::get('subaccount-extract-file-school/{card_number}/{startDate?}/{endDate?}', function ($subAccounNumber, $startDate = null, $endDate = null) {
return (new SubAccountExportSchool($subAccounNumber, $startDate, $endDate))->exportPDF();
});
// Version APP
Route::get('get-version', [App\Http\Controllers\IMaliAppVersionController::class, 'isAppVersionValid']);
// Gerar PDF
// Route::post('business-solicitation-file', [App\Http\Controllers\CreditSolicitationController::class, 'getbusinessCreditRequestPDF']);
// Route::post('business-solicitation-file', [App\Http\Controllers\CreditSolicitationController::class, 'getbusinessCreditRequestPDF']);
Route::get('business-solicitation-file/{card_number}', function ($subAccounNumber) {
return (new CreditSolicitation($subAccounNumber))->exportPDF();
});
// business-solicitation
Route::post('create-marital-status', [App\Http\Controllers\CreditSolicitationController::class, 'maritalStatus']);
Route::post('create-bem-garantia', [App\Http\Controllers\CreditSolicitationController::class, 'bemGarantia']);
Route::post('create-agregado-familiar', [App\Http\Controllers\CreditSolicitationController::class, 'agregadoFamiliar']);
Route::post('create-despesa-mensal', [App\Http\Controllers\CreditSolicitationController::class, 'despesaMensal']);
Route::post('create-dados-negocio', [App\Http\Controllers\CreditSolicitationController::class, 'dadosNegocio']);
Route::post('create-dados-solicitante', [App\Http\Controllers\CreditSolicitationController::class, 'dadosSolicitante']);
// business-solicitation
// Create Link
Route::post('create-payment-link', [App\Http\Controllers\PaymentController::class, 'paymentLink']);
Route::get('get-store-payment-link/{store_account}', [App\Http\Controllers\PaymentController::class, 'getStorePaymentLink']);
Route::get('get-store-link/{link}', [App\Http\Controllers\PaymentController::class, 'getStoreLink']);
Route::get('all-subaccount-extract', [PaymentController::class, 'subAccountExtract']);
// GET ALL MOVIMENTS
Route::get('get-all-moviments', [App\Http\Controllers\Api\AdminController::class, 'getAllMoviments']);
Route::get('subaccounts-report', [App\Http\Controllers\StoreController::class, 'subAccountReport']);
// ? Criar subAccounts
Route::post('create-subaccounts', 'UserController@createSubAccountsTypes');
Route::get('get-subaccounts-types', 'UserController@getSubAccountsTypes');
// ? Webservices TVCabo
Route::get('tvcabo-client-validate', 'UserController@tvcaboCheckClient');
// ? Webservices TVCabo
//? reset PIN
Route::get('recuperar-pin', function () {
return view('recuperar-pin');
});
Route::post('reset-pin', 'UserController@resetPIN')->name('reset-pin');
Route::get('definir-pin/{token}', 'UserController@definirPin')->name('definir-pin');
Route::post('salvar-pin', 'UserController@salvarPin')->name('salvar-pin');
// Route::get('pagina-erro', 'UserController@paginaErro')->name('pagina-erro');
//? reset PIN
//? Check Username
Route::get('check-username', 'UserController@checkUserName');
//? Check Phone
Route::get('check-phone-number', 'UserController@checkUserPhone');
//? Check Email
Route::get('check-email', 'UserController@checkUserEmail');
//? Get Wallets
Route::get('get-wallets', 'UserController@getWallets');
//? Check Transaction
//Route::post('check-withdrawall-transaction', 'UserController@checkWithdrawallTransaction');
//? Save WithDrawalls
//Route::post('save-withdrawalls', 'UserController@createWithDrawalls');
Route::get('wallet-csv', function () {
$data = new \App\Exports\WalletExport();
$date = date('Y') . date('m') . date('d');
$hours = date('H') . date('i') . date('s');
$fileName = "Transac_iMali_" . $date . "-" . $hours . '.csv';
file_put_contents(storage_path('/app/template/' . $fileName), file_get_contents(storage_path('/app/template/template.csv')));
$file = fopen(storage_path('/app/template/' . $fileName), 'a') or die('unable to open file');
foreach ($data->collection() as $key => $value) {
$text = $value['value' . $key] . "\n";
fwrite($file, $text);
}
fclose($file);
rename(storage_path('/app/template/' . $fileName), storage_path('/app/downloads/' . $fileName));
$filePath = "/downloads/" . $fileName;
$uploadPath = storage_path('app' . $filePath);
if (count($data->collection()) === 0) return print("No data found!");
$filePath = str_replace('\\', '/', $uploadPath);
//ENCRIPTAR FICHEIRO
$commands = explode(",", "gpg --homedir /home/paytek/.gnupg --recipient einstein.bata@mozabanco.co.mz --encrypt " . $filePath . "," . "mv " . $filePath . ".gpg" . " /var/sftp/uploads_mozabanco/imali_transac_files/" . $fileName . ".gpg");
foreach ($commands as $command) {
exec($command, $output, $returnDir);
if ($returnDir === 0) {
echo 'Command executed successfully!';
} else {
echo 'Command execution failed.';
}
}
//? actualizar os dados para pending..
foreach ($data->collection() as $key => $value) {
$transacData = explode(",", $value['value' . $key]);
$phoneOrnib = $transacData[0];
$phoneOrnibLength = strlen($phoneOrnib);
if ($phoneOrnibLength == 9) {
\App\WithdrawalsRequest::query()
->where('phone', $phoneOrnib)
->where('status', 'new')
->update(['status' => 'pending']);
} else if ($phoneOrnibLength == 21) {
\App\WithdrawalsRequest::query()
->where('nib', $phoneOrnib)
->where('status', 'new')
->update(['status' => 'pending']);
}
}
return "Done.";
});
Route::get('get-contacts3', 'ImaliAccountController@getContacts2');
// TESTES
//FIM DOS TESTES
Route::post('test/save-store', 'ComercianteController@saveLoja');
Route::get('est', 'DashboardController@getMyStatics');
//Route::post('buy-voucher', 'TopUpController@buyVoucher');
Route::post('buy-voucher-advice', 'TopUpController@buyVoucherWithAdvice');
Route::get('get-voucher-list', 'TopUpController@getVoucherList');
//Route::post('buy-voucher-direct', 'TopUpController@buyVoucherDirectRecharge');
Route::get('get-voucher-list-local/{id}', 'TopUpController@getVoucherListLocal');
Route::get('get-voucher-types', 'TopUpController@getVoucherTypes');
Route::post('save-voucher-type', 'TopUpController@saveVoucherType');
Route::get('get-voucher-tv', 'TopUpController@getVoucherTv');
//Route::post('recarga-test', 'RecargaAquiController@getVouchers');
Route::post('recarga-test', 'RecargaAquiController@secureSocket');
Route::get('secure-socket', 'RecargaAquiController@secureSocket');
Route::get('send-sms', 'ProfitController@sendSMS');
Route::post('recharge-mpesa-java', 'ApiController@mPesaRecharge');
Route::get('get-users2', 'UserController@getUsers');
Route::post('kyc', 'UserKycController@check');
Route::post('kyc-recharge', 'UserKycController@makeCheck');
Route::post('kyc-payment-check', 'UserKycController@checkSenderPayment');
Route::post('close-store-day', 'DayCloseStoreController@dayCloseStore');