# Token exchanges on IC

**URL:** <https://forum.dfinity.org/t/token-exchanges-on-ic/33473>\
**Category:** Developers\
**Created:** [July 21, 2024, 5:30pm UTC](https://forum.dfinity.org/t/token-exchanges-on-ic/33473 "2024-07-21T17:30:26Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![ghostwhoowalks](https://avatars.discourse-cdn.com/v4/letter/g/b487fb/32.png) [@ghostwhoowalks](https://forum.dfinity.org/u/ghostwhoowalks)\
**Post date:** [July 21, 2024, 5:30pm UTC](https://forum.dfinity.org/t/token-exchanges-on-ic/33473/1 "2024-07-21T17:30:26Z")

</div>

Let’s say I deploy two canister, representing two different tokens, on IC. Let’s assume token X on subnet A and token Y on subnet B. Now if I need to trade token X for token Y are these transactions atomic i.e. is atomicity guaranteed by IC or do I need to build that into my Dapp canister? Thanks in advance.

---

<div class="post-metadata">

**Author:** ![bogwar](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/bogwar/32/2161_2.png) [@bogwar](https://forum.dfinity.org/u/bogwar)\
**Post date:** [July 22, 2024, 6:00am UTC](https://forum.dfinity.org/t/token-exchanges-on-ic/33473/2 "2024-07-22T06:00:03Z")

</div>

On the IC replicated calls on different canisters (as needed for your scenario) are not atomic, so you would need to implement atomic transactions at the canister level.

---

<div class="post-metadata">

**Author:** ![ghostwhoowalks](https://avatars.discourse-cdn.com/v4/letter/g/b487fb/32.png) [@ghostwhoowalks](https://forum.dfinity.org/u/ghostwhoowalks)\
**Post date:** [July 22, 2024, 7:52pm UTC](https://forum.dfinity.org/t/token-exchanges-on-ic/33473/3 "2024-07-22T19:52:20Z")

</div>

Thought as much. Thanks for the confirmation.
