---
title: Send a Signed Transaction
description: Sending value-based messages is a very straightforward process. You will only need to provide a valid seed, output addresses, and amount.
image: /img/logo/iota_mark_light.png
keywords:
- how to
- value
- utxo
- ouputs
- core payload type
- unspent transactions output
- java
- nodejs
- python
- wasm
- rust
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
import WalletRecommendation from "../_admonitions/_wallet_transaction_recommendation.md";
import DustProtection from "../_admonitions/_dust_protection.md";
import JavaTransaction from "../libraries/java/examples/_09_transaction.mdx";
import NodejsGetTransaction from "../libraries/nodejs/examples/_09_transaction.mdx";
import PythonGetTransaction from "../libraries/python/examples/_09_transaction.mdx";
import RustGetTransaction from "../libraries/rust/examples/_09_transaction.mdx";
import WasmGetTransaction from "../libraries/wasm/examples/_09_transaction.mdx";

A [SignedTransaction](./../explanations/messages_payloads_and_transactions.md#signedtransaction) is a core payload type
that is used to send value-based messages as
[Unspent Transaction Output (UTXO)](./../explanations/messages_payloads_and_transactions#unspent-transaction-output-utxo).
This core payload changes the ledger state as it spends "old" outputs and replaces them with new outputs.

<WalletRecommendation />

<Tabs groupId="language">
  <TabItem value="java" label="Java">
    <JavaTransaction />
  </TabItem>
  <TabItem value="nodejs" label="Nodejs">
    <NodejsGetTransaction />
  </TabItem>
  <TabItem value="python" label="Python">
    <PythonGetTransaction />
  </TabItem>
  <TabItem value="rust" label="Rust">
    <RustGetTransaction />
  </TabItem>
  <TabItem value="wasm" label="Wasm">
    <WasmGetTransaction />
  </TabItem>
</Tabs>

<DustProtection />
