fonciqAPI
Facturation

Lire le journal estimé du Registre par compte

Portée `billing:read`. Frais du Registre foncier imputés à chaque compte connecté, pour une période. Ce n'est pas la facturation de plateforme de Fonciq. Aucun relevé du portail n'est lu. `source` vaut `estimate`. Les lignes sont le journal Fonciq des tirages. Le compte est `id`. La même valeur est répétée dans `account_id`. `statement.available` est faux, `statement.balance_cents` est nul et `statement.source` vaut `unavailable`. Le détail par document est dans `GET /v1/billing/usage`.

GET
/v1/billing
AuthorizationBearer <token>

Clé d'API de l'organisation. Le secret n'est montré qu'une fois. Le préfixe affichable d'une clé d'essai est fq_test_. Le hachage SHA-256 est la seule forme conservée. Le panneau d'essai de cette documentation n'envoie qu'une clé fq_test_ et n'effectue aucun débit.

Dans : en-tête

Paramètres de requête

rf_account_id?string

Limite la réponse à un compte. Omis, tous les comptes de l'organisation sont renvoyés. account_id est accepté comme alias du même paramètre.

Corps de la réponse

application/json

application/json

application/json

application/json

curl -X GET "https://api.fonciq.ca/v1/billing"
{
  "period": {
    "start": "2026-10-01T04:00:00.000Z",
    "end": "2026-11-01T04:00:00.000Z",
    "timezone": "America/Toronto"
  },
  "currency": "CAD",
  "source": "estimate",
  "source_note": "Aucun relevé du portail n’est lu. Les lignes reprennent le journal fonciq des tirages sur ce compte et sont une estimation. Le relevé du Registre foncier fait foi.",
  "refreshed_at": "2026-10-24T18:05:00.000Z",
  "accounts": [
    {
      "id": "rfa_exemple",
      "account_id": "rfa_exemple",
      "label": "Compte par défaut",
      "is_default": true,
      "statement": {
        "available": false,
        "balance_cents": null,
        "as_of": null,
        "source": "unavailable"
      },
      "totals": {
        "amount_cents": 150,
        "transaction_count": 1,
        "mismatch_count": 0
      }
    }
  ]
}
{
  "error": {
    "code": "unauthorized",
    "message": "Clé d'API refusée.",
    "request_id": "req_01HZX"
  }
}
{
  "error": {
    "code": "account_not_found",
    "message": "Ce compte du Registre n'appartient pas à l'organisation.",
    "request_id": "req_01HZX"
  }
}
{
  "error": {
    "code": "rate_limited",
    "message": "Trop de requêtes pour cette clé.",
    "request_id": "req_01HZX"
  }
}

Soumettre un lot groupé POST

Portée `batches:write`. En-tête `Idempotency-Key` obligatoire, conservé 24 heures. Au plus 500 lots par requête. Corps JSON `{ "lots": ["…"] }` ou CSV `text/csv` avec une colonne `lot` ou `matricule`. Un index débite 99 cents par lot sur une clé réelle. Ce débit ne figure pas dans `GET /v1/billing`. Sans `account_id`, le lot groupé est réparti en parallèle sur les comptes du Registre actifs de l'organisation. Avec `account_id`, chaque lot est épinglé à ce compte. Chaque compte conserve son plafond de 540 index par jour. Les consultations demandées passent par la même file qu'une requête unitaire. Les frais du Registre, 150 cents, s'appliquent lorsque le Registre est consulté. L'index consulte toujours le Registre. Le Registre facture le titulaire du compte qui a exécuté la consultation.

Lire les documents du journal estimé GET

Portée `billing:read`. Même périmètre que `GET /v1/billing` : les frais du Registre, par période et par document. Pas les frais de plateforme de Fonciq. Aucun relevé du portail n'est lu. `source` vaut `estimate`. Chaque ligne porte `rf_account_id`, la date (`at`), le type (`document_type`), le lot, l'inscription s'il y en a une, le montant en cents (`amount_cents`) et `rf_reference` (nul). `reconciliation` vaut `log_only`. La même valeur de compte est répétée dans `account_id`. `mismatches` est vide. Il n'y a pas de champ `estimate`. Sur cette estimation, lorsqu'un acte est récupéré, `amount_cents` vaut 150, les frais du Registre (1,50 $). Un acte conservé n'a pas de frais du Registre. Ce n'est pas un montant lu sur un écran du portail.