code: def valid?
        return false if raw_payload.nil? || raw_payload.empty?
        return false if raw_authentication.nil? || raw_authentication.empty?
        return false unless json_valid?
  
        Authentication.valid?(raw_authentication, json_payload)
      end
docs: Wether or not this payment result can be considered valid.
   Authentication is checked, payload and authentication should be available
   and the decoded JSON should be valid JSON.
   When the result is valid, it is safe to assume no-one tampered with it
   and that it was sent by Bitkassa.