Im triyng to send a transaction through the relayer giving it the tx data, gas limit and the contract address but the transaction fails even though that the same transacion executes correctly if i send it in remix or hardhat.
We are using Moralis cloud function to build the tx data with the parameters nedeed, and send an API request to Stripe, then the same tx data its sended to the Defender webhook that is executed by the relayer.
succesful tx:
failed tx:
As it can be seen the data of the txs are the same. First we try with the relayer and later with remix and hardhat and the results are similar, with the last 2 the txs dont fail.
It seems the transaction reverted, so something might have gone wrong in the contract code and logic. Unfortunately the implementation contract has not been verified, I can only see the proxy, difficult to investigate from here, might you have a require that fails inside this method (like a OnlyOwner modifier)?
This is the function, the 3 requires should pass, the relayer has the role and the signature is valid. I know this because i try the same parameters but with a different account and the tx passes.