I recently tried to send a transaction on the local testnet running 'Beryllium Bullet' (v0.13.0.2-release) and got this error:

{"code": -18, "message": "Transaction would be too large.  try /transfer_split."}

JSON RPC call was:

08:49:57.379 [debug] Request URL: """
Request HEADERS: [{"content-type", "application/json"}]
Request BODY: "{\"jsonrpc\":\"2.0\",\"method\":\"transfer\",\"params\":{\"destinations\":[{\"address\":\"A1GaAstQMq4Pb6DFpJXCuD67kzMgkcUwWgSxruWkxkGGexomEohbrG3b2Fv7yQWkE6UJoGPtvJhi5bHb1CxX7oXAQQvQLHt\",\"amount\":1080655990637146}],\"ring_size\":1}}""

Ring size 1 was set because otherwise I'm getting "not enough outputs" error.

Why did that happen, are there any ways to proactively prevent that in the future and what is the best way around that?

  • What parameter values did you pass to transfer?
    – jtgrassie
    Jan 16, 2019 at 23:18
  • @jtgrassie I updated original post
    – lessless
    Jan 17, 2019 at 7:23

1 Answer 1


Given that you're attempting a transfer of over a 1080 XMR, you will likely be using a high number of outputs to fund the transaction internally, which is pushing up the transaction size. As the error message states, try transfer_split instead.

The ringsize parameter is redundant these days as it has to be 11 for the tx to be valid now. The code for the RPC method is adjusting the supplied ringsize, but in a funky way. I suggest just setting it to 11.

The documentation needs some love to keep it current.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.