- Added transaction advanced search
- Added ability to partially refund transactions
- Added ability to manually retry past-due subscriptions
- Added new transaction error codes
- Allow merchant account to be specified when creating transactions
- Allow creating a transaction with a vault customer and new payment method
- Allow existing billing address to be updated when updating credit card
- Correctly handle xml with nil=true
- Updated success? on transaction responses to return false on declined transactions
- Search results now include Enumerable and will automatically paginate data
- Added credit_card[cardholder_name] to allowed transaction params and CreditCardDetails (thanks chrismcc[http://github.com/chrismcc])
- Fixed a bug with Customer::all
- Added constants for error codes
- Added methods to get both shallow and deep errors from a Braintree_ValidationErrorCollection
- Added the ability to make a credit card the default card for a customer
- Added constants for transaction statuses
- Updated Quick Start in README.md to show a workflow with error checking
- Added subscription search
- Provide access to associated subscriptions from CreditCard
- Switched from using Zend framework for HTTP requests to using curl extension
- Fixed a bug in Transparent Redirect when arg_separator.output is configured as & instead of &
- Increased http request timeout
- Fixed a bug where ForgedQueryString exception was being raised instead of DownForMaintenance
- Updated SSL CA files
- Added Braintree_Transaction::refund
- Added Braintree_Transaction::submitForSettlementNoValidate
- Fixed a bug in errors->onHtmlField when checking for errors on custom fields when there are none
- Added support for passing merchantAccountId for Transaction and Subscription
- Added recurring billing support
- Fixed bug with Braintree_Error_ErrorCollection.deepSize
- Added methods for accessing validation errors and params by html field name
- Initial release