# Turn EDOF into an API for your CPF files

> Read your demandes d'inscription, your dossiers à facturer and the Suivi des règlements from EDOF with one API call each. Or have a workflow check Mes inscriptions every morning and email you the requests that arrived overnight.

Page: https://fous.com/automate/edof
Updated: 2026-11-12

Works with your own EDOF account. Fous is an independent product.

## What you can build on EDOF

### Get new registration requests

Reads the demandes d'inscription (registration requests) waiting in Mes inscriptions, with the session each trainee asked for.

- Takes: SIRET
- Returns: File number, trainee, training, session start and end dates, modality, location, price

### List files ready to invoice

Reads Dossiers > Dossiers à facturer (files to invoice): the files whose service fait is validated, with the Montant calculé selon les CGU.

- Takes: SIRET
- Returns: File number, trainee, training, exit date, completion, amount calculated under the CGU

### Get payment tracking

Reads Données financières > Suivi des règlements (payment tracking): each invoice or acompte (advance) and what was paid for it.

- Takes: SIRET, since date (optional)
- Returns: File number, invoice number or advance, amount, payment date, status

### Declare training exit and service fait

Opens a file under Dossiers en cours > Entrée déclarée, selects Déclarer la sortie de formation and enters the exit date and the service fait.

- Takes: SIRET, file number, exit date, fully or partly followed, exit reason and completion rate if partly
- Returns: File number, exit date, service fait, estimated amount to invoice

## Automate EDOF with a workflow

A [workflow](/product/workflows) runs your methods as one process, with nobody at the screen. A schedule or a call from your own system starts it, the steps run in order, and the result arrives in your inbox or in the systems you already use.

### New demandes d'inscription, every morning

Starts: Every weekday at 8:00

1. Get the registration requests waiting in Mes inscriptions for each SIRET you name.
2. Keep the requests that were not there on the last run.
3. Email you the list, one section per SIRET, with the session dates and price.

### Weekly list of dossiers à facturer for accounting

Starts: Every Monday at 9:00

1. Get the files in Dossiers à facturer for each SIRET.
2. Stop when there are none.
3. Post each file with its trainee, exit date and Montant calculé selon les CGU to your accounting webhook.

### Payments received, posted to your accounting system

Starts: Every weekday at 18:00

1. Get the Suivi des règlements for each SIRET.
2. Keep the rows that changed since the last run.
3. Post file number, invoice number, amount, payment date and status to your webhook.

You can run a workflow by hand on every plan, Free included. Schedules and webhook triggers come with the paid plans, from $29 a month.

## Once built, one call from your code

Once you have built a [method](/product/methods), it is one POST to /v1/runs from your backend, or a tool an AI agent calls over MCP. This is what “Get new registration requests” would look like.

Example request:

```
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "of.moncompteformation.gouv.fr/get_registration_requests",
    "input": {
      "siret": "00000000000017"
    }
  }'
```

Example response:

```
{
  "status": "completed",
  "data": {
    "siret": "00000000000017",
    "requests": [
      {
        "file_number": "9204817733",
        "trainee": "Camille Martin",
        "training": "Anglais professionnel, préparation TOEIC",
        "session_start": "2026-12-07",
        "session_end": "2027-02-26",
        "modality": "À distance",
        "location": null,
        "price": 1490,
        "currency": "EUR"
      }
    ],
    "count": 1
  }
}
```

An example with invented data, not a ready-made endpoint. The method exists in your organization once you build it, and its name, inputs and fields follow your request.

## EDOF’s own options

The Caisse des Dépôts documents one file channel for training providers on EDOF: importing the course catalogue as an XML file through Transfert XML. Its help pages describe answering demandes d'inscription, declaring the sortie de formation and service fait, and entering invoice data on screen in EDOF.

| Option | What it covers | What it takes |
| --- | --- | --- |
| Transfert XML | Imports your catalogue of CPF offers from one XML file, with an integration report listing anomalies and rejected offers. | A file under 100 Mo named SIRET_nomdefichier that matches the XSD in the XML kit. Files are processed on working days, 8:00 to 22:00. |
| EDOF by hand | Mes inscriptions, Dossiers en cours, Dossiers à facturer and Données financières, for one SIRET at a time. | An EFP Connect account given access to EDOF for that SIRET by your Responsable des accès. |

Read on November 12, 2026: [Comment importer mes offres de formation sur EDOF ?](https://of.moncompteformation.gouv.fr/espace-public/aide/comment-importer-mes-offres-de-formation-sur-edof), [Guide EDOF: importer un catalogue par fichier .xml (April 2026)](https://of.moncompteformation.gouv.fr/espace-public/sites/of/files/2026-04/Guide_EDOF_Import_catalogue_fichier_XML_042026.pdf), [Guides d'utilisation](https://of.moncompteformation.gouv.fr/espace-public/page-guide).

## Signing in to EDOF

EDOF signs you in with an EFP Connect account, the ministère du Travail's sign-in: your email address and a password of at least 12 characters. Access is granted per SIRET by your Responsable des accès, and you switch with Mon Compte > Changer de SIRET. With Fous you sign in through EDOF's own sign-in with your own account, and the login is sealed with AES-256.

## Worth knowing

- **Three working days to declare service fait**: You have three working days to declare the sortie de formation and service fait. You can change it for five working days, until the Caisse des Dépôts validates it automatically.
- **One SIRET at a time**: Access to EDOF is granted for each SIRET, and you switch between establishments with Mon Compte > Changer de SIRET. So a method takes the SIRET as an input.
- **Invoice data only through EDOF**: Invoices sent by email or post are not processed. The amount you enter must match the Montant calculé selon les CGU, and a file under contrôle de service fait cannot be invoiced or paid.
- **Payment within 30 calendar days**: The Caisse des Dépôts pays within 30 calendar days of the invoice, plus 3 to 4 working days between banks. Trainings longer than three months get a 25% advance.

## More in Education, research and nonprofit

- [Slate](https://fous.com/automate/slate.md)
- [Naviance](https://fous.com/automate/naviance.md)
- [Common App for Recommenders](https://fous.com/automate/common-app-for-recommenders.md)
- [National Student Clearinghouse secure site](https://fous.com/automate/national-student-clearinghouse-secure-site.md)
- [AQA Centre Services](https://fous.com/automate/aqa-centre-services.md)
- [Edexcel Online](https://fous.com/automate/edexcel-online.md)
- [FSA Partner Connect](https://fous.com/automate/fsa-partner-connect.md)
- [Submit learner data](https://fous.com/automate/submit-learner-data.md)
- [VA Enrollment Manager](https://fous.com/automate/va-enrollment-manager.md)
- [Sponsorship Management System](https://fous.com/automate/sponsorship-management-system.md)
- [Infinite Campus](https://fous.com/automate/infinite-campus.md)
- [PowerSchool SIS](https://fous.com/automate/powerschool-sis.md)
- [Arbor MIS](https://fous.com/automate/arbor-mis.md)
- [SLC HEP Services](https://fous.com/automate/slc-hep-services.md)
- [Parchment](https://fous.com/automate/parchment.md)
- [UCAS adviser portal](https://fous.com/automate/ucas-adviser-portal.md)
- [Benevity Causes Portal](https://fous.com/automate/benevity-causes-portal.md)

Other industries: [Dominion Energy Manage Account](/automate/dominion-energy-manage-account), [iFood Portal do Parceiro](/automate/ifood-portal-do-parceiro), [CommBiz](/automate/commbiz), [CAFS](/automate/cafs), [RD e-Filing](/automate/rd-e-filing), [MCA21](/automate/mca21).

## Frequently asked questions

### Does EDOF have an API?

Not for registration files or invoices, according to the Caisse des Dépôts' help pages. The one documented file channel is Transfert XML, which imports your course catalogue from an XML file under 100 Mo. Answering registrations, declaring service fait and entering invoice data are described as steps on screen in EDOF.

### How long does the Caisse des Dépôts take to pay a CPF invoice?

Up to 30 calendar days from the invoice date, plus 3 to 4 working days between banks. Payment needs validated bank details, a validated service fait and complete invoice data. You follow it under Données financières > Suivi des règlements.

### Can I export my EDOF catalogue?

No. The help page says the catalogue cannot be exported or transferred, including after a change of SIRET, and advises keeping your own copy of your offers. Transfert XML only imports.

### Why can a file not be invoiced?

Usually because the service fait is still waiting for validation, which is automatic a few days after you declare it. A file can also be non facturable under the CGU, for example after a force majeure cancellation, or blocked while it is under contrôle de service fait.

### Is Fous affiliated with the Caisse des Dépôts?

No. Fous is an independent product. You use it with your own EFP Connect account, and a method reads and does only what that account can on EDOF.

Fous is an independent product: it is not affiliated with, endorsed by or sponsored by the operator of EDOF (Caisse des Dépôts). The name is used only to say which system this page is about. Something here wrong or out of date? Write to legal@fous.com.
