# Référence des commandes
Source: https://docs.lomi.africa/build/cli/commands

Référence complète de toutes les commandes, sous-commandes et options globales du CLI lomi.

***

title: 'Référence des commandes'
description: 'Référence complète de toutes les commandes, sous-commandes et options globales du CLI lomi.'
----------------------------------------------------------------------------------------------------------

Toutes les commandes acceptent les options globales documentées dans [Premiers pas](/build/cli#global-options).

## Authentification

### `lomi login`

Authentification via flux navigateur. Stocke un jeton CLI globalement.

```bash
lomi login
lomi login --no-browser
lomi login --profile sandbox
```

### `lomi logout`

Supprime les identifiants stockés pour un profil.

```bash
lomi logout
lomi logout --profile sandbox
```

### `lomi whoami`

Affiche le profil actif et le contexte compte.

```bash
lomi whoami
```

### `lomi status`

Vérifie la connexion et l'API (`GET /me` + `GET /accounts/balance`).

```bash
lomi status
```

### `lomi list-profiles`

Liste tous les profils d'authentification enregistrés.

```bash
lomi list-profiles
```

### `lomi switch <profil>`

Définit le profil actif par défaut.

```bash
lomi switch sandbox
```

***

## Configuration projet

### `lomi init`

Génère client SDK, exemples et `.env`. Voir [Initialiser un projet](/build/cli/init).

```bash
lomi init
lomi init --yes -e sandbox -L ts --api-key lomi_sk_test_xxx
```

### `lomi update`

Met à jour `@lomi./sdk` dans le projet courant (via votre gestionnaire de paquets).

```bash
lomi update
```

## Développement

### `lomi quickstart`

Contrôle de connectivité du parcours type et prochaines étapes. Voir [Commande quickstart](/build/cli/quickstart-command).

```bash
lomi quickstart
lomi quickstart --json
lomi quickstart --skip-probe
```

### `lomi listen`

Relais webhook cloud (sandbox d'abord). Voir [Écouter les webhooks](/build/cli/listen).

```bash
lomi listen
lomi listen http://localhost:3000/webhooks
lomi listen --allow-production
```

### `lomi probe`

Exécute des contrôles de santé d'intégration en lecture seule.

```bash
lomi probe
lomi probe --send-test-webhook
```

### `lomi dev`

Démarre un serveur webhook local. Voir [Serveur de développement local](/build/cli/dev).

```bash
lomi dev
lomi dev --port 4242
lomi dev --verify-signature
lomi dev --env-file .env.local
```

| Option                 | Défaut | Description                           |
| ---------------------- | ------ | ------------------------------------- |
| `-p, --port`           | `4242` | Port HTTP                             |
| `--env-file`           | `.env` | Chemin du fichier dotenv              |
| `--verify-signature`   | auto   | Vérifier l'en-tête `X-Lomi-Signature` |
| `--skip-rules-install` | -      | Ignorer l'invite règles agent         |

**Endpoints :**

* `POST /webhook`, recevoir les événements webhook
* `GET /health`, contrôle de santé

***

## Webhooks

### `lomi webhooks list`

Liste les URLs webhook configurés.

```bash
lomi webhooks list
```

### `lomi webhooks test <id>`

Envoie un événement test vers un endpoint webhook.

```bash
lomi webhooks test wh_xxxxxxxx
```

***

## Catalogue et transactions

### `lomi products list`

Liste les produits et tarifs de votre organisation.

```bash
lomi products list
```

### `lomi transactions list`

Liste les transactions récentes.

```bash
lomi transactions list
lomi transactions list --limit 25 --json
```

| Option    | Défaut | Description                    |
| --------- | ------ | ------------------------------ |
| `--limit` | `10`   | Nombre maximum de transactions |

### `lomi transactions get <id>`

Récupère une transaction par ID (`GET /transactions/{id}`).

```bash
lomi transactions get 123e4567-e89b-12d3-a456-426614174000
lomi transactions get 123e4567-e89b-12d3-a456-426614174000 --json
```

### `lomi charges hold`

Bloque une caution carte (`POST /charge/card` avec `hold` à vrai). Le client confirme la carte dans lomi. Elements avec le `client_secret` reçu. Le numéro de carte ne passe jamais par le CLI.

```bash
lomi charges hold \
  --amount 100000 \
  --currency XOF \
  --email client@example.com \
  --name "Awa Ndiaye" \
  --description "Caution véhicule" \
  --json
```

| Option          | Description                                          |
| --------------- | ---------------------------------------------------- |
| `--amount`      | Montant à bloquer                                    |
| `--currency`    | `XOF`, `USD` ou `EUR`                                |
| `--customer-id` | Client existant. Sinon, passez `--email` et `--name` |
| `--description` | Description optionnelle                              |

### `lomi charges get <id>`

Lit le blocage (`GET /charge/card/{id}`). Attendez que `status` vaille `requires_capture`. `can_increment` indique si la carte peut accepter un total plus élevé.

```bash
lomi charges get pi_123 --json
```

### `lomi charges raise <id>`

Augmente le total bloqué (`POST /charge/card/{id}/increment`). `--amount` est le nouveau total, pas l’augmentation.

```bash
lomi charges raise pi_123 --amount 150000 --json
```

### `lomi charges capture <id>`

Prélève tout ou partie du blocage (`POST /charge/card/{id}/capture`). Omettez `--amount` pour tout prélever. Un montant inférieur libère le reste. Un seul prélèvement est possible.

```bash
lomi charges capture pi_123 --amount 25000 --json
lomi charges capture pi_123 --json
```

### `lomi charges release <id>`

Libère le blocage sans prélever (`POST /charge/card/{id}/cancel`).

```bash
lomi charges release pi_123 --json
```

### `lomi refunds create`

Crée un remboursement pour une transaction complétée (`POST /refunds`).

```bash
lomi refunds create
lomi refunds create \
  --transaction-id 123e4567-e89b-12d3-a456-426614174000 \
  --amount 5000 \
  --reason duplicate_charge \
  --refund-type partial \
  --json
```

| Option             | Description                                               |
| ------------------ | --------------------------------------------------------- |
| `--transaction-id` | UUID de la transaction à rembourser                       |
| `--amount`         | Montant du remboursement (même devise que la transaction) |
| `--reason`         | Motif optionnel                                           |
| `--refund-type`    | `full` ou `partial`                                       |

### `lomi refunds list`

Liste les remboursements.

```bash
lomi refunds list
lomi refunds list --status completed --limit 20 --json
```

### `lomi refunds get <id>`

Récupère un remboursement par ID.

```bash
lomi refunds get ref_xxxxxxxx --json
```

***

## Paiements

Ces commandes nécessitent une authentification et utilisent votre jeton CLI (pas d'ID marchand manuel).

### `lomi checkout create`

Crée une session checkout hébergée via `POST /checkout-sessions`.

```bash
lomi checkout create
lomi checkout create \
  --amount 10000 \
  --currency XOF \
  --success-url https://example.com/success \
  --cancel-url https://example.com/cancel \
  --json
```

Le mode interactif demande : ID tarif ou montant, devise, URLs succès/annulation, e-mail client optionnel.

Le sans interaction exige `--currency`, `--success-url`, `--cancel-url`, et `--amount` ou `--price-id`.

Après création, affiche l'URL checkout et un extrait HTML embed prêt à coller avec `@lomi./embed` :

```html
<!-- npm install @lomi./embed -->
<script type="module">
  import { loadLomiCheckout } from '@lomi./embed';
  document.getElementById('pay').addEventListener('click', () => {
    loadLomiCheckout({
      checkoutUrl: 'https://checkout.lomi.africa/checkout/cs_...',
      mode: 'modal',
      onComplete: (p) => console.log(p),
    });
  });
</script>
<button id="pay">Payer</button>
```

Voir [Widget de paiement intégré](/build/accept/embed-widget) pour le mode inline et `dist/lomi.js` auto-hébergé.

### `lomi payments create`

Crée un lien de paiement via l'API payment links.

```bash
lomi payments create
lomi payments create --title "Facture #42" --amount 5000 --currency XOF --json
```

Le mode interactif demande : titre, montant, devise. Le sans interaction exige les trois options.

***

## Règles agent IA

### `lomi install-rules`

Installe la documentation lomi. pour les outils de codage IA. Voir [Installer les règles agent](/build/cli/install-rules).

```bash
lomi install-rules
lomi install-rules --target cursor --target llms.txt
lomi install-rules --force
```

| Cible         | Sortie                                        |
| ------------- | --------------------------------------------- |
| `cursor`      | `.cursor/rules/lomi.*.mdc`                    |
| `claude-code` | `CLAUDE.md`                                   |
| `codex`       | `AGENTS.md`                                   |
| `vscode`      | `.github/instructions/lomi-*.instructions.md` |
| `llms.txt`    | `llms.txt` à la racine du projet              |

***

## Exemples de flux

### Nouvelle intégration depuis zéro

```bash
npm install -g lomi.cli
lomi login
lomi quickstart
mkdir ma-boutique && cd ma-boutique
lomi init
lomi listen http://localhost:3000/webhooks
```

### Profils sandbox vs production

```bash
lomi login --profile sandbox
lomi login --profile production
lomi switch sandbox
lomi init --profile sandbox
```

### Pipeline CI

```bash
export LOMI_ACCESS_TOKEN=$CLI_TOKEN
lomi status
lomi init --yes -e sandbox -L ts --api-key $LOMI_SECRET_KEY --skip-package-install --skip-rules-install
```

## Aide

```bash
lomi --help
lomi login --help
lomi init --help
lomi dev --help
lomi install-rules --help
```

***

## Mainteneurs

La commande `lomi docs` est masquée dans l’aide par défaut. Elle s’adresse aux **contributeurs lomi.** qui travaillent sur la documentation dans le monorepo, pas aux intégrateurs marchands.

### `lomi docs check`

Lance le lint docs et les contrôles de dérive OpenAPI depuis la racine du monorepo :

```bash
lomi docs check
```

Équivalent à `cd apps/docs && pnpm lint && pnpm docs:drift`. Voir [Rédiger pour la doc lomi.](/resources/contributing/writing-for-lomi-docs).
