Submit payroll migration files for a legal entity

Attach year-to-date payroll files to a legal entity and submit them for review, in one call. Upload each file to the Deel file service first and pass the file id and one-time secret it returns; the file bytes never reach this endpoint. Atomic: if any file is rejected, nothing is stored. Error codes: 400 FILE_CLAIM_FAILED (not scanned yet, or the secret is invalid or spent), 403 FORBIDDEN, 403 PAYROLL_MIGRATION_IMPORT_DISABLED, 404 NOT_FOUND, 409 DUPLICATE_IMPORT_FILE (repeated, or already attached). **Token scopes**: `global-payroll:write`

Authentication

AuthorizationBearer
## Authentication The Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail. ```curl curl -X GET 'https://api.deel.training/rest/v2/contracts' \ -H 'Authorization: Bearer YOUR-TOKEN-HERE' ``` [Learn more about authentication](/api/authentication)
OR
AuthorizationBearer
Standard OAuth2 security scheme based on https://swagger.io/docs/specification/authentication/

Path parameters

legal_entity_idstringRequiredformat: "uuid"
The unique identifier of the legal entity the payroll migration files belong to.

Request

This endpoint expects an object.
dataobjectRequired
The payroll migration files to submit.

Response

OK
dataobject
The submitted payroll migration import.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
500
Internal Server Error