When giving users whose payments failed another chance to re-submit payment, should I create a new trade? Or just call charge the new payment method with the existing trade?

You can use the same trade ID and initiate the fund move through the API again for failed payments without issue. However, if you would like to cancel out the original trade and create a new one, you could do that as well.

You can use the same trade ID and initiate the fund move through the API again for failed payments without issue. However, if you would like to cancel out the original trade and create a new one, you could do that as well.