🔍 améliore les meta et le contenu du simulateur assimilé salarié

Change pour dirigeant sasu, plus significatif pour les usagers. Par ailleurs, les utilisations de dirigeant de SAS / SARL sont minoritaires, et ce simulateur n'est pas adapté pour eux (pas de possibilité de mettre plusieurs dirigeants pour l'entreprise)
pull/1085/head
Johan Girod 2020-06-25 16:43:09 +02:00
parent b907d81e86
commit 9e80e6d157
18 changed files with 157 additions and 102 deletions

View File

@ -100,7 +100,9 @@ async function fetchSimulators(dt) {
const resultSimulateurs = dataSimulateurs
.filter(({ label }) =>
[
'/salaire-brut-net',
'/salarié',
'/chômage-partiel',
'/auto-entrepreneur',
'/artiste-auteur',
'/indépendant',
@ -143,10 +145,13 @@ async function fetchSimulators(dt) {
const groupSimulateursIframesVisits = ({ label }) =>
label.startsWith('/coronavirus')
? '/chômage-partiel'
: label.startsWith('/simulateur-embauche')
: label.startsWith('/simulateur-embauche') ||
label === '/salaire-brut-net'
? '/salarié'
: label.startsWith('/simulateur-autoentrepreneur')
? '/auto-entrepreneur'
: label === '/assimilé-salarié'
? '/dirigeant-sasu'
: label
const sumVisits = (acc, { nb_visits }) => acc + nb_visits

View File

@ -49,11 +49,18 @@ export default function SimulateurWarning({
</Trans>
</li>
)}
{simulateur === 'sasu' && (
<li>
<Trans i18nKey="simulateurs.warning.sasu">
L'impôt sur les société et la gestion des dividendes ne sont pas
encore implémentées.
</Trans>
</li>
)}
{simulateur === 'artiste-auteur' && (
<>
<li>
<Trans i18nKey="simulateurs.warning.artiste-auteur">
<Trans i18nKey="simulateurs.warning.artiste-auteur.1">
Cette estimation est proposée à titre indicatif. Elle est faite
à partir des éléments réglementaires applicables et des éléments
que vous avez saisis, mais elle ne tient pas compte de
@ -62,7 +69,7 @@ export default function SimulateurWarning({
</Trans>
</li>
<li>
<Trans i18nKey="simlateurs.warning.artiste-auteur">
<Trans i18nKey="simulateurs.warning.artiste-auteur.2">
Ce simulateur permet d'estimer le montant de vos cotisations
pour l'année 2020 à partir de votre revenu projeté
</Trans>

View File

@ -692,8 +692,6 @@ gérant minoritaire:
titre: Chairman or managing director
gérer:
choix:
chomage-partiel: <0>Find out about aid</0><1>Calculate the amount of short-time
working benefits. Discover the list of business support schemes.</1>
déclaration: <0>Completing my tax return</0><1>Easily calculate the amounts to
carry forward on your 2019 tax return</1>
embauche: >
@ -1096,10 +1094,7 @@ selectionRégime:
page:
titre: Social scheme selection
titre: Which social scheme would you like to explore?
simlateurs:
warning:
artiste-auteur: This simulator allows you to estimate the amount of your
contributions for the year 2020 based on your projected income.
simulateurs:
accueil:
description: >-

View File

@ -49,7 +49,7 @@ const moduleToSitePath = {
'simulateur-embauche': '/simulateurs/salarié',
'simulateur-autoentrepreneur': '/simulateurs/auto-entrepreneur',
'simulateur-independant': '/simulateurs/indépendant',
'simulateur-assimilesalarie': '/simulateurs/assimilé-salarié'
'simulateur-dirigeantsasu': '/simulateurs/dirigeant-sasu'
}
const simulateurLink = (fr ? process.env.FR_SITE : process.env.EN_SITE).replace(
'${path}',

View File

@ -18,7 +18,7 @@ const feedbackBlacklist = [
['entreprise', 'statutJuridique', 'index'],
['simulateurs', 'indépendant'],
['simulateurs', 'auto-entrepreneur'],
['simulateurs', 'assimilé-salarié'],
['simulateurs', 'sasu'],
['simulateurs', 'salarié'],
['coronavirus', 'chômagePartiel']
].map(lensPath)

View File

@ -500,12 +500,12 @@ export default function CreateCompany({ statut }: CreateCompanyProps) {
<Link
className="ui__ interactive card button-choice lighter-bg"
to={{
pathname: sitePaths.simulateurs['assimilé-salarié'],
pathname: sitePaths.simulateurs.sasu,
state: { fromCréer: true }
}}
>
<Trans i18nKey="entreprise.ressources.simu.assimilé">
<p>Simulateur de cotisations assimilé-salarié</p>
<p>Simulateur de rémunération pour dirigeant de SAS(U)</p>
<small>
Simuler le montant de vos cotisations sociales pour bien
préparer votre business plan.

View File

@ -20,7 +20,7 @@ import * as Animate from 'Components/ui/animate'
import AideOrganismeLocal from './AideOrganismeLocal'
import businessPlan from './businessPlan.svg'
const infereRégimeFromCompanyDetails = (company: Company | null) => {
const infereDirigeantFromCompanyDetails = (company: Company | null) => {
if (!company) {
return null
}
@ -34,11 +34,8 @@ const infereRégimeFromCompanyDetails = (company: Company | null) => {
return 'indépendant'
}
if (
['SASU', 'SAS'].includes(company.statutJuridique ?? '') ||
(company.statutJuridique === 'SARL' && !company.isDirigeantMajoritaire)
) {
return 'assimilé-salarié'
if (['SASU', 'SAS'].includes(company.statutJuridique ?? '')) {
return 'sasu'
}
return null
@ -50,7 +47,7 @@ export default function SocialSecurity() {
(state: RootState) => state.inFranceApp.existingCompany
)
const sitePaths = useContext(SitePathsContext)
const régime = infereRégimeFromCompanyDetails(company)
const dirigeant = infereDirigeantFromCompanyDetails(company)
return (
<>
@ -109,11 +106,11 @@ export default function SocialSecurity() {
</Link>
)}
{!!régime && (
{!!dirigeant && (
<Link
className="ui__ interactive card box"
to={{
pathname: sitePaths.simulateurs[régime],
pathname: sitePaths.simulateurs[dirigeant],
state: {
fromGérer: true
}
@ -124,7 +121,7 @@ export default function SocialSecurity() {
<h3>Calculer mon revenu net de cotisations</h3>
<p className="ui__ notice">
Estimez précisément le montant de vos cotisations grâce au
simulateur {{ régime }} de l'Urssaf
simulateur spécifique {{ régime: dirigeant }} de l'Urssaf
</p>
</Trans>
<div className="ui__ small simple button hide-mobile">
@ -132,7 +129,7 @@ export default function SocialSecurity() {
</div>
</Link>
)}
{régime !== 'auto-entrepreneur' && (
{dirigeant !== 'auto-entrepreneur' && (
<>
<Link
className="ui__ interactive card box"
@ -143,11 +140,10 @@ export default function SocialSecurity() {
>
<div className="ui__ big box-icon">{emoji('😷')}</div>
<Trans i18nKey="gérer.choix.chomage-partiel">
<h3>Connaître les aides</h3>
<h3>Activité partielle</h3>
<p className="ui__ notice">
Calculez le montant des indemnités de chômage partiel.
Découvrez la liste des dispositifs d'aides aux
entreprises.
Calculez le reste à payer après remboursement de l'État
lorsque vous activez le dispositif pour un employé.
</p>
</Trans>
<span className="ui__ label">Covid-19</span>

View File

@ -21,7 +21,7 @@ export default function SchemeChoice() {
</h1>
<p>
<Link
to={sitePaths.simulateurs['assimilé-salarié']}
to={sitePaths.simulateurs.sasu}
className="ui__ interactive card light-bg button-choice"
>
{emoji('☂')}

View File

@ -4,7 +4,7 @@ import { Route } from 'react-router-dom'
import { inIframe } from '../../../../utils'
import SimulateurChômagePartiel from '../Simulateurs/ChômagePartiel'
import SimulateurArtisteAuteur from '../Simulateurs/ArtisteAuteur'
import SimulateurAssimiléSalarié from '../Simulateurs/AssimiléSalarié'
import SimulateurAssimiléSalarié from '../Simulateurs/RémunérationSASU'
import SimulateurAutoEntrepreneur from '../Simulateurs/AutoEntrepreneur'
import SimulateurIndépendant from '../Simulateurs/Indépendant'
import DemandeMobilite from '../Gérer/DemandeMobilite'

View File

@ -1,45 +0,0 @@
import SalaryExplanation from 'Components/SalaryExplanation'
import Warning from 'Components/SimulateurWarning'
import Simulation from 'Components/Simulation'
import assimiléConfig from 'Components/simulationConfigs/assimilé.yaml'
import { IsEmbeddedContext } from 'Components/utils/embeddedContext'
import React, { useContext } from 'react'
import { Helmet } from 'react-helmet'
import { Trans, useTranslation } from 'react-i18next'
export default function AssimiléSalarié() {
const { t } = useTranslation()
const inIframe = useContext(IsEmbeddedContext)
return (
<>
<Helmet>
<title>
{t(
'simulateurs.assimilé-salarié.page.titre',
'Assimilé salarié : simulateur officiel de revenus et cotisations'
)}
</title>
<meta
name="description"
content={t(
'simulateurs.assimilé-salarié.page.description',
"Estimez vos revenus en tant qu'assimilé salarié à partir de votre chiffre d'affaire (pour les gérants de SAS, SASU et SARL minoritaire). Prise en compte de toutes les cotisations et de l'impôt sur le revenu. Simulateur officiel de l'Urssaf"
)}
/>
</Helmet>
{!inIframe && (
<h1>
<Trans i18nKey="simulateurs.assimilé-salarié.titre">
Simulateur de revenus assimilé salarié
</Trans>
</h1>
)}
<Warning simulateur="assimilé-salarié" />
<Simulation
config={assimiléConfig}
explanations={<SalaryExplanation />}
/>
</>
)
}

View File

@ -25,7 +25,7 @@ export function useSimulatorsMetadata() {
'simulateurs.résumé.assimilé',
"Calculer le revenu d'un dirigeant de SAS, SASU ou SARL minoritaire"
),
sitePath: sitePaths.simulateurs['assimilé-salarié']
sitePath: sitePaths.simulateurs.sasu
},
{
name: t('Indépendant'),

View File

@ -0,0 +1,98 @@
import SalaryExplanation from 'Components/SalaryExplanation'
import Warning from 'Components/SimulateurWarning'
import Simulation from 'Components/Simulation'
import assimiléConfig from 'Components/simulationConfigs/assimilé.yaml'
import { IsEmbeddedContext } from 'Components/utils/embeddedContext'
import Meta from 'Components/utils/Meta'
import React, { useContext } from 'react'
import { Trans, useTranslation } from 'react-i18next'
import RémunérationSASUPreview from './images/RémunérationSASUPreview.png'
import RuleLink from 'Components/RuleLink'
export default function RémunérationSASU() {
const { t } = useTranslation()
const META = {
title: t(
'pages.simulateurs.sasu.meta.titre',
'Dirigeant de SASU : simulateur de revenus Urssaf'
),
description: t(
'pages.simulateurs.sasu.meta.description',
"Calcul du salaire net à partir du chiffre d'affaires + charges et vice-versa."
),
ogTitle: t(
'pages.simulateurs.sasu.meta.ogTitle',
'Rémunération du dirigeant de SASU : un simulateur pour connaître votre salaire net'
),
ogDescription: t(
'pages.simulateurs.sasu.meta.ogDescription',
'En tant que dirigeant assimilé-salarié, calculez immédiatement votre revenu net après impôt à partir du total alloué à votre rémunération.'
),
ogImage: RémunérationSASUPreview
}
const inIframe = useContext(IsEmbeddedContext)
return (
<>
<Meta {...META} />
{!inIframe && (
<h1>
<Trans i18nKey="pages.simulateurs.sasu.titre">
Simulateur de revenus pour dirigeant de SAS(U)
</Trans>
</h1>
)}
<Warning simulateur="sasu" />
<Simulation
config={assimiléConfig}
explanations={<SalaryExplanation />}
/>
{!inIframe && <SeoExplanations />}
</>
)
}
function SeoExplanations() {
const { i18n } = useTranslation()
return (
<Trans i18nKey="pages.simulateurs.dirigean sasu.explication seo">
<h2>Comment calculer le salaire d'un dirigeant de SASU ? </h2>
<p>
Comme pour un salarié classique, le <strong>dirigeant de sasu</strong>{' '}
paye des cotisations sociales sur la rémunération qu'il se verse. Les
cotisations sont calculées de la même manière que pour le salarié : elle
sont décomposée en partie employeur et partie salarié et sont exprimée
comme un pourcentage du salaire brut.
</p>
<p>
En revanche, le dirigeant assimilé-salarié ne paye pas de{' '}
<strong>cotisations chômage</strong>. Par ailleurs, il ne bénéficie pas
de la{' '}
<RuleLink dottedName="contrat salarié . réduction générale">
réduction générale de cotisations
</RuleLink>{' '}
ni des dispositifs encadrés par le code du travail comme les{' '}
<RuleLink dottedName="contrat salarié . temps de travail . heures supplémentaires">
heures supplémentaires
</RuleLink>{' '}
ou les primes.
</p>
<p>
Il peut en revanche prétendre à la{' '}
<RuleLink dottedName="contrat salarié . ">réduction ACRE</RuleLink> en
debut d'activité, sous certaines conditions.
</p>
<p>
Vous pouvez utiliser notre simulateur pour calculer la{' '}
<strong>rémunération nette</strong> à partir d'un montant superbrut
alloué à la rémunération du dirigeant. Il vous suffit pour cela saisir
la rémunération annoncée dans la case total chargé. La simulation peut
ensuite être affinée en répondant aux différentes questions.
</p>
</Trans>
)
}

View File

@ -58,7 +58,7 @@ function SeoExplanations() {
return (
<Trans i18nKey="pages.simulateurs.salarié.explication seo">
<h2>Calculer son salaire net</h2>
<h2>Comment calculer le salaire net ?</h2>
<p>
Lors de l'entretien d'embauche l'employeur propose en général une
@ -96,7 +96,7 @@ function SeoExplanations() {
.
</p>
<h2>Coût d'embauche</h2>
<h2>Comment calculer le coût d'embauche ?</h2>
<p>
Si vous cherchez à embaucher, vous pouvez calculer le coût total de la
@ -154,19 +154,15 @@ export const SalarySimulation = () => {
}
/>
<br />
{/** L'équipe Code Du Travail Numérique ne souhaite pas référencer
* le simulateur de chômage partiel sur son site. */}
{!document.referrer?.includes('code.travail.gouv.fr') && (
<Banner icon={'😷'}>
<Trans>
<strong>Covid-19 et chômage partiel </strong>:{' '}
<Link to={sitePaths.simulateurs['chômage-partiel']}>
Calculez votre indemnité
</Link>
</Trans>
</Banner>
)}
<PreviousSimulationBanner />
<Banner icon={'👨‍✈️'}>
<Trans>
Vous êtes dirigeant d'une SAS(U) ?{' '}
<Link to={sitePaths.simulateurs.sasu}>
Accéder au simulateur de revenu dédié
</Link>
</Trans>
</Banner>
</>
)
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

View File

@ -5,7 +5,7 @@ import React, { useContext, useEffect } from 'react'
import { Trans } from 'react-i18next'
import { Link, Route, Switch, useLocation } from 'react-router-dom'
import ArtisteAuteur from './ArtisteAuteur'
import AssimiléSalarié from './AssimiléSalarié'
import AssimiléSalarié from './RémunérationSASU'
import ChômagePartiel from './ChômagePartiel'
import AutoEntrepreneur from './AutoEntrepreneur'
import Home from './Home'

View File

@ -49,7 +49,7 @@ const sitePathsFr = {
},
simulateurs: {
index: '/simulateurs',
'assimilé-salarié': '/assimilé-salarié',
sasu: '/dirigeant-sasu',
indépendant: '/indépendant',
'auto-entrepreneur': '/auto-entrepreneur',
comparaison: '/comparaison-régimes-sociaux',
@ -99,7 +99,7 @@ const sitePathsEn = {
},
simulateurs: {
index: '/calculators',
'assimilé-salarié': '/assimile-salarie',
sasu: '/SASU-chairman',
indépendant: '/independant',
'auto-entrepreneur': '/auto-entrepreneur',
comparaison: '/social-scheme-comparaison',

View File

@ -116,11 +116,7 @@ module.exports = {
new PrerenderSPAPlugin({
...prerenderConfig(),
outputDir: path.resolve('dist', 'prerender', 'infrance'),
routes: [
'/',
'/social-security/salaried',
'/iframes/simulateur-embauche'
],
routes: ['/', '/calculators/salary', '/iframes/simulateur-embauche'],
indexPath: path.resolve('dist', 'infrance.html')
}),
process.env.ANALYZE_BUNDLE !== '1' &&
@ -129,10 +125,10 @@ module.exports = {
outputDir: path.resolve('dist', 'prerender', 'mon-entreprise'),
routes: [
'/',
'/simulateurs/salarié',
'/simulateurs/salaire-brut-net',
'/simulateurs/auto-entrepreneur',
'/simulateurs/artiste-auteur',
'/simulateurs/assimilé-salarié',
'/simulateurs/dirigeant-sasu',
'/simulateurs/indépendant',
'/simulateurs/chômage-partiel',
'/créer',

View File

@ -1,6 +1,7 @@
############
# Redirects following architectural changes
# FR | coronavirus -> simulateurs/chômage-partiel
[[redirects]]
from="/coronavirus"
to="/simulateurs/ch%C3%B4mage-partiel"
@ -17,7 +18,7 @@
to="/calcultors/salary"
status = 301
# EN | simulator -> calculator
# EN | simulators -> calculators
[[redirects]]
from="/simulators/*"
to="/calcultors/:splat"
@ -29,6 +30,12 @@
to="/simulateurs/salaire-brut-net"
status = 301
# FR | assimilé-salarié -> dirigeant-SASU
[[redirects]]
from="/simulateurs/assimil%C3%A9-salari%C3%A9"
to="/simulateurs/dirigeant-sasu"
status = 301
# SEO redirect
[[redirects]]