We’re introducing idempotency keys to make the Deel API safer and more reliable — especially for sensitive operations like contract creation and payments.
Why it matters
Third-party systems often retry failed requests. Without idempotency, this can lead to duplicate operations. Idempotency keys solve this by ensuring the same request won’t be processed twice.
How it works
Send an idempotency-key header with your API request.
If the same key is used within 24 hours, the API returns the original response.
No duplicate processing, no unintended side effects.
Dynamically generate the correct contract form for any country without hardcoding the logic in your frontend. EOR contract requirements vary by country—fields, defaults, legal constraints—so this endpoint ensures your app always reflects the latest, compliant structure for that country. It decouples logic from your codebase and lets Deel handle country-specific rules centrally.
An endpoint to fetch background checks requested with status and results for a contract using the API. And a webhook which gets triggered when a background check is completed. For more info, visit the Help Center .
List background checks by contract
Retrieve the background checks initiated for a contract.
Request background checks on a worker or an employee contract. You can pass multiple individual checks or a package, available in a given country.
Please note that this EP supports a single contract ID as of now. Support for multiple contract IDs will be added in near future. Please keep an eye on change log for this update.
Upload a custom contract file as part of the contract creation process. Use a custom contract instead of the standard Deel contract.
Please note that this endpoint requires using a multipart/form-data header and including a custom_contract_file parameter.
If you prefer the standard Deel contract, you can continue using the standard contract creation flow, which requires JSON-formatted data with the application/json header.