Aller au contenu principal

Gestion des cycles de paiement

Lister les cycles

Récupère la liste des cycles de paiement avec filtres optionnels.

Endpoint

GET /api/paiements/cycles

Paramètres de requête

ParamètreTypeRequisDescription
programmeUUIDNonFiltrer par programme
statutstringNonFiltrer par statut
searchstringNonRecherche textuelle

Exemple de requête

curl -X GET "https://api.pch-sig.org/api/paiements/cycles?statut=valide" \
-H "Authorization: Bearer <token>"

Réponse

{
"success": true,
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440001",
"code": "PCH-C001",
"nom": "Cycle Janvier 2025",
"numero": 1,
"programme": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"nom": "Programme Capital Humain"
},
"dateDebut": "2025-01-01",
"dateFin": "2025-01-31",
"statut": "valide",
"nbBeneficiairesPrevu": 3500,
"nbBeneficiairesPaye": 3450,
"montantTotalPrevu": 87500000,
"montantTotalPaye": 86250000,
"tauxExecution": 98.57
}
]
}

Créer un cycle

Crée un nouveau cycle de paiement et génère automatiquement les paiements.

Endpoint

POST /api/paiements/cycles

Corps de la requête

{
"programme_id": "550e8400-e29b-41d4-a716-446655440000",
"periode_debut": "2025-02-01",
"periode_fin": "2025-02-28"
}

Paramètres

ParamètreTypeRequisDescription
programme_idUUIDOuiID du programme
periode_debutdateOuiDate de début (YYYY-MM-DD)
periode_findateOuiDate de fin (YYYY-MM-DD)

Réponse

{
"success": true,
"data": {
"cycle_id": "550e8400-e29b-41d4-a716-446655440002",
"code": "PCH-C002",
"paiements_generes": {
"total": 3500,
"montant_total": 87500000
}
}
}

Codes de réponse

CodeDescription
200Cycle créé avec succès
400Données invalides
401Non authentifié
403Non autorisé (rôle insuffisant)
404Programme non trouvé

Valider un cycle

Valide un cycle pour permettre son exécution.

Endpoint

POST /api/paiements/cycles/{id}/validate

Paramètres

ParamètreTypeRequisDescription
idUUIDOuiID du cycle (dans l'URL)

Exemple de requête

curl -X POST "https://api.pch-sig.org/api/paiements/cycles/550e8400-e29b-41d4-a716-446655440002/validate" \
-H "Authorization: Bearer <token>"

Réponse

{
"success": true,
"data": {
"statut": "valide"
}
}

Erreurs possibles

CodeMessageDescription
400Cycle déjà validé ou en coursLe cycle n'est pas en statut preparation
404Cycle non trouvéID invalide