# {'code': -32000, 'message': 'unknown account'} 에러 질문입니다

**URL:** <https://devforum.kaia.io/t/code-32000-message-unknown-account/5887>\
**Category:** Kaia Wallet\
**Tags:** smart-contract, klaytn\
**Created:** [8월 19, 2022, 7:41오전 UTC](https://devforum.kaia.io/t/code-32000-message-unknown-account/5887 "2022-08-19T07:41:21Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sunouk\_Mun](https://yyz1.discourse-cdn.com/flex035/user_avatar/devforum.kaia.io/sunouk_mun/32/2860_2.png) [@Sunouk\_Mun](https://devforum.kaia.io/u/Sunouk_Mun)\
**Post date:** [8월 19, 2022, 7:41오전 UTC](https://devforum.kaia.io/t/code-32000-message-unknown-account/5887/1 "2022-08-19T07:41:21Z")

</div>

안녕하세요. klayswap 에서 exchangeKctPos 함수를 통해 토큰 교환을 시도하려고 하는데 에러 응답이 와서 문의드립니다,  
web3.py 로 exchangeKctPos 함수를 작성하였는데 왜 ValueError 가 뜨는지 모르겠습니다.  
다른곳을 확인하니 address 에러라는데 kaikas 쪽 wallet 을 사용하고 있습니다.  
도움을 주신다면 감사하겠습니다.

```auto
#Question
from web3 import Web3

network_path = 'wss://public-node-api.klaytnapi.com/v1/cypress/ws'

w3 = Web3(Web3.WebsocketProvider(network_path))

KMOOIAddress = '0x4b734a4d5bf19d89456ab975dfb75f02762dda1d'
oUSDTAddress = '0xcee8faf64bb97a73bb51e115aa89c17ffa8dd167'
Klayswap_KMOOI_oUSDT_ExchangeAddress = "0x71f3a62c52f5ce71331b3af00bd63d617264b040"

Klayswap_KMOOI_oUSDT_ExchangeAddress = Web3.toChecksumAddress(Klayswap_KMOOI_oUSDT_ExchangeAddress)
oUSDTAddress = Web3.toChecksumAddress(oUSDTAddress)
KMOOIAddress = Web3.toChecksumAddress(KMOOIAddress)
address = Web3.toChecksumAddress(address)

klayswap_USDT_MOOI_ProtocolContract = w3.eth.contract(Klayswap_KMOOI_oUSDT_ExchangeAddress, abi=IKlayswapProtocolABI)

nonce = w3.eth.getTransactionCount(address)

rtAmounts = klayswap_USDT_MOOI_ProtocolContract.functions.exchangeKctPos(oUSDTAddress, 1, KMOOIAddress, 2,[]).transact(
        {
            "from" : address,
            'gas' : 4000000,
            'to' : Klayswap_KMOOI_oUSDT_ExchangeAddress,
            "nonce": nonce,
        }
    )

print(">> exchangeKctPos rtAmounts:", rtAmounts)

```

```auto
ValueError: {'code': -32000, 'message': 'unknown account'}

```

---

<div class="post-metadata">

**Author:** ![Lewis](https://yyz1.discourse-cdn.com/flex035/user_avatar/devforum.kaia.io/lewis/32/3118_2.png) [@Lewis](https://devforum.kaia.io/u/Lewis)\
**Post date:** [8월 21, 2022, 9:50오전 UTC](https://devforum.kaia.io/t/code-32000-message-unknown-account/5887/2 "2022-08-21T09:50:56Z")

</div>

먼저 해당 컨트랙트의 자세한 내용은 Klayswap의 독스를 참고하시면 될 것 같습니다.

해당 독스를 참고하면, exchangeKctPos는 LP토큰이 아닌 ksp라는 거버넌스 토큰 컨트랙트내에 구현되어 있습니다. 따라서 exchangeKctPos를 사용할 컨트랙트의 주소를 ksp 토큰 컨트랙트 주소로 수정하셔야 할 것 같습니다. (router에 토큰 approve도 진행해야 합니다.)

Klaytn 생태계에서는 caver-js를 사용하여 효과적으로 노드와 소통할 수 있으니 해당 부분도 알아보시면 좋을 것 같습니다. (기존 web3-js에서 쉽게 포팅해올 수 있습니다.)
