# XCMDecodeFailed (/docs/errors/chain/XCMDecodeFailed)

The bytes the contract passed to `xcm_execute` or `xcm_send` could not be decoded as a versioned XCM message. Check the XCM encoding and version the contract produces against what the runtime supports.

Declared by the `Contracts` pallet; it classifies to the semantic code [`invalid_argument`](/docs/errors/invalid-argument).

## Remediation [#remediation]

Check the argument values against the operation schema

The same explanation is available in the terminal: `btcli explain XCMDecodeFailed`.
