# Rotas do Sistema de Afiliados

## Adicionar em `backend/routes/api.php`

```php
// Rotas de Afiliados (usuário)
Route::middleware('auth:sanctum')->prefix('affiliates')->group(function () {
    Route::get('/', [AffiliateController::class, 'index']);
    Route::get('/stats', [AffiliateController::class, 'stats']);
    Route::get('/referrals', [AffiliateController::class, 'referrals']);
    Route::get('/commissions', [AffiliateController::class, 'commissions']);
    Route::get('/payouts', [AffiliateController::class, 'payouts']);
    Route::put('/pix', [AffiliateController::class, 'updatePix']);
});

// Rotas Admin - Afiliados
Route::middleware('auth:sanctum')->prefix('admin/affiliates')->group(function () {
    Route::get('/', [AdminAffiliateController::class, 'index']);
    Route::get('/stats', [AdminAffiliateController::class, 'stats']);
    Route::get('/pending', [AdminAffiliateController::class, 'pendingApprovals']);
    Route::get('/{id}', [AdminAffiliateController::class, 'show']);
    Route::post('/{id}/approve', [AdminAffiliateController::class, 'approve']);
    Route::post('/{id}/reject', [AdminAffiliateController::class, 'reject']);
    Route::post('/{id}/payout', [AdminAffiliateController::class, 'createPayout']);
    Route::get('/payouts', [AdminAffiliateController::class, 'payouts']);
    Route::post('/payouts/{payoutId}/paid', [AdminAffiliateController::class, 'markPayoutPaid']);
});
```

## Adicionar imports no topo do arquivo

```php
use App\Http\Controllers\Api\AffiliateController;
use App\Http\Controllers\Admin\AdminAffiliateController;
```

## Adicionar middleware de tracking

No `bootstrap/app.php`, adicionar o middleware `TrackAffiliateReferral` nas rotas web:

```php
$middleware->web(append: [
    \App\Http\Middleware\TrackAffiliateReferral::class,
]);
```

