Transaction Failed. Amount to be charged is zero. ECO_Get_Request OrderTotal is populated correctly.
About half the time, when a customer checks out, they go through the PayPal site where they log in, select payment method, etc. When they are redirected back to my PayPal processing page, sometimes the transaction fails, stating "The amount to be charged is zero" in the debug logs. I have set up email notification so whenever this error occurs it sends me an email with the PayPal transaction details, which I have included in the attached file.
As you can see in the attached file, the ECO_Get_Request populates the OrderTotal field correctly, however the ECO_Process_Request has the OrderTotal field set to 0.00. I noticed there are "!" followed by a newline in several places in the Request as well, however I'm not sure if this is part of this particular problem.
This seems to happen somewhat unpredictably on checkout. Occasionally customers will be able to check out successfully. I have created a debug product with a price of $0.01, and I can checkout seamlessly with this product, and occasionally a customer will checkout successfully with a real product, and it's never the same product that this happens on.