BCH transaction failed: Missing inputs 25

834 Views Asked by At

I am using Bitcoin Cash JS to create a transaction, and my code is as follows:

let BITBOXCli = require('bitbox-cli/lib/bitbox-cli').default;
const explorers = require('bitcore-explorers')
const insight = new explorers.Insight('https://test-bch-insight.bitpay.com')
let BITBOX = new BITBOXCli();
let txb = new BITBOX.TransactionBuilder('testnet');
var To = 'mkiuwbSQQVxMvvbBcYEKUdZgJfURhu3hrW'
var from = 'mvStb7hPtDCL8dmyifPGcYTuToVzf7ajTb';
var bch = require('bitcoincashjs')
var bchLib = require('@owstack/bch-lib')
const buf = new Buffer('b27ab45d3e3d157e8b95f800347974f9991cf13ceb814e1992f40c5e4e6d5253', 'hex')
const privateKey = new bch.PrivateKey(buf, bch.Networks.testnet)
const address = privateKey.toAddress('testnet')
insight.getUnspentUtxos(address.toString(), function (error, utxos) {
  if (error) {
    console.error(error)
    return
  }
  console.log(utxos)

  const utxo = {
    txid: utxos[0].txid,
    outputIndex: utxos[0].vout,
    script: utxos[0].scriptPubKey,
    satoshis: utxos[0].satoshis
  }
  const transaction = new bch.Transaction()
    .from(utxo)
    .to(To, 50000)
    .sign(0, privateKey)
  console.log(transaction.toString())
});

Now when I am running this code, I am able to get the raw transaction hash but I am not able to broadcast transaction and message is as follows:

Missing Inputs Error:-25

Any idea about this error? Or is there any other way to create BCH transaction?

1

There are 1 best solutions below

0
On BEST ANSWER

It looks like you're trying to create a simple transaction to send BCH from one address to another. There is now an example for this exact use case in the BITBOX SDK repository:

https://github.com/Bitcoin-com/bitbox-javascript-sdk/blob/master/examples/applications/wallet/send-bch/send-bch.js

There are also other examples there like creating a wallet checking a balance:

https://github.com/Bitcoin-com/bitbox-javascript-sdk/tree/master/examples/applications/wallet

There are even more examples in the Wormhole SDK. (Wormhole SDK is a superset of BITBOX, so it can do anything BITBOX can do):

https://github.com/Bitcoin-com/wormhole-sdk/tree/master/examples