shell bypass 403
## 5.5.0 * Add `scaExemption` to Transaction sale * Deprecate `deviceSessionId` and `fraudMerchantId` in `CreditCardGateway`, `CustomerGateway`, `PaymentMethodGateway`, and `TransactionGateway` classes * Add `installments` to Transaction sale * Add `count` to `installments` ## 5.4.0 * Add `AcquirerReferenceNumber` to `Transaction` * Add `billingAgreementId` to `PayPalDetails` * Deprecate `recurring` in Transaction sale * Deprecate `tag` in Dispute add text evidence ## 5.3.1 * Deprecate `masterpassCard` and `amexExpressCheckoutCard` payment methods * Deprecate `amexExpressCheckoutCardDetails` ## 5.3.0 * Add `RISK_THRESHOLD` to `GatewayRejectionReason` constants * Add `networkTransactionId` to `CreditCardVerification` * Add `processedWithNetworkToken` to `Transaction` * Add `isNetworkTokenized` to `CreditCard` * Add `productSku` to `Transaction` * Add `phoneNumber` and `shippingMethod` to `Address` * Add `customerDeviceId`, `customerLocationZip`, and `customerTenure` to `RiskData` * Add error codes * `TRANSACTION_PRODUCT_SKU_IS_INVALID` * `TRANSACTION_SHIPPING_METHOD_IS_INVALID` * `TRANSACTION_SHIPPING_PHONE_NUMBER_IS_INVALID` * `TRANSACTION_BILLING_PHONE_NUMBER_IS_INVALID` * `RISK_DATA_CUSTOMER_BROWSER_IS_TOO_LONG` * `RISK_DATA_CUSTOMER_DEVICE_ID_IS_TOO_LONG` * `RISK_DATA_CUSTOMER_LOCATION_ZIP_INVALID_CHARACTERS` * `RISK_DATA_CUSTOMER_LOCATION_ZIP_IS_INVALID` * `RISK_DATA_CUSTOMER_LOCATION_ZIP_IS_TOO_LONG` * `RISK_DATA_CUSTOMER_TENURE_IS_TOO_LONG` * `RISK_DATA_CUSTOMER_TENURE_IS_INVALID` ## 5.2.0 * Add `retrieval_reference_number` to `Transaction` * Fix class alias issue where Exceptions could not be thrown for missing libraries or older PHP versions. * Fix issue where `proxyHost`, `proxyPort`, `proxyType`, `proxyUser`, `proxyPassword`, and `sslVersion` were not being set on Gateway or Configuration objects. ## 5.1.0 * Add `threeDSecurePassThru` parameters to `Customer.create`, `PaymentMethod.create`, `CreditCard.create`, `Customer.update`, `PaymentMethod.update` and `CreditCard.update` * Add `recurringCustomerConsent` and `recurringMaxAmount` to `authenticationInsightOptions` for `PaymentMethodNonce.create` * Add `DOCUMENT_UPLOAD_FILE_IS_EMPTY` error code * phpDocs fixes (thanks @pupitooo) ## 5.0.0 * Add `DISPUTE_ACCEPTED`, `DISPUTE_DISPUTED`, and `DISPUTE_EXPIRED` webhook constants * Breaking Changes: * Upgrade API version to retrieve declined refund transactions * Throw `RequestTimeout` instead of `Timeout` for transaction search * Drop PSR-0 Support and remove class aliases * Remove EuropeBankAccount and IbanBankAccount modules * Remove deprecated SEPA error codes * Remove `paypalVaultWithoutUpgrade` * Invalid transaction IDs are validated by the gateway and not the SDK ## 4.8.0 * Add `Authentication Insight` to payment method nonce create * Add `threeDSecureAuthenticationId` support to transaction sale * Add ThreeDSecure test payment method nonces * Add test `AuthenticationId`s ## 4.7.0 * Add `RefundAuthHardDeclined` and `RefundAuthSoftDeclined` to validation errors * Add level 2 processing options `purchaseOrderNumber`, `taxAmount`, and `taxExempt` to Transaction submit for settlement * Add level 3 processing options `discountAmount`, `shippingAmount`, `shipsFromPostalCode`, and `lineItems` to Transaction submit for settlement ## 4.6.0 * Add `isNetworkTokenized` to `AndroidPayCard` and `AndroidPayCardDetails` * Add GraphQL ID to `CreditCardVerification`, `Customer`, `Dispute`, and `Transaction` * Add support for PHP 7.4 (#262 thanks @slt) * Add `threeDSecurePassThru` params to PaymentMethod update ## 4.5.0 * Add `PROCESSOR_DOES_NOT_SUPPORT_MOTO_FOR_CARD_TYPE` to validation errors * Make errors JSON serializable (#256 thanks @sebdesign) ## 4.4.0 * Add `AMOUNT_NOT_SUPPORTED_BY_PROCESSOR` to validation errors * Forward `forwardedComments` to `processorComments` ## 4.3.0 * Add `PayPalHereDetails` to transactions * Add `network_response_code` and `network_response_text` to `Transaction` and `CreditCardVerification` * Add `xid`, `cavv`, `eciFlag`, `dsTransactionId`, and `threeDSecureVersion` to `ThreeDSecureInfo` * Add `threeDSecureInfo` to `CreditCardVerification` * Add `GraphQLClient` to `BraintreeGateway` class ## 4.2.0 * Add `captureId` to `LocalPaymentDetails` * Add `debugId` to `LocalPaymentDetails` * Add `refundId` to `LocalPaymentDetails` * Add `transactionFeeAmount` to `LocalPaymentDetails` * Add `transactionFeeCurrencyIsoCode` to `LocalPaymentDetails` * Add `refundFromTransactionFeeAmount` to `LocalPaymentDetails` * Add `refundFromTransactionFeeCurrencyIsoCode` to `LocalPaymentDetails` * Add `threeDSecureVersion`, `authenticationResponse`, `directoryResponse`, `cavvAlgorithm` and `dsTransactionId` to 3DS pass thru fields * Add `payerInfo` to `PaymentMethodNonce` details * Add `roomTax` field to Transaction sale * Add `noShow` field to Transaction sale * Add `advancedDeposit` field to Transaction sale * Add `fireSafe` field to Transaction sale * Add `propertyPhone` field to Transaction sale * Add `additionalCharges` field to Transaction sale * Add `PostalCodeIsRequiredForCardBrandAndProcessor` to validation errors ## 4.1.0 * Add `revokedAt` field to `PayPalAccount` * Add support for `PAYMENT_METHOD_REVOKED_BY_CUSTOMER` webhook * Add `payment_method_nonce` field to `LocalPaymentCompleted` webhook * Add `transaction` field to `LocalPaymentCompleted` webhook * Add `localPaymentDetail` to transactions * Add `TOKEN_ISSUANCE` gatewayRejectionReason enum to `Transaction` ## 4.0.0 * Add support for PHP 7 (Thanks to @briandotdev) * Require PHP 7.2 or higher * Remove support for HHVM and PHP 5 * Update to PHPUnit 7 * Remove deprecated `GRANTED_PAYMENT_INSTRUMENT_UPDATE` * Remove deprecated Coinbase payment method * Remove deprecated iDEAL payment method * Remove deprecated `MerchantAccountGateway` creation with `applicantDetails`. Please use `individual`, `business`, and `funding`. * When a `Customer` is created, the `customFields` property is always an array rather than potentially `null`. * Remove Transparent Redirect * Remove `riskData`, `applePay`, `applePayCard`, `threeDSecure`, and `venmo.profileId` snakecase attributes * HTTPS requests throw an `SSLCertificate` exception when related to SSL, otherwise a `Connection` exception is thrown. * Rename `DownForMaintence` Exception to `ServiceUnavailable`. Throw `Timeout` exception for transaction search errors instead of `DownForMaintenance`. * Add `RequestTimeout` and `GatewayTimeout` exceptions. * Add `revokedAt` field to `PayPalAccount` * Add support for `PAYMENT_METHOD_REVOKED_BY_CUSTOMER` webhook ## 3.40.0 * Deprecate `GRANTED_PAYMENT_INSTRUMENT_UPDATE` and add `GRANTOR_UPDATED_GRANTED_PAYMENT_METHOD` and `RECIPIENT_UPDATED_GRANTED_PAYMENT_METHOD` * Add `accountType` field to `TransactionGateway`, `CreditCardGateway`, `PaymentMethodGateway`, and `CreditCardVerification`. * Add Hiper and Hipercard test numbers. * Add `refundFromTransactionFeeAmount` field to `PayPalDetails` * Add `refundFromTransactionFeeCurrencyIsoCode` field to `PayPalDetails` ## 3.39.0 * Add `bin` field to `paymentMethodNonceDetails` * Add Error indicating pdf uploads too long for dispute evidence. * Add `GrantedPaymentMethodRevoked` webhook response objects ## 3.38.0 * Add `fraudServiceProvider` field in `riskData` * Fix issue where merchant reporting calls would throw an exception in PHP 7 (#236) ## 3.37.0 * Add `processorResponseType` to `Transaction`, `AuthorizationAdjustment`, and `CreditCardVerification`. * Add `authorizationExpiresAt` to `Transaction` * Add support for additional PayPal options when vaulting a PayPal Order during customer update * Allow PayPal payment ID and payer ID to be passed during transaction create * Add `travel_flight` support to industry-specific data ## 3.36.0 * Fix dispute results in transactions not showing the correct status sometimes * Add `externalVault` option to transaction sale * Add `LocalPaymentCompleted` webhook ## 3.35.0 * Add subscription charged unsuccessfully sample webhook to webhook testing gateway * Add `processor_response_code` and `processor_response_text` to authorization adjustments subfield in transaction response. * Fix issue where result objects could not be printed with `echo` (thanks @cmeon) * Add Samsung Pay support ## 3.34.0 * Allow payee ID to be passed in options params for transaction create * Add `merchant_id` to `ConnectedMerchantStatusTransitioned` and `ConnectedMerchantPayPalStatusChanged` Auth webhooks * Fix webhook testing sample xml for dispute webhooks to include `amount-won` and `amount-disputed` (closes #225) ## 3.33.0 * Fix WebhookTestingGateway to use local configuration * Add Disbursement type field and methods ## 3.32.0 * Add support for US Bank Account verifications API ## 3.31.0 * Fix issue where webhook verification would fail due to missing global public key configuration value * Fix issue where webhook testing did not work on instantiated gateway * Add support for VCR compelling evidence dispute representment ## 3.30.0 * Add `oauthAccessRevocation` to `WebhookNotification`s * Add support for `profileId` in Transaction#create options for VenmoAccounts * Add support for dispute search by `customerId`, `disbursementDate`, and `effectiveDate` * Make `CustomerGateway::find` backward compatible * Remove `sepaMandateType` and `sepaMandateAcceptanceLocation` params from `ClientTokenGateway` ## 3.29.0 * Add support for `association_filter_id` in `Customer#find` * Add support for setting `timeout` and `acceptGzipEncoding` values on construction of `Configuration` instances ## 3.28.0 * Add support for Level 3 summary parameters: `shippingAmount`, `discountAmount`, and `shipsFromPostalCode` * Add support for `tax_amount` field on transaction `line_items` * Add `sourceMerchantId` property to `WebhookNotification`s if present * Deprecate `TRANSACTION_LINE_ITEM_DISCOUNT_AMOUNT_MUST_BE_GREATER_THAN_ZERO` error in favor of `TRANSACTION_LINE_ITEM_DISCOUNT_AMOUNT_CANNOT_BE_NEGATIVE`. * Deprecate `TRANSACTION_LINE_ITEM_UNIT_TAX_AMOUNT_MUST_BE_GREATER_THAN_ZERO` error in favor of `TRANSACTION_LINE_ITEM_UNIT_TAX_AMOUNT_CANNOT_BE_NEGATIVE`. * Deprecate `Braintree\Transaction\LineItem` in favor of `Braintree\TransactionLineItem`. * Add `findAll` static method to `TransactionLineItem` class * Add support for `profile_id` in Transaction#create options for VenmoAccounts ## 3.27.0 * Add support for Level 3 summary parameters: `shippingAmount`, `discountAmount`, and `shipsFromPostalCode` * Add support for transaction line items * Add support for tagged evidence in `DisputeGateway::addTextEvidence` (Beta release) * Update https certificate bundle ## 3.26.1 * Deprecate `OAuthGateway::computeSignature` * Fix spec to expect PayPal transactions to move to settling rather than settled * Fix AchMandate acceptedAt attribute parsing ## 3.26.0 * Add support for upgrading a PayPal future payment refresh token to a billing agreement * Address deprecation warnings for create_function with PHP 7 (#193, thanks @chrisdeeming) * Add `cardHolderName` to `CreditCardDetails` (#201, thanks @Samistine) * Add GrantedPaymentInstrumentUpdate webhook support * Allow paypal => options params to be passed in camel case * Add ability to create a transaction from a shared nonce * Implement JsonSerializable on Braintree Objects for easier logging (#200, thanks @hfmikep) * Fix spec to expect PayPal transaction to settle immediately after successful capture * Add `options` -> `paypal` -> `shipping` for creating & updating customers as well as creating payment methods * Add `options` -> `paypal` -> `description` for creating and updating subscriptions * Add `binData` to `PaymentMethodNonce` * Add `bin` to `ApplePayCard` * Add `deviceDataCaptured` field in `riskData` ## 3.25.0 * Add `submitForSettlement` option to `Subscription::retryCharge` * Support `eci_indicator` for Transaction sale with raw Apple Pay parameters * Add `accept` method for the Dispute API * Add `addTextEvidence` method for the Dispute API * Add `addFileEvidence` method for the Dispute API * Add `finalize` method for the Dispute API * Add `find` method for the Dispute API * Add `removeEvidence` method for the Dispute API * Add `search` method for the Dispute API * Add DocumentUpload ## 3.24.0 * Add AuthorizationAdjustment class and `authorizationAdjustments` to Transaction * Add iDEAL webhook support * Add `IDEAL_PAYMENT` to `PaymentInstrumentType` * Create Braintree class to be PSR compliant * Coinbase is no longer a supported payment method. `PAYMENT_METHOD_NO_LONGER_SUPPORTED` will be returned for Coinbase operations. * Add `ApplePay` for web domain registration. * Add facilitated details to Transaction if present * Update link to transaction api documentation (thanks @qoheleth-tech!). * Fix TransactionGateway return types (thanks @jjok!). * Update return type for client token (thanks @jlaswell!). ## 3.23.1 * Fix token generator return type - thanks @jjok! * Improve error reporting for connection issues - thanks @montymxb! * Add support for additional PayPal options when vaulting a PayPal Order ## 3.23.0 * Add Visa Checkout support * Add ConnectedMerchantStatusTransitioned and ConnectedMerchantPayPalStatusChanged Auth webhooks * Add new properties to `CreditCardVerification` and `Customer` * Add SDK support for skip AVS and skip CVV ## 3.22.0 * Add option to disable Accept-Encoding: gzip header for Google App Engine * Fix a bug where `merchantAccount->all` would attempt to fetch too many pages of merchant accounts ## 3.21.1 * Add back in `options->three_d_secure` to transaction params that was accidentally removed in v3.14.0 ## 3.21.0 * Allow optional configuration of SSL version * Replace `var_dump` with `print_r`. Thanks, @mnlg * Add functionality to list all merchant accounts for a merchant with `merchantAccount->all` * Stop sending account_description field from us bank accounts ## 3.20.0 * Add option `skip_advanced_fraud_check` for transaction flows ## 3.19.0 * Add multi-currency updates to merchants onboarded through Braintree Auth * Raise an exception if fetching pages of results times out during a transaction search ## 3.18.0 * Fix `UsBankAccount` support for `Customer`s * Update `Grant` api to support options hash ## 3.17.0 * Add 'UsBankAccount' payment method ## 3.16.0 * Add authenticated proxy functionality * Add constant for Venmo Account payment instrument type * Add validation error for verifications with submerchants ## 3.15.0 * Add 'default_payment_method' option for Customer ## 3.14.0 **Note: This version introduced an unintentional breaking change where the `options->three_d_secure` transaction parameter was changed to `options->threeDSecure`. Starting in v3.21.1, both case conventions are supported for backwards compatibility.** * Add OrderId to refund * Add 3DS Pass thru support * Expose IDs in resource collections * Add leading slash to the namespace. Thanks, @bocharsky-bw * Stop modifying DateTime parameters during XML generation. Thanks, @jodarove ## 3.13.0 * Add method of revoking OAuth access tokens. ## 3.12.0 * Add Transaction `update_details` * Support for Too Many Requests response codes * Add ability to count errors in ErrorCollection object. Thanks, @bocharsky-bw * Improve Type Hinting ## 3.11.0 * Remove final from classes. Thanks, @ibrahimlawal! * Add currency to Transaction search ## 3.10.0 * Add timeout attribute * Add start-date and end-date to SUBSCRIPTION_CHARGED_SUCCESSFULLY test webhook response ## 3.9.0 * Add AccountUpdaterDailyReport webhook parsing ## 3.8.0 * Add payment method revoke * Add support for options in `submit_for_settlement` transaction flows * Add verification create API * Update https certificate bundle ## 3.7.0 * Add VenmoAccount * Allow order_id and descriptor to be passed in for Transaction submit_for_settlement * Add facilitator details onto transactions * Add check webhook constant ## 3.6.1 * Fix PSR-0 style namespacing when using Symfony ## 3.6.0 * Add support for proxy servers * Add PSR-4 namespacing support * Add support for AMEX Express Checkout * Add support for new fields in dispute webhooks (`dateWon`, `dateOpened`, `kind`) * Add transaction data to sucessful subscription webhook ## 3.5.0 * Add support for raw ApplePay params on Transaction create ## 3.4.0 * Add sourceDescription method to Android Pay and Apple Pay payment methods * Add new Android Pay test nonces * Add billing agreement ID to PayPal Account * Support amex rewards transactions ## 3.3.0 * Add new test payment method nonces * Allow passing description on PayPal transactions * Add methods to change transaction settlement status in sandbox * Fix issue where customer with an id of 0 could not be found * Add Europe Bank Account functionality ## 3.2.0 * Add additional search criteria ## 3.1.0 * Add support for HHVM * Validate that configuration is valid before verifying webhooks * Make OAuth methods conform more to existing API * Expose customer paymentMethods as an attribute ## 3.0.1 * Add support for Android Pay ## 3.0.0 * Deprecate PHP 5.2 and 5.3 * Validate webhook challenge payload * Bugfix for calling `__toString()` on objects that contain a `\DateTime` ## 2.40.0 * Add missing criteria to credit card verification search * Bugfix for autoloading files with Composer ## 2.39.0 * Add oauth functionality * Add 3DS info to the server side ## 2.38.0 * Update payment instrument types and test nonces * Add missing valid params to PaymentMethodGateway ## 2.37.0 * Add 3D Secure transaction fields * Add ability to create nonce from vaulted payment methods ## 2.36.0 * Surface Apple Pay payment instrument name in responses * Support Coinbase payment instruments ## 2.35.2 * Fix E_STRICT errors * Expose subscription status details ## 2.35.1 * Bugfix for auto loading files ## 2.35.0 * Allow PayPal fields in transaction.options.paypal * Add error code constants * Internal refactoring ## 2.34.0 * Add risk_data to Transaction and Verification with Kount decision and id * Add verification_amount an option when creating a credit card * Add TravelCruise industry type to Transaction * Add room_rate to Lodging industry type * Add CreditCard#verification as the latest verification on that credit card * Add ApplePay support to all endpoints that may return ApplePayCard objects * Add prefix to sample Webhook to simulate webhook query params ## 2.33.0 * Allow descriptor to be passed in Funding Details options params for Merchant Account create and update. ## 2.32.0 * Add additionalProcessorResponse to Transaction ## 2.31.1 * Allow payee_email to be passed in options params for Transaction create ## 2.31.0 * Added paypal specific fields to transaction calls * Added SettlementPending, SettlementDeclined transaction statuses ## 2.30.0 * Add descriptor url support ## 2.29.0 * Allow credit card verification options to be passed outside of the nonce for PaymentMethod.create * Allow billing_address parameters and billing_address_id to be passed outside of the nonce for PaymentMethod.create * Add Subscriptions to paypal accounts * Add PaymentMethod.update * Add fail_on_duplicate_payment_method option to PaymentMethod.create ## 2.28.0 * Adds support for v.zero SDKs. ## 2.27.2 * Make webhook parsing more robust with newlines * Add messages to InvalidSignature exceptions ## 2.27.1 * Updated secureCompare to correctly compare strings in consistent time * Add better error messages around webhook verification ## 2.27.0 * Include Dispute information on Transaction * Search for Transactions disputed on a certain date ## 2.26.0 * Disbursement Webhooks ## 2.25.1 * Fix factories on AddOn and Discount (thanks [stewe](https://github.com/stewe)) * Allow billingAddressId on transaction create ## 2.25.0 * Merchant account find API ## 2.24.0 * Merchant account update API * Merchant account create API v2 ## 2.23.1 * Update configuration URLs ## 2.23.0 * Official Partnership support ## 2.22.2 * Add Partner Merchant Declined webhook * use preg_callback_replace instead of preg_replace (thanks [jonthornton](https://github.com/jonthornton)!) ## 2.22.1 * Adds missing test contstant to library namespace ## 2.22.0 * Adds holdInEscrow method * Add error codes for verification not supported error * Add companyName and taxId to merchant account create * Adds cancelRelease method * Adds releaseFromEscrow functionality * Adds phone to merchant account signature. * Adds merchant account phone error code. * Fix casing issues with Braintree\_Http and Braintree\_Util references (thanks [steven-hadfield](https://github.com/steven-hadfield)!) * Fixed transaction initialization arguments to be optional (thanks [karolsojko](https://github.com/karolsojko)!) ## 2.21.0 * Enable device data. ## 2.20.0 * Fixed getting custom fields with valueForHtmlField. [Thanks to Miguel Manso for the fix.](https://github.com/mumia) * Adds disbursement details to transactions. * Adds image url to transactions. ## 2.19.0 * Adds channel field to transactions. ## 2.18.0 * Adds country of issuance and issuing bank bin database fields ## 2.17.0 * Adds verification search ## 2.16.0 * Additional card information, such as prepaid, debit, commercial, Durbin regulated, healthcare, and payroll, are returned on credit card responses * Allows transactions to be specified as recurring ## 2.15.0 * Adds prepaid field to credit cards (possible values include Yes, No, Unknown) ## 2.14.1 * Adds composer support (thanks [till](https://github.com/till)) * Fixes erroneous version number * Braintree_Plan::all() returns empty array if no plans exist ## 2.14.0 * Adds webhook gateways for parsing, verifying, and testing notifications ## 2.13.0 * Adds search for duplicate credit cards given a payment method token * Adds flag to fail saving credit card to vault if card is duplicate ## 2.12.5 * Exposes plan_id on transactions ## 2.12.4 * Added error code for invalid purchase order number ## 2.12.3 * Fixed problematic case in ResourceCollection when no results are returned from a search. ## 2.12.2 * Fixed customer search, which returned customers when no customers matched search criteria ## 2.12.1 * Added new error message for merchant accounts that do not support refunds ## 2.12.0 * Added ability to retrieve all Plans, AddOns, and Discounts * Added Transaction cloning ## 2.11.0 * Added Braintree_SettlementBatchSummary ## 2.10.1 * Wrap dependency requirement in a function, to prevent pollution of the global namespace ## 2.10.0 * Added subscriptionDetails to Transaction * Added flag to store in vault only when a transaction is successful * Added new error code ## 2.9.0 * Added a new transaction state, AUTHORIZATION_EXPIRED. * Enabled searching by authorizationExpiredAt. ## 2.8.0 * Added next_billing_date and transaction_id to subscription search * Added address_country_name to customer search * Added new error codes ## 2.7.0 * Added Customer search * Added dynamic descriptors to Subscriptions and Transactions * Added level 2 fields to Transactions: * tax_amount * tax_exempt * purchase_order_number ## 2.6.1 * Added billingAddressId to allowed parameters for credit cards create and update * Allow searching on subscriptions that are currently in a trial period using inTrialPeriod ## 2.6.0 * Added ability to perform multiple partial refunds on Braintree_Transactions * Allow passing expirationMonth and expirationYear separately when creating Braintree_Transactions * Added revertSubscriptionOnProrationFailure flag to Braintree_Subscription update that specifies how a Subscription should react to a failed proration charge * Deprecated Braintree_Subscription nextBillAmount in favor of nextBillingPeriodAmount * Deprecated Braintree_Transaction refundId in favor of refundIds * Added new fields to Braintree_Subscription: * balance * paidThroughDate * nextBillingPeriodAmount ## 2.5.0 * Added Braintree_AddOns/Braintree_Discounts * Enhanced Braintree_Subscription search * Enhanced Braintree_Transaction search * Added constants for Braintree_Result_CreditCardVerification statuses * Added EXPIRED and PENDING statuses to Braintree_Subscription * Allowed prorateCharges to be specified on Braintree_Subscription update * Added Braintree_AddOn/Braintree_Discount details to Braintree_Transactions that were created from a Braintree_Subscription * Removed 13 digit Visa Sandbox Credit Card number and replaced it with a 16 digit Visa * Added new fields to Braintree_Subscription: * billingDayOfMonth * daysPastDue * firstBillingDate * neverExpires * numberOfBillingCycles ## 2.4.0 * Added ability to specify country using countryName, countryCodeAlpha2, countryCodeAlpha3, or countryCodeNumeric (see [ISO_3166-1](https://en.wikipedia.org/wiki/ISO_3166-1)) * Added gatewayRejectionReason to Braintree_Transaction and Braintree_Verification * Added unified message to result objects ## 2.3.0 * Added unified Braintree_TransparentRedirect url and confirm methods and deprecated old methods * Added functions to Braintree_CreditCard to allow searching on expiring and expired credit cards * Allow card verification against a specified merchant account * Added ability to update a customer, credit card, and billing address in one request * Allow updating the paymentMethodToken on a subscription ## 2.2.0 * Prevent race condition when pulling back collection results -- search results represent the state of the data at the time the query was run * Rename ResourceCollection's approximate_size to maximum_size because items that no longer match the query will not be returned in the result set * Correctly handle HTTP error 426 (Upgrade Required) -- the error code is returned when your client library version is no long compatible with the gateway * Add the ability to specify merchant_account_id when verifying credit cards * Add subscription_id to transactions created from subscriptions ## 2.1.0 * 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 ## 2.0.0 * 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](https://github.com/chrismcc)) * Fixed a bug with Customer::all * Added constants for error codes ## 1.2.1 * 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 ## 1.2.0 * 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 ## 1.1.1 * 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 ## 1.1.0 * Added recurring billing support ## 1.0.1 * Fixed bug with Braintree_Error_ErrorCollection.deepSize * Added methods for accessing validation errors and params by html field name ## 1.0.0 * Initial release