Skip to main content

Payment Transaction with overrided signer

Create and send a payment transaction to be signed by a specific account.

Preconditions#

  • User is already engaged and shared some account.

  • Signer to override should match with one of address shared by the user, otherwise user will be alert.

Interactive Example#

Invalid Address
Invalid Address
In order to run this example, you need to execute connect() method.
The following codes allow you to create and sent to MyAlgo Connect a payment transaction to be sign by the user. There are two alternatives to create it. Pick the one you prefere.
import algosdk from "algosdk";
import MyAlgoConnect from '@randlabs/myalgo-connect';

const algodClient = new algosdk.Algodv2("",'https://node.testnet.algoexplorerapi.io', '');
const params = await algodClient.getTransactionParams().do();

const txn = algosdk.makePaymentTxnWithSuggestedParamsFromObject({
    suggestedParams: {
        ...params,
    },
    from: sender,
    to: receiver, 
    amount: amount,
    note: note
});

const signOptions: SignTransactionOptions = {
    overrideSigner: overrideAccount
};

const myAlgoConnect = new MyAlgoConnect();
const signedTxn = await myAlgoConnect.signTransaction(txn.toByte(), signOptions);
import algosdk from "algosdk";
import MyAlgoConnect from '@randlabs/myalgo-connect';
 
const algodClient = new algosdk.Algodv2("",'https://node.testnet.algoexplorerapi.io', '');
const params = await algodClient.getTransactionParams().do();

const txn: any = {
    ...params,
    type: "pay",
    from: sender,
    to: receiver,
    amount: amount,
    note: note
};

const signOptions: SignTransactionOptions = {
    overrideSigner: overrideAccount
};

const myAlgoConnect = new MyAlgoConnect();
const signedTxn = await myAlgoConnect.signTransaction(txn, signOptions);