Send signed transaction

Hey there,
I wanna send a signedTransaction from a contract because I wanna create a marketplace.

const gasLimitHex = this.web3Js.utils.toHex(3000000);
        let gasPrice = await this.web3Js.eth.getGasPrice();
            this.nonce = await this.web3Js.eth.getTransactionCount(this.walletAddress);


        const transactionObject = {
            nonce: this.web3Js.utils.toHex(this.nonce),
            gasPrice: hexGasPrice,
            gasLimit: gasLimitHex,
            contractAddress: "0x20C05F85df725a3Fe62b2d7F3B0CF27b3a3BFE5c",
            from: this.walletAddress,
            functionName: "setApprovalForAll",
            abi: NFT_ABI,
            params: {
                operator: receiver,
                approved: true
            }
        };

        let hexObject = new ethereumjs.Tx(transactionObject);

Error:  
RPC Error: intrinsic gas too low 
Object { code: -32000, message: "intrinsic gas too low" }

Why am i getting that error ?

What is the chain?
What is this value?

sorry I forgot to provide it,

        let gasPrice = await this.web3Js.eth.getGasPrice();
        let hexGasPrice  = this.web3Js.utils.toHex(Math.floor(gasPrice * 4.3))

Ethereum chain

Can you paste the value that you get? Maybe in decimal also. You can also try with some hardcoded values to see if it works.

That is the gasPrice 41929053223
that is the gasLimit 21000.

any idea sir ?

I thought that it uses a huge gas limit. It will not work with that gas limit. That is the minimum gas limit that works only for native transactions.

hey, thank you for your reply. What gas limit should I enter then ?

Try with 500000. Initially it looked like you had 3000000.