- Fixed error handling in Lookup (by bmurzeau)
- Fixed usage with savon version 1.2
- Require version 1.2 of the savon gem from now on
- Added :raise_error option to throw errors instead of returning nil
- Fixed issue with current savon version & required more recent savon version
- Added support for company details and requester identifiers in successful responses (by lcx)
- Added Valvat::Lookup.last_error for debugging
- Fixed wrong regexp for Belgium numbers (by opsidao)
- Normalize all input on initialization (by SpoBo)
- Add Valvat::Utils.iso_country_to_vat_country (by Deb Bassett)
- Fixed localization strings (en/de)
- Moved locales folder to lib/valvat/locales
- ActiveModel validation: Failed validations with match_country now use error message with country from given attribute
- ActiveModel validation: Failed validations with match_country skip lookup and syntax checks
- ActiveModel validation: added match_country option to validate if iso country code of vat number matches another attribute.
- Valvat::Utils.normalize now removes spaces and special chars anywhere
- Using vies directly via soap/savon again; isvat.appspot.com is not really reliable.
- Added support for Valvat#exist? as an alias of Valvat#exists?
- Fixed blocker in valvat/lookup
- Rewrote Valvat module to a vat number class for convenience + internal use of Valvat instances
- I18n: Default error messages in german
- Fixed issue with country web service down and added spec
- Stubbed web service specs with fakeweb
- Added documentation for ActiveModel support
- ActiveModel validation: added optional lookup support
- ActiveModel validation: I18n support with country specific messages
- ActiveModel validation: I18n locales in english and german
- Fixed bug with wrong iso country code on greek vat number (EL != GR)
- Valvat::Util.split only returns countries from europe
- Basic support for ActiveModel validation
- Use REST-wrapper for accessing VIES web service; this removes dependency on savon and some lines of code. See http://isvat.appspot.com/