Installation

Magic interacts with the Tezos blockchain via Magic’s extension NPM package @magic-ext/taquito.
NOTEYou can skip straight to our kitchen sink example directly: Tezos Taquito Example
npm install --save @magic-ext/taquito

Initialization

JavaScript
import { Magic } from 'magic-sdk';
import { TaquitoExtension } from '@magic-ext/taquito';

const magic = new Magic('YOUR_API_KEY', {
  extensions: [
    new TaquitoExtension({
      rpcUrl: 'TEZOS_RPC_NODE_URL',
    }),
  ],
});

Common Methods

Send Transaction

Note that the Magic Taquito extension follows the method names and conventions by Taquito. To send a standard Tezos blockchain transaction, you can call the magic.taquito.createMagicSigner method to create a signer to inject to Tezos client.
JavaScript
import { Magic } from 'magic-sdk';
import { TaquitoExtension } from '@magic-ext/taquito';
import { TezosToolkit } from '@taquito/taquito';

const magic = new Magic('YOUR_API_KEY', {
  extensions: [
    new TaquitoExtension({
      rpcUrl: 'https://rpc.oxfordnet.teztnets.com',
    }),
  ],
});

const Tezos = new TezosToolkit('https://rpc.oxfordnet.teztnets.com');
const magicSigner = await magic.taquito.createMagicSigner();

Tezos.setProvider({ signer: magicSigner });

const op = await Tezos.wallet.transfer({ to: destinationAddress, amount: sendXTZAmount });

const result = await op.confirmation();

console.log('result', result)

Resources