diff --git a/CHANGELOG.md b/CHANGELOG.md index ca4d9b13..c9c11f4c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## Unreleased + +* Fix issue where validation errors from creating a plan were not surfaced (#223) + ## 4.5.0 * Add plan create/update/find API endpoint * Add support for `TransactionReview` webhook notification diff --git a/lib/braintree/plan_gateway.rb b/lib/braintree/plan_gateway.rb index 0b4d84ab..ee3f1e8a 100644 --- a/lib/braintree/plan_gateway.rb +++ b/lib/braintree/plan_gateway.rb @@ -106,10 +106,10 @@ def _do_create(path, params) # :nodoc: response = @config.http.post("#{@config.base_merchant_path}#{path}", params) if response[:plan] SuccessfulResult.new(:plan => Plan._new(@gateway, response[:plan])) - elsif response[:errors] - ErrorResult.new(@gateway, response[:errors]) + elsif response[:api_error_response] + ErrorResult.new(@gateway, response[:api_error_response]) else - raise UnexpectedError, "expected :plan or :errors" + raise UnexpectedError, "expected :plan or :api_error_response" end end end