# Decode **POST /wallets/{walletId}/transactions-decode**
status: stable
Decode a serialized transaction, either freshly constructed, partially signed or fully-signed. ## Servers - https://localhost:8090/v2: https://localhost:8090/v2 () ## Parameters ### Path parameters - **walletId** (string(hex)) ### Body: application/json (object) - **decrypt_metadata** (object) The metadata passphrase for decryption. - **transaction** (string(base64|base16)) The CBOR-encoded transaction, represented in either hex or base64 encoding. This always includes the transaction body and the witness set, even if the latter is empty. ## Responses ### 400 Bad Request #### Body: application/json (object) - **message** (string) May occur when a request is not well-formed; that is, it fails to parse successfully. This could be the case when some required parameters are missing or, when malformed values are provided. - **code** (string) ### 404 Not Found #### Body: application/json (object) - **message** (string) May occur when a given walletId does not match with any known wallets (because it has been deleted, or has never existed). - **code** (string) ### 406 Not Acceptable #### Body: application/json (object) - **message** (string) May occur when providing an invalid 'Accept' header. - **code** (string) ### 415 Unsupported Media Type #### Body: application/json (object) - **message** (string) May occur when providing an invalid 'Content-Type' header. - **code** (string) ### 202 Accepted #### Body: application/json (object) - **id** (string(hex)) A unique identifier for this transaction - **fee** (object) Coins, in Lovelace. Only relates to 'Ada'. Refer to `assets` for multi-assets wallets instead. - **inputs** (array[object]) Inputs that could be external or belong to the wallet. - **outputs** (array[object]) Outputs that could be external or belong to the wallet. - **collateral** (array[object]) Inputs that could be external or belong to the wallet. - **collateral_outputs** (array[object]) Outputs that could be external or belong to the wallet. - **withdrawals** (array[object]) Withdrawals that could be external or belong to the wallet. - **mint** (object) - **burn** (object) - **certificates** (array[object]) Any certificate that could occur in an arbitrary transaction: might be related to delegation, pool activities, genesis or MIR. - **metadata** (object | null) - **deposits_taken** (array[object]) Coins, in Lovelace. Only relates to 'Ada'. Refer to `assets` for multi-assets wallets instead. - **deposits_returned** (array[object]) Coins, in Lovelace. Only relates to 'Ada'. Refer to `assets` for multi-assets wallets instead. - **script_validity** (string | null) Indicates whether the phase-2 monetary policy script (e.g. Plutus script) used in the transaction validated or not. Validity may be null if this transaction was from an era that doesn't support phase-2 monetary policy scripts, or is a pending transaction (we don't know if validation passed or failed until the transaction hits the ledger). - **validity_interval** (object) - **witness_count** (object) Specifies the number of verification key and bootstrap wintesses. As scripts act as witnesses they are also included. Scripts can be specified and spent in a given transaction or defined to be consumed later. In the latter case they are defined in transaction outputs (feature possible from Babbage era) in one transaction and referenced in other later transaction(s). The script referencing is realized via including of reference in a reference input. If reference script is present here it included the form of the script and reference to be used later, ie. tx id and index of tx out where the script was included. [Powered by Bump.sh](https://bump.sh)