일반적으로 컨트랙트가 Klay와 같은 native asset을 받기 위해선 receive 함수를 구현해야합니다. 이에 대해 다음 문서를 참조하시면 좋을 것 같습니다. [링크]
모든 컨트랙트가 Klay를 받는 receive 함수를 가져야하는 것이 아니고 특정 목적을 위한 컨트랙트에서(KLAY를 포함하는 LP토큰 컨트랙트나 KLAY 스테이킹, KLAY를 활용한 presale등) 구현이 되어 있기 때문에 일반적으론 컨트랙트로 KLAY를 보내는 트랜잭션은 실패하게 됩니다.
빠른답변 감사 드립니다.
클립에서는 정상 전송이 되는것으로 확인 되었고(안된다고 오해가 있었던 것 같습니다.)
테스트 가능한 Cypress 주소는 0xf6fb7f1d685388c60a73b7a9ef875f8cc2b059d4
입니다.
카이카스의 경우 크롬 플러그인은 전송되고, 아이폰에 설치된 모바일 앱은 안되네요.
관심 감사드립니다. 우선 클립에서는 정상적으로 전송됩니다. 그리고 위의 말씀처럼 안되는 곳은 카이카스 앱이며, 카이카스 크롬 플러그인은 전송 됩니다. 테스트 결과 취합에 미스가 있어서 혼란 드려 죄송합니다.
그리고 컨트랙트는 receive 메소드 구현되어 있는 것을 사용했습니다. 상세히 말씀 드리지 못해 죄송합니다.
추가로 말씀 드리면 그 후 직접 web3js와 caver.js를 이용해서 각각 이더리움 방식의 전통적인 송금 트랜잭션과 클레이튼 방식의 VALUE_TRANSFER 트랜잭션을 일으켜서 컨트랙트로 송금해 본 결과 web3js로 일으킨 트랜잭션은 성공하고 caver.js로 일으킨 VALUE_TRANSFER 트랜잭션은 실패했습니다. 혹시 카이카스 모바일은 VALUE_TRANSFER 트랜잭션을 쓰는 것이 아닐까 하는데요, 그렇게만 보기에는 크롬 플러그인은 된다는 것이 또 이상하군요.
관련해서 아시는 분 있으시다면 많은 말씀 부탁드립니다.