Prevent the function to crash when the response is unparsable

Background: it looks like SOAP::Lite sometimes (or always?) fails to escape
some entities (notably &). In this case the charging route crashes, because
$response->valueof('//SetExpressCheckoutResponse') just returns undef.

This patch basically prevent the charge action to complete and set the
redirection to the checkout, the same way as it would have failed for
other reasons.