Aller au contenu principal

Journal d'Ouverture

Enregistrez l'état initial des comptes d'une entreprise en listant tous les actifs et les passifs au démarrage (ou au début d'un exercice comptable). Ohada Lib route automatiquement chaque élément vers le compte SYSCOHADA correspondant et calcule les capitaux propres (capital social) comme solde d'équilibre.

Cette écriture est appelée A-Nouveaux ou Journal d'Ouverture. Elle doit être parfaitement équilibrée :

Débit (Actif) = Crédit (Passif) + Crédit (Capital)

Référence des Types

OpeningEntryInput

interface OpeningEntryInput {
date?: Date;

// ── Côté Débit (Actif) ───────────────────────────────────
fixedAssets?: OpeningFixedAsset[]; // Immobilisations — Classe 2
stocks?: OpeningStock[]; // Stocks — Classe 3
receivables?: OpeningReceivable[]; // Créances — Classe 4
bank?: number; // Compte 5211
cash?: number; // Compte 5711
mobileMoney?: number; // Compte 5141 (Orange Money, MTN MoMo…)

// ── Côté Crédit (Passif) ─────────────────────────────────
liabilities?: OpeningLiability[];
}

OpeningFixedAsset

interface OpeningFixedAsset {
label: string; // Ex. "MacBook Pro", "Camion Isuzu"
type: FixedAssetType; // Voir tableau ci-dessous
amount: number; // Valeur nette comptable
}

OpeningStock

interface OpeningStock {
label: string;
type: StockType; // Voir tableau ci-dessous
amount: number; // Valeur totale au coût d'achat
}

OpeningReceivable

interface OpeningReceivable {
label: string;
type: ReceivableType; // Voir tableau ci-dessous
amount: number;
}

OpeningLiability

interface OpeningLiability {
label: string;
type: LiabilityType; // Voir tableau ci-dessous
amount: number;
}

Correspondance des Comptes

Immobilisations (FixedAssetType)

TypeCompteDescription
PATENT_LICENSE212Brevets, licences, concessions
SOFTWARE2183Logiciels et sites internet
INTANGIBLE_OTHER21Autres immobilisations incorporelles
LAND22Terrains
COMMERCIAL_BUILDING2313Bâtiments commerciaux et industriels
RESIDENTIAL_BUILDING2314Bâtiments d'habitation
INDUSTRIAL_EQUIPMENT241Matériel et outillage industriel
AGRICULTURAL_EQUIPMENT243Matériel agricole
OFFICE_EQUIPMENT2441Matériel de bureau
COMPUTER_EQUIPMENT2444Matériel informatique (PC, imprimantes…)
OFFICE_FURNITURE2445Mobilier de bureau
PASSENGER_VEHICLE2451Véhicules de tourisme
UTILITY_VEHICLE2452Véhicules utilitaires, camions
FINANCIAL_ASSET27Immobilisations financières (titres, prêts)

Stocks (StockType)

TypeCompteDescription
MERCHANDISE3111Marchandises
RAW_MATERIALS3211Matières premières
FINISHED_GOODS3411Produits finis
PACKAGING3611Emballages commerciaux
OTHER_SUPPLIES3811Autres approvisionnements

Créances (ReceivableType)

TypeCompteDescription
CUSTOMER4111Clients
SUPPLIER_ADVANCE4091Avances versées aux fournisseurs
TAX_CREDIT4717Créances fiscales et sociales
OTHER_RECEIVABLE4721Débiteurs divers

Dettes (LiabilityType)

TypeCompteDescription
SUPPLIER4011Fournisseurs (dettes opérationnelles)
BANK_LOAN1621Emprunts auprès d'établissements de crédit
OPERATING_CREDIT1622Crédits de trésorerie à court terme
OTHER_DEBT4711Créditeurs divers

Trésorerie (champs directs)

ChampCompteDescription
bank5211Solde bancaire
cash5711Caisse (espèces)
mobileMoney5141Mobile Money (Orange Money, MTN MoMo…)

Utilisation

Minimal — caisse uniquement

const ohada = new Ohada();

const entry = ohada.recordOpeningEntry({ cash: 500000 });
// 1 écriture débit : 5711 débit 500 000
// 1 écriture crédit : 1011 crédit 500 000 (capital)

Cas standard

const entry = ohada.recordOpeningEntry({
fixedAssets: [
{ label: "Camion Isuzu", type: 'UTILITY_VEHICLE', amount: 1500000 },
{ label: "Mobilier bureau", type: 'OFFICE_FURNITURE', amount: 2000000 },
],
stocks: [
{ label: "Stock marchandises", type: 'MERCHANDISE', amount: 300000 },
],
cash: 500000,
liabilities: [
{ label: "Fournisseur ACME", type: 'SUPPLIER', amount: 1500000 },
],
});

// Actif = 1 500 000 + 2 000 000 + 300 000 + 500 000 = 4 300 000
// Passif = 1 500 000
// Capital = 4 300 000 - 1 500 000 = 2 800 000 → crédit 1011

Cas complet — toutes les catégories

const entry = ohada.recordOpeningEntry({
fixedAssets: [
{ label: "MacBook Pro", type: 'COMPUTER_EQUIPMENT', amount: 800000 },
{ label: "Toyota Hilux", type: 'PASSENGER_VEHICLE', amount: 3000000 },
{ label: "Local commercial", type: 'COMMERCIAL_BUILDING',amount: 5000000 },
],
stocks: [
{ label: "Stock de départ", type: 'MERCHANDISE', amount: 2000000 },
],
receivables: [
{ label: "Client Entreprise X", type: 'CUSTOMER', amount: 450000 },
],
bank: 1200000,
cash: 100000,
mobileMoney: 50000,
liabilities: [
{ label: "Fournisseur Début", type: 'SUPPLIER', amount: 600000 },
{ label: "Emprunt BNI 5 ans", type: 'BANK_LOAN', amount: 4000000 },
],
});

// Total actif = 12 600 000
// Total passif = 4 600 000
// Capital = 8 000 000 → crédit 1011

Cas de déficit

Lorsque le passif dépasse l'actif, le solde négatif est débité sur le compte 1311 (Report à nouveau débiteur) :

const entry = ohada.recordOpeningEntry({
cash: 1000,
liabilities: [
{ label: "Emprunt impayé", type: 'BANK_LOAN', amount: 5000 },
],
});

// Actif = 1 000 / Passif = 5 000
// Capital = -4 000 → débit 1311

Logique de Calcul du Capital

SituationRésultatCompte
Actif > PassifCréditer la différence1011
Actif < PassifDébiter la différence1311
Actif = PassifAucune ligne capital

Référence des Paramètres

ParamètreTypeRequisDescription
dateDateDate de l'écriture (aujourd'hui par défaut)
fixedAssetsOpeningFixedAsset[]Immobilisations — Classe 2
stocksOpeningStock[]Stocks — Classe 3
receivablesOpeningReceivable[]Créances — Classe 4
banknumberSolde banque — Compte 5211
cashnumberCaisse — Compte 5711
mobileMoneynumberMobile Money — Compte 5141
liabilitiesOpeningLiability[]Dettes fournisseurs, emprunts, autres