We have a couple domains that can't renew through Enom API because they are premium but were registered manually at Enom, not through WHMCS and the Enom module. The error we're getting is
SuppliedPrice is invalid or missing
These domains are missing that data because they were not registered through WHMCS.
Enom has provided a retroactive way to check if the domain is premium or not. I guess it could be implemented into WHMCS to handle that situation. Here's Enom's message:
In this case, what you will have to do is run the PE_GETPREMIUMPRICING API command to get the price of the renewal of the premium domain name.
After storing that domain pricing, you will then have to run the "Extend" API command to renew the domain name - passing along the CustomerSuppliedPrice parameter equal to the price obtained from the PE_GETPREMIUMPRICING API
I do hope that helps - I'm not too sure how WHMCS is supplying API Calls to our system, but that is what is needed by our systems to process a premium domain name renewal.
You'll likely want to ensure the API calls submitted by WHMCS match the workflow I mentioned.