<p>To add to @eddex's answer, another option would be to use the Emurgo's <em>cardano-serialization-lib</em>. There are not many examples available in their documentation, unfortunately.</p>
<p>Link: <a href="https://github.com/Emurgo/cardano-serialization-lib" rel="nofollow noreferrer">https://github.com/Emurgo/cardano-serialization-lib</a></p>
<p>For a guideline on how to use the library specifically for creating transactions, I found a good example in the <em>blockfrost-js</em> repository. The usage of <em>cardano-serialization-lib</em> can be found in one of the helper files.</p>
<p>Link: <a href="https://github.com/blockfrost/blockfrost-js/blob/fb9a55fee07927f8d7c8b0a5aa9efd2d3daf6c77/examples/simple-transaction/src/index.ts" rel="nofollow noreferrer">https://github.com/blockfrost/blockfrost-js/blob/fb9a55fee07927f8d7c8b0a5aa9efd2d3daf6c77/examples/simple-transaction/src/index.ts</a></p>

CC BY-SA 4.0
2022-03-02T00:58:17.973Z
2022-03-02T00:58:17.973Z
Jaanus Varus
<p>There is the <a href="https://github.com/CardanoSharp/cardanosharp-wallet" rel="nofollow noreferrer">cardanosharp-wallet</a> library that provides this functionality. They have a section in their <a href="https://github.com/CardanoSharp/cardanosharp-wallet#build-and-sign-transactions" rel="nofollow noreferrer">README.md</a> that explains signing transactions.</p>

CC BY-SA 4.0
2021-08-14T17:16:48.353Z
2021-08-14T17:16:48.353Z
eddex
<p>My goal is to send a transaction (e.g. send 1 ADA from addr1A to addr1B) using the following endpoint of the blockfrost.io API:</p>
<blockquote>
<p>&quot;Submit an already serialized transaction to the network.&quot;</p>
<p><a href="https://docs.blockfrost.io/#tag/Cardano-Transactions/paths/%7E1tx%7E1submit/post" rel="noreferrer">https://docs.blockfrost.io/#tag/Cardano-Transactions/paths/~1tx~1submit/post</a></p>
</blockquote>
<p>It requires a serialized transaction. How can I create a serialized transaction without a local full node? (With a full node this could be done using the <a href="https://developers.cardano.org/docs/transaction-metadata/how-to-create-a-metadata-transaction-cli/#submit-to-blockchain" rel="noreferrer">cardano-cli</a>).</p>
<p>The <a href="https://github.com/Emurgo/message-signing" rel="noreferrer">emurgo/message-signing</a> library seems to provide this functionality but I'm not sure how to use it. The <a href="https://github.com/Emurgo/message-signing/blob/master/examples/rust/src/main.rs" rel="noreferrer">example</a> they provide just signs some random string.</p>
<p>Are there any other libraries that can be used for this?</p>
<p>The library would need to be able to</p>
<ol>
<li>Create a transaction (with metadata)</li>
<li>Calculate the fees</li>
<li>Sign/serialize the transaction</li>
</ol>

<transaction><blockfrost>
How can I create a serialized transaction that can be submitted to the blockchain without a local full node?
# How can I create a serialized transaction that can be submitted to the blockchain without a local full node?

(Asked by: username_0 on 2021-08-14)

My goal is to send a transaction (e.g. send 1 ADA from addr1A to addr1B) using the following endpoint of the blockfrost.io API:

> "Submit an already serialized transaction to the network."
>
> [https://docs.blockfrost.io/#tag/Cardano-Transactions/paths/~1tx~1submit/post](https://docs.blockfrost.io/#tag/Cardano-Transactions/paths/%7E1tx%7E1submit/post)

It requires a serialized transaction. How can I create a serialized transaction without a local full node? (With a full node this could be done using the [cardano-cli](https://developers.cardano.org/docs/transaction-metadata/how-to-create-a-metadata-transaction-cli/#submit-to-blockchain)).

The [emurgo/message-signing](https://github.com/Emurgo/message-signing) library seems to provide this functionality but I'm not sure how to use it. The [example](https://github.com/Emurgo/message-signing/blob/master/examples/rust/src/main.rs) they provide just signs some random string.

Are there any other libraries that can be used for this?

The library would need to be able to

1. Create a transaction (with metadata)
2. Calculate the fees
3. Sign/serialize the transaction

**Tags:** transaction, blockfrost

---

## 2 answers

### Answer by username_0 on 2021-08-14. Score: 2 | Accepted answer

There is the [cardanosharp-wallet](https://github.com/CardanoSharp/cardanosharp-wallet) library that provides this functionality. They have a section in their [README.md](https://github.com/CardanoSharp/cardanosharp-wallet#build-and-sign-transactions) that explains signing transactions.


---

### Answer by username_1 on 2022-03-02. Score: 3

To add to @eddex's answer, another option would be to use the Emurgo's *cardano-serialization-lib*. There are not many examples available in their documentation, unfortunately.

Link: <https://github.com/Emurgo/cardano-serialization-lib>

For a guideline on how to use the library specifically for creating transactions, I found a good example in the *blockfrost-js* repository. The usage of *cardano-serialization-lib* can be found in one of the helper files.

Link: <https://github.com/blockfrost/blockfrost-js/blob/fb9a55fee07927f8d7c8b0a5aa9efd2d3daf6c77/examples/simple-transaction/src/index.ts>


---

