Initialization
tonpay_sdk = Tonpay.create(TonNetwork.MAINNET, Sender())Short FAQ
from tonsdk.boc import Cell
from tonsdk.utils import Address, bytes_to_b64str
from tonsdk.contract.wallet import WalletVersionEnum, Wallets
from TonTools.Providers.TonCenterClient import TonCenterClient
from tonpay import Sender, get_http_endpoint
class MnemonicSender(Sender):
def __init__(self, mnemonic: list): # list of words
self.mnemonic = mnemonic
async def send(self, value: int, address: Address, body: Cell, state_init: Cell = None):
endpoint = await get_http_endpoint({'network': "mainnet", 'protocol': "rest"})
client = TonCenterClient(base_url=endpoint)
mnemonics, _pub_k, _priv_k, wallet = Wallets.from_mnemonics(self.mnemonic, WalletVersionEnum('v4r2'), 0)
seqno = await client.get_wallet_seqno(wallet.address.to_string(True, True, True))
query = wallet.create_transfer_message(
address.to_string(True, True, True),
value,
seqno,
body,
state_init=state_init
)
boc = bytes_to_b64str(query["message"].to_boc(False))
await client.send_boc(boc)
Last updated