Skip to main content

Import Bacs Files via DDCMS Direct API

Import Bacs payment files directly into DDCMS Direct via API with no manual upload needed.

O
Written by Ollie Denning

Bacs payment files can now be imported directly into DDCMS Direct using our API, with no need to upload them manually in the UI. This allows you to automate your file submission process while still using the DDCMS Direct portal for validation, approvals, and scheduling.


Requirements

Before using the API, make sure you have:

  • DDCMS Direct enabled

  • A valid API key

  • Your client prefix

All API requests must include your API key in the request headers under the apiKey field, formatted as {apiKey}, to ensure successful authentication.

📌Note: If you need assistance locating or regenerating your API key, please reach out to our Access Digital Assistant. A member of the Support team will then provide the required details.


Import endpoint

Send a POST request using multipart/form-data:

Your request must include:

  • file – the Bacs payment file

  • fileType – the file format type

Supported file types:

The fileType determines which structural validation rules are applied. A successful response is only returned if the file passes the initial structural checks.


Successful import

If the file is accepted, the API returns the following information:

  • status – success

  • fileId – a unique UUID for the imported file

  • importedAt – timestamp of import

  • message – confirmation text

  • fileStatus – will be Queued for validation

  • nextSteps – guidance for what to do next in DDCMS Direct

Keep the fileId for future reference.


After file import

Once imported, the file will:

  • Appear in the Home screen

  • Appear in the Outgoing Files screen

  • Show Uploaded by: API User

  • Move into Queued for validation while full checks run

To support approval workflows, the Uploaded by name automatically transfers from API User to the first user who interacts with the file. This prevents users from approving files they effectively uploaded.

Attribution transfers when a user:

  • Sets the SUN

  • Sets the processing date

  • Sets the pay date

  • Selects approvers

  • Submits the file

  • Cancels the upload (e.g., duplicate)

📌Note: Attribution transfers once only and does not move again.


Error handling

The API may return different types of errors depending on the issue:

Error Code

When It Happens

Details

400 – Something's not right with the request

The request is missing or contains invalid information

This may occur if the fileType is missing or invalid, the file is missing or empty, the request isn’t sent as multipart/form-data, or the file fails structural or format checks. When structural validation fails (status validation_failed), the response includes an errors array detailing the issues so you can correct them before re‑uploading.

403 – Access not allowed

Your client doesn’t have DDCMS Direct enabled

The import endpoint cannot be used if the feature is disabled.

413 – File too large

The uploaded file exceeds the size limit

The API accepts files up to a maximum size of 130 MB (137,000,000 bytes), and any file exceeding this limit will be rejected.

500 – Something went wrong on our side

A server-side issue occurred

A general internal server error occurred.

Did this answer your question?