Sending Transactions
Transactions are a formal action on a blockchain. They are always initiated in Kaikas with a call to the
klay_sendTransaction
method. They can involve a simple sending of KLAY, may result in sending tokens, creating a new smart contract, or changing state on the blockchain in any number of ways. They are always initiated by a signature from an external account, or a simple key pair.In Kaikas, there are several ways to make transactions. First one is to use
klaytn.sendAsync
method to directly invoke klay_sendTransaction
. This method wraps RPC API and sends it to browser's Caver instance.const transactionParameters = {
gas: '0x2710',
to: '0x0000000000000000000000000000000000000000',
from: klaytn.selectedAddress,
value: '0xff'
}
klaytn.sendAsync(
{
method: 'klay_sendTransaction',
params: [transactionParameters],
from: klaytn.selectedAddress
},
callback
)
Another way (more recommanded) is to use Caver. Pass
window.klaytn
, or just klaytn
, when creating Caver instance. After that, you can use that instance when interacting with Klaytn network. Below is an example of sending 1 KLAY. Install Caver via npm install caver-js
. You can choose whatever version of Caver you want to use.import Caver from 'caver-js' // or const Caver = require('caver-js')
const caver = new Caver(klaytn)
caver.klay
.sendTransaction({
type: 'VALUE_TRANSFER',
from: klaytn.selectedAddress,
to: '0x0000000000000000000000000000000000000000',
value: caver.utils.toPeb('1', 'KLAY'),
gas: 8000000
})
.once('transactionHash', transactionHash => {
console.log('txHash', transactionHash)
})
.once('receipt', receipt => {
console.log('receipt', receipt)
})
.once('error', error => {
console.log('error', error)
})
Even without installing caver-js, you can use injected caver. If user has Kaikas installed, caver will be available as a global variable. This caver's version is 1.4.0.
window.caver.sendTransaction({
type: 'VALUE_TRANSFER',
from: klaytn.selectedAddress,
to: '0x0000000000000000000000000000000000000000',
value: caver.utils.toPeb('1', 'KLAY'),
gas: 8000000
})
From the user's perspective, the following pop-up will be shown. If the user confirms, Kaikas will sign the transaction and send it to Klaytn blockchain network.

Sending Transactions
Last modified 4mo ago