Mini API: account settings, wallet & support endpoints for the app.
Deploy Ladill Mini / deploy (push) Successful in 40s

Adds /api/v1/mini account (settings, profile, change-password), wallet (balance
+ ledger, Paystack top-up) and support (Afia chat) endpoints. Account/profile/
password/top-up proxy to the central identity API via a CallsIdentityApi trait;
notifications, wallet balance and support chat are served locally.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
isaacclad
2026-06-11 11:03:33 +00:00
co-authored by Claude Opus 4.8
parent 90d7aab547
commit c39e38cbe0
5 changed files with 285 additions and 0 deletions
+15
View File
@@ -2,10 +2,13 @@
use App\Http\Controllers\Api\AuthController;
use App\Http\Controllers\Api\MeController;
use App\Http\Controllers\Api\Mini\AccountController as MiniAccountController;
use App\Http\Controllers\Api\Mini\OverviewController as MiniOverviewController;
use App\Http\Controllers\Api\Mini\PaymentQrController as MiniPaymentQrController;
use App\Http\Controllers\Api\Mini\PaymentsController as MiniPaymentsController;
use App\Http\Controllers\Api\Mini\PayoutsController as MiniPayoutsController;
use App\Http\Controllers\Api\Mini\SupportController as MiniSupportController;
use App\Http\Controllers\Api\Mini\WalletController as MiniWalletController;
use App\Http\Controllers\Api\QrCodeController;
use Illuminate\Support\Facades\Route;
@@ -36,5 +39,17 @@ Route::prefix('v1')->group(function () {
Route::get('/mini/payments', [MiniPaymentsController::class, 'index'])->name('api.mini.payments.index');
Route::get('/mini/payouts', MiniPayoutsController::class)->name('api.mini.payouts');
// Account self-service (Settings, Wallet, Support) — keeps Mini usable
// entirely in-app without the website.
Route::get('/mini/account/settings', [MiniAccountController::class, 'settings'])->name('api.mini.account.settings');
Route::put('/mini/account/settings', [MiniAccountController::class, 'updateSettings'])->name('api.mini.account.settings.update');
Route::put('/mini/account/profile', [MiniAccountController::class, 'updateProfile'])->name('api.mini.account.profile');
Route::post('/mini/account/change-password', [MiniAccountController::class, 'changePassword'])->name('api.mini.account.change-password');
Route::get('/mini/wallet', [MiniWalletController::class, 'show'])->name('api.mini.wallet');
Route::post('/mini/wallet/topup', [MiniWalletController::class, 'topup'])->name('api.mini.wallet.topup');
Route::post('/mini/support/chat', [MiniSupportController::class, 'chat'])->name('api.mini.support.chat');
});
});