Formule de calcul
Allocation supplémentaire d'invalidité (Asi)
Source : Articles L815-24 à L815-29 du Code de la sécurité sociale (consulté le lundi 1 janvier 1)
Ce dispositif est à jour !
La dernière date de relecture du dispositif est lundi 15 janvier 2024.
Formule de calcul OpenFisca à compter du 2020-04-01 :
def formula_2020_04_01(individu, period, parameters): maries = individu.famille('maries', period) en_couple = individu.famille('en_couple', period) asi_aspa_nb_alloc = individu.famille('asi_aspa_nb_alloc', period) base_ressources = individu.famille('asi_aspa_base_ressources', period) asi = parameters(period).prestations_sociales.prestations_etat_de_sante.invalidite.asi aspa = parameters(period).prestations_sociales.solidarite_insertion.minimum_vieillesse.aspa demandeur_eligible_asi = individu.famille.demandeur('asi_eligibilite', period) demandeur_eligible_aspa = individu.famille.demandeur('aspa_eligibilite', period) conjoint_eligible_asi = individu.famille.conjoint('asi_eligibilite', period) conjoint_eligible_aspa = individu.famille.conjoint('aspa_eligibilite', period) # Un seul éligible elig1 = ((asi_aspa_nb_alloc == 1) & (demandeur_eligible_asi | conjoint_eligible_asi)) # Couple d'éligibles mariés elig2 = demandeur_eligible_asi & conjoint_eligible_asi & maries # Couple d'éligibles non mariés elig3 = demandeur_eligible_asi & conjoint_eligible_asi & not_(maries) # Un seul éligible et époux éligible ASPA elig4 = ((demandeur_eligible_asi & conjoint_eligible_aspa) | (conjoint_eligible_asi & demandeur_eligible_aspa)) & maries # Un seul éligible et conjoint non marié éligible ASPA elig5 = ((demandeur_eligible_asi & conjoint_eligible_aspa) | (conjoint_eligible_asi & demandeur_eligible_aspa)) & not_(maries) plafond_ressources = ( elig1 * (asi.plafond_ressource_seul * not_(en_couple) + asi.plafond_ressource_couple * en_couple) + elig2 * asi.plafond_ressource_couple + elig3 * asi.plafond_ressource_couple + elig4 * aspa.plafond_ressources.couples + elig5 * aspa.plafond_ressources.couples) / 12 montant_servi_asi = max_(plafond_ressources - base_ressources, 0) return montant_servi_asi * ( individu.has_role(Famille.DEMANDEUR) * demandeur_eligible_asi * (elig1 + elig2 / 2 + elig3 / 2) + individu.has_role(Famille.CONJOINT) * conjoint_eligible_asi * (elig1 + elig2 / 2 + elig3 / 2) )
Formule OpenFisca sur GithubVariables et paramètres inscrits dans la formule :
Paramètres :
Variables utilisées par le cas type :
Formule de calcul OpenFisca à compter du 2007-01-01 :
def formula_2007(individu, period, parameters): maries = individu.famille('maries', period) en_couple = individu.famille('en_couple', period) asi_aspa_nb_alloc = individu.famille('asi_aspa_nb_alloc', period) base_ressources = individu.famille('asi_aspa_base_ressources', period) asi = parameters(period).prestations_sociales.prestations_etat_de_sante.invalidite.asi aspa = parameters(period).prestations_sociales.solidarite_insertion.minimum_vieillesse.aspa demandeur_eligible_asi = individu.famille.demandeur('asi_eligibilite', period) demandeur_eligible_aspa = individu.famille.demandeur('aspa_eligibilite', period) conjoint_eligible_asi = individu.famille.conjoint('asi_eligibilite', period) conjoint_eligible_aspa = individu.famille.conjoint('aspa_eligibilite', period) # Un seul éligible elig1 = ((asi_aspa_nb_alloc == 1) & (demandeur_eligible_asi | conjoint_eligible_asi)) # Couple d'éligibles mariés elig2 = demandeur_eligible_asi & conjoint_eligible_asi & maries # Couple d'éligibles non mariés elig3 = demandeur_eligible_asi & conjoint_eligible_asi & not_(maries) # Un seul éligible et époux éligible ASPA elig4 = ((demandeur_eligible_asi & conjoint_eligible_aspa) | (conjoint_eligible_asi & demandeur_eligible_aspa)) & maries # Un seul éligible et conjoint non marié éligible ASPA elig5 = ((demandeur_eligible_asi & conjoint_eligible_aspa) | (conjoint_eligible_asi & demandeur_eligible_aspa)) & not_(maries) montant_max = ( elig1 * asi.montant_seul + elig2 * asi.montant_couple + elig3 * 2 * asi.montant_seul + elig4 * (asi.montant_couple / 2 + aspa.montant_maximum_annuel.couples / 2) + elig5 * (asi.montant_seul + aspa.montant_maximum_annuel.couples / 2)) / 12 ressources = base_ressources + montant_max plafond_ressources = ( elig1 * (asi.plafond_ressource_seul * not_(en_couple) + asi.plafond_ressource_couple * en_couple) + elig2 * asi.plafond_ressource_couple + elig3 * asi.plafond_ressource_couple + elig4 * aspa.plafond_ressources.couples + elig5 * aspa.plafond_ressources.couples) / 12 depassement = max_(ressources - plafond_ressources, 0) diff = ( (elig1 | elig2 | elig3) * (montant_max - depassement) + elig4 * (asi.montant_couple / 12 / 2 - depassement / 2) + elig5 * (asi.montant_seul / 12 - depassement / 2) ) # Montant mensuel servi (sous réserve d'éligibilité) montant_servi_asi = max_(diff, 0) return montant_servi_asi * ( individu.has_role(Famille.DEMANDEUR) * demandeur_eligible_asi * (elig1 + elig2 / 2 + elig3 / 2) + individu.has_role(Famille.CONJOINT) * conjoint_eligible_asi * (elig1 + elig2 / 2 + elig3 / 2) )
Formule OpenFisca sur GithubVariables et paramètres inscrits dans la formule :
Paramètres :
- prestations_sociales.prestations_etat_de_sante.invalidite.asi.montant_couple
- prestations_sociales.prestations_etat_de_sante.invalidite.asi.montant_seul
- prestations_sociales.prestations_etat_de_sante.invalidite.asi.plafond_ressource_couple
- prestations_sociales.prestations_etat_de_sante.invalidite.asi.plafond_ressource_seul
- prestations_sociales.solidarite_insertion.minimum_vieillesse.aspa.montant_maximum_annuel.couples
- prestations_sociales.solidarite_insertion.minimum_vieillesse.aspa.plafond_ressources.couples
Variables utilisées par le cas type :
Variables et dispositifs influencés par la formule :
La formule du dispositif "Alloc. supp. invalidité (Asi)" peut avoir une influence sur d'autres dispositifs et variables :
- aah_base_non_cumulable
- aah_base_ressources_hors_activite_eval_trimestrielle
- aspa
- caah
- css_base_ressources_asi_individu
- eligibilite_caah
- eligibilite_indemnite_inflation_prest_soc
- exonere_taxe_habitation
- garantie_jeunes_eligibilite_ressources
- garantie_jeunes_montant
- minima_sociaux
- minimum_vieillesse
- ppa_ressources_hors_activite_individu
- visale_base_ressources_individuelle