Un développeur qui démarre en freelance au Maroc choisit presque toujours le même statut par défaut, celui d'auto-entrepreneur, parce que l'inscription se fait en ligne en une demi-heure. Le vrai choix arrive plus tard, souvent entre le sixième et le douzième mois, quand un seul client étranger finit par représenter l'essentiel du chiffre d'affaires facturé.
Un développeur freelance au Maroc peut exercer sous trois statuts : auto-entrepreneur (plafond de 200 000 MAD de chiffre d'affaires par an pour les prestations de services), portage salarial (aucun plafond, couverture CNSS complète) ou SARL. Le choix dépend surtout du nombre de clients et du montant facturé à un même client dans l'année.
Auto-entrepreneur, portage salarial ou SARL : quel statut pour un développeur freelance au Maroc ?
Les trois statuts coexistent sur le marché marocain, mais ils ne répondent pas à la même situation. L'auto-entrepreneur convient à un développeur qui démarre, avec un ou deux clients et un chiffre d'affaires en dessous de 200 000 MAD par an. Le portage salarial prend le relais quand ce plafond devient trop étroit, ou que le développeur veut une couverture sociale de salarié sans créer de société. La SARL, elle, s'adresse plutôt à un développeur qui embauche à son tour ou qui facture des montants élevés à plusieurs entreprises marocaines en parallèle.
| Critère | Auto-entrepreneur | Portage salarial | SARL |
|---|---|---|---|
| Plafond de chiffre d'affaires | 200 000 MAD/an (services) | Aucun | Aucun |
| Délai de mise en place | Quelques jours | 1 à 2 semaines | 3 à 6 semaines |
| Couverture CNSS | Oui, cotisation forfaitaire | Oui, régime salarié complet | Oui, en tant que gérant ou salarié |
| Compte en devises | Non | Géré par la société de portage | Possible sous conditions |
| Idéal pour | Débuter, 1 à 2 clients | Client(s) étranger(s) réguliers | Structurer une activité qui grossit |
À partir de quel chiffre d'affaires changer de statut ?
Un développeur confirmé qui facture 900 MAD par jour sur 18 jours par mois atteint environ 194 000 MAD par an, tout près du plafond auto-entrepreneur. Deux options s'offrent alors : ralentir artificiellement la facturation en fin d'année pour rester sous le seuil, ce qui revient concrètement à refuser des missions, ou basculer vers le portage salarial, qui ne connaît aucun plafond de chiffre d'affaires. Le barème TJM freelance au Maroc détaille les fourchettes par métier et par niveau d'expérience pour situer son propre tarif avant de trancher.
Le piège des 80 000 MAD : ce qui change quand un développeur ne facture qu'un seul client
Beaucoup de développeurs marocains démarrent avec un seul client, souvent une agence française ou une startup européenne qui leur envoie une mission après l'autre pendant des mois. Ce schéma, confortable au début, déclenche une règle fiscale que peu d'auto-entrepreneurs anticipent en s'inscrivant. Depuis la loi de finances 2023, la part du chiffre d'affaires facturée à un même client personne morale (SARL, SA, ou équivalent étranger) qui dépasse 80 000 MAD sur l'année est soumise à une retenue à la source de 30 %, appliquée sur le montant excédentaire, à la place du taux forfaitaire habituel de 1 %. Un client particulier (personne physique) n'est jamais concerné par cette règle. L'objectif affiché par l'administration fiscale est de limiter le recours à de faux indépendants qui exercent en réalité comme des salariés déguisés pour une seule entreprise, selon plusieurs cabinets de conformité fiscale marocains qui commentent la mesure depuis son entrée en vigueur.
Concrètement, un développeur qui facture 150 000 MAD sur l'année à une seule agence parisienne paie l'impôt forfaitaire de 1 % sur les premiers 80 000 MAD, puis une retenue de 30 % sur les 70 000 MAD restants, prélevée directement par le client au moment du paiement. L'écart de trésorerie surprend souvent au moment de la première facture concernée. Et c'est précisément ce type de profil, un développeur en mission longue pour un seul donneur d'ordre, qui a le plus intérêt à comparer le coût réel de l'auto-entrepreneuriat avec celui du portage salarial, où la question ne se pose plus de la même manière puisque la rémunération prend la forme d'un salaire, pas d'un chiffre d'affaires facturé client par client.
Combien facturer et comment se faire payer par un client étranger
Le TJM d'un développeur marocain oscille généralement entre 400 et 1200 MAD pour un profil junior à confirmé sur le marché local, et peut dépasser 2000 MAD sur une mission internationale facturée en euros ou en dollars. Mais facturer un montant correct ne suffit pas si l'encaissement traîne ou que la conversion en dirhams grignote la marge.
L'Office des Changes impose un rapatriement des recettes d'exportation de services dans un délai de 150 jours à compter de la date de facture, une règle précisée par l'Instruction Générale des Opérations de Change (IGOC 2026) et sa plateforme SARF, qui digitalise désormais ces déclarations. Un auto-entrepreneur ne peut pas ouvrir de compte professionnel en devises : chaque virement reçu en euros ou en dollars est automatiquement converti en dirhams par la banque, sans marge de manœuvre sur le timing du change. Des outils comme Wise ou Payoneer restent utilisés par beaucoup de développeurs pour recevoir un paiement international avant de le transférer vers un compte marocain, mais ils ne dispensent pas des obligations de rapatriement. Pour les développeurs qui facturent régulièrement plusieurs devises, la page WEEPO sur le paiement en devises en portage salarial détaille ce que gère la société de portage à la place du consultant.
Facturer via une plateforme (Malt, Upwork) change-t-il le calcul ?
Oui, et c'est un point que beaucoup de développeurs débutants oublient d'intégrer à leur TJM. Une plateforme freelance internationale prélève généralement entre 10 et 20 % de commission sur chaque mission, un montant à ajouter au calcul du tarif cible avant de fixer le prix affiché. Un développeur qui vise 900 MAD net par jour via une plateforme facturant 15 % de commission doit afficher un tarif proche de 1050 MAD, sans quoi la commission grignote directement son revenu net plutôt que d'être répercutée sur le client.
Le contrat de prestation : les clauses qu'un développeur ne doit jamais laisser de côté
Un contrat de développement mal rédigé coûte cher, pas seulement en cas de litige, mais aussi en ambiguïté sur qui possède le code livré une fois la mission terminée.
La cession de propriété intellectuelle vient en premier : sans clause explicite, le développeur reste théoriquement propriétaire du code qu'il écrit, ce qui surprend souvent des clients persuadés de l'acquérir automatiquement en payant la facture. La clause de confidentialité ensuite, surtout quand le développeur touche à des données sensibles ou à un code source stratégique pour le client. Et la clause de résiliation, qui précise le préavis et les livrables dus en cas d'arrêt anticipé de la mission, un point que beaucoup de contrats bâclés laissent flou. Notre guide sur le contrat de prestation de services freelance au Maroc détaille l'ensemble des clauses essentielles, au-delà de ces trois-là.
Cas concret : le parcours d'un développeur qui dépasse le seuil
Ayoub, développeur backend basé à Casablanca, a démarré en auto-entrepreneur il y a deux ans avec deux ou trois clients marocains. Une agence lyonnaise l'a repéré via une recommandation et lui a confié un premier projet, puis un deuxième, puis un contrat de maintenance mensuel. Au bout de huit mois, cette seule agence représentait 85 % de son chiffre d'affaires annuel, largement au-dessus du seuil de 80 000 MAD par client. Sa première facture soumise à la retenue de 30 % l'a alerté sur un point qu'il n'avait pas anticipé en s'inscrivant comme auto-entrepreneur.
Ayoub a alors comparé deux options avec un cabinet de conformité : rester auto-entrepreneur en diversifiant ses clients pour repasser sous le seuil par client, ou basculer en portage salarial pour transformer cette relation en un contrat de travail classique, sans plafond ni retenue à la source spécifique. Il a choisi la deuxième option, essentiellement parce que l'agence lyonnaise souhaitait elle-même une relation plus stable, avec un interlocuteur salarié plutôt qu'un prestataire facturant au coup par coup. Son revenu net a légèrement baissé la première année à cause des cotisations CNSS, mais il a gagné une couverture maladie complète et un bulletin de salaire reconnu par les banques pour un futur crédit immobilier.
Le bon statut pour un développeur freelance au Maroc n'est jamais figé. Il change avec le nombre de clients, la concentration du chiffre d'affaires sur un seul donneur d'ordre, et le besoin de protection sociale à un moment donné du parcours. Un développeur qui commence avec deux ou trois clients marocains n'a généralement aucune raison de compliquer les choses avec du portage salarial dès la première année. Mais dès qu'un seul client dépasse 80 000 MAD de facturation annuelle, la question mérite d'être posée avant que la retenue à la source ne s'invite sur la facture suivante.
