- Add prepaid_reloadable from bin data in credit card responses
- Add support for
PayPalPaymentResourcerequests
- Add support for creating and updating PayPal customer session
- Add support for getting PayPal customer recommendations
- Bug fix for
failOnDuplicatePaymentMethodForCustomerinPaymentMethod - Add recipient/contact info:
recipient_emailandrecipient_phonetoTransaction
- Add
fail_on_duplicate_payment_method_for_customeroption toClientTokenPaymentMethodCreditCard
- Add
blikAliasesto LocalPaymentCompleted webhook and LocalPaymentDetails - Deprecate
SamsungPayCard - Updated expiring pinned vendor SSL certificates
- Add
payerName,bicandiban_last_charsfor LocalPaymentCompleted webhook - Add
editPaypalVaultIdtoPayPalAccount - Add
aniFirstNameResponseCodeandaniLastNameResponseCodetoCreditCardVerification - Add
shippingTaxAmounttoTransactionandTransactionRequest
- Add attributes to
ThreeDSecureLookupRequestmerchantInitiatedRequestTypepriorAuthenticationIdmerchantOnRecordNamepriorAuthenticationDetails
- Add
foreignRetailertoTransactionandTransactionRequest - Add
internationalPhonetoAddressandCustomer - Add
fundingSourceDescriptiontoPayPalAccount - Add missing
AndroidPayCarderror code - Add
REFUND_FAILEDto WebhookNotification Kind - Add
finalCapturetoTransactionRequest - Deprecate
getPayPalTrackingIdin favor ofgetPayPalTrackerIdin PackageDetails
- Add domains parameter support to
ClientTokenRequest - Add
isNetworkTokenizedtoPaymentMethodNonceDetails
- Add
SepaDirectDebitAccounttoPaymentMethodParser - Add
UNDER_REVIEWDispute Status - Add
DISPUTE_UNDER_REVIEWWebhookNotification Kind
- Add
packageTrackingmethod toTransactionGatewayto make request to add tracking information to transactions - Add
PackageDetailsandPackageTrackingRequestclasses - Add
process_debit_as_credittoTransactionOptionsCreditCardRequest - Add
upcCode,upcType, andimageUrltoTransactionLineItemandTransactionLineItemRequest
- Add
PICKUP_IN_STOREtoShippingMethodenum - Add
phoneNumbertoCreditCardAddressRequestandPaymentMethodAddressRequest
- Deprecate
threeDSecureTokenin favor ofthreeDSecureAuthenticationId - Add
externalNetworkTokenizationEnrollmentIdtoPaymentMethodGrantRequest - Deprecate
isVenmoSdk,venmoSdkSession, andvenmoSdkPaymentMethodCode
- Add methods to
UsBankAccountgetBusinessNamegetCreatedAtgetDescriptiongetFirstNamegetLastNamegetOwnerIdgetOwnershipTypegetPlaidVerifiedAtgetUpdatedAtisVerifiable
- Add methods to
UsBankAccountDetailsgetBusinessNamegetFirstNamegetGlobalIdgetLastNamegetOwnershipTypeisVerified
- Add
dateOfBirthandcountryCodetoTransactionIndustryDataRequest - Add
SubscriptionBillingSkippedwebhook notification - Add
billingAddressandshippingAddresstoVenmoProfileData - Add
MetaCheckoutCard,MetaCheckoutTokenpayment methods - Add
MetaCheckoutCardDetails,MetaCheckoutTokenDetailstoTransaction - Add
MAESTROtoDebitNetworkenum - Add
implicitlyVaultedPaymentMethodTokenandimplicitlyVaultedPaymentMethodGlobalIdtoLocalPaymentDetails
- Add validation error codes:
FAILED_AUTH_ADJUSTMENT_FOR_AMOUNT_SUBMITTED_HARD_DECLINEFAILED_AUTH_ADJUSTMENT_FOR_AMOUNT_SUBMITTED_ALLOW_RETRY
- Add
arrivalDate,ticketIssuerAddresstoTransactionIndustryRequest - Deprecate
evidenceSubmittableinDispute
- Add
evidenceSubmittabletoDispute - Add
merchantTokenIdentifier,sourceCardLast4toApplePayCardandApplePayDetails - Add
threeDSecureAuthenticationIdtoCustomerRequestandPaymentMethodRequest - Add
processingOverridestoTransactionOptionsRequest - Add the following fields to
processingOverrides- customerEmail
- customerFirstName
- customerLastName
- customerTaxIdentifier
- Allow vaulting of Android Pay network tokens via Customer.create/update
- Add
AndroidPayNetworkTokenRequest - Add
AndroidPayNetworkTokenAddressRequest - Add
AndroidPayNetworkTokenOptionsRequest
- Add
- Deprecate
cryptogramandeciIndicatorinAndroidPayCardRequest - Add
cardAddChallengeRequestedtoThreeDSecureLookupRequest - Add
retriedTransactionIdandretryIdsto transaction object
- Add
debitNetworkfield toTransactionandTransactionSearchRequest - Add
DebitNetworkenum toCreditCard - Fix typos in
WebhookTestingGateway - Add
duplicateOfTransactionIdtoTransaction - Create
ApplePayCardAddressRequest,ApplePayCardOptionsRequest, andApplePayCardRequest, and addApplePayCardRequesttoCustomerRequest - Add
billingAddresstoApplePayCard - Create
AndroidPayCardAddressRequest,AndroidPayCardOptionsRequest, andAndroidPayCardRequest, and addAndroidPayCardRequesttoCustomerRequest - Add
billingAddresstoAndroidPayCard - Add
merchantAdviceCodeandmerchantAdviceCodeTextfields toTransaction
- Add subscriptions to
SepaDirectDebitAccount - Add device data fields to
ThreeDSecureLookupRequestbrowserJavaEnabledbrowserAcceptHeaderbrowserLanguagebrowserColorDepthbrowserScreenHeightbrowserScreenWidthbrowserTimeZoneuserAgentipAddressdeviceChannelbrowserJavascriptEnabled
- Add
intendedTransactionSourcetoCreditCardVerificationRequest - Add
paymentMethodNoncetoCreditCardVerificationRequest - Add
threeDSecureAuthenticationIDtoCreditCardVerificationRequest - Add
threeDSecureTokentoCreditCardVerificationRequest - Add
verificationThreeDSecurePassThruRequesttoCreditCardVerificationRequest
- Add
SEPADirectDebitAccountpayment method - Add
SEPADirectDebitAccountDetailsandSepaDirectDebitReturnCodeto transaction object - Add
SEPA_DIRECT_DEBIT_ACCOUNTto payment instrument type - Add
PaymentMethodNonceDetailsSepaDirectDebitto payment method nonce details object - Add SEPA Direct Debit specific error codes
- Add SEPA Direct Debit array to customer object
- Add
getExpirationMonthandgetExpirationYeartoPaymentMethodNonceDetails - Add
ExcessiveRetrytoGatewayRejectionReason - Add
preDisputeProgramtoDisputeandDisputeSearchRequest - Add
AUTO_ACCEPTEDDispute Status - Add
DISPUTE_AUTO_ACCEPTEDWebhookNotification Kind - Add
requestedExemptionTypetoThreeDSecureLookupRequest
- Deprecate
chargebackProtectionLeveland addprotectionLeveltoDisputeandDisputeSearchRequest - Add
networkTokenizationAttributestoTransactionCreditCardRequest - Add
NetworkTokenizationAttributesRequestclass - Add validation error code
CREDIT_CARD_NETWORK_TOKENIZATION_ATTRIBUTE_CRYPTOGRAM_IS_REQUIRED - Add 'updateCustomFields' to
Transaction
- Add
ExternalVaultCardRequestclass
- Add
reasonCodeto transaction search object - Add
AchReturnResponseCreatedAtto transaction search
- Fix bug where changes to
findAllStringsbroke the creation of ResourceCollection objects (fixes #108)
- Add
LiabilityShiftclass andgetLiabilityShiftto RiskData - Fixed a bug where
decision reasonswas returning an un-parsed string instead of array
- Add
AchReturnCodeto transaction object - Add ExchangeRateQuote API
- Add 'retried' to transaction object
- Add
PaymentMethodCustomerDataUpdatedwebhook notification support - Add
phoneNumbertoAddress
- Make
junit-vintagea test dependency (thanks @jamesbroadhead) - Add plan create/update/find API endpoint
- Add support for
TransactionReviewwebhook notification
- Add
exchangeRateQuoteIdtoTransactionRequest - Add
EXCHANGE_RATE_QUOTE_ID_TOO_LONGtoValidationErrorCode - Add the following fields to
AndroidPayCardandApplePayCard:commercialdebitdurbinRegulatedhealthcarepayrollprepaidproductIdcountryOfIssuanceissuingBank
- Add the following fields to
PayPalDetails:taxIdtaxIdType
- Add support for
localPaymentFundedandlocalPaymentExpiredwebhook notications - Sanitize
encryptedCardDatain logs
- Add error code
TRANSACTION_TAX_AMOUNT_IS_REQUIRED_FOR_AIB_SWEDISHfor attributetax-amountintransactionkey for AIB:Domestic transactions in sweden
- Add
dataOnlyRequestedtoThreeDSecureLookupRequest - Add
paymentReaderCardDetailstoTransactionCreditCardRequest - Add
chargebackProtectionLeveltoDisputeandDisputeSearchRequest - Add
skipAdvancedFraudCheckingtoCreditCardOptionsRequestandPaymentMethodOptionsRequest
- Add
getPaypalMessagestoDispute - Add webhook sample for
GrantedPaymentMethodRevoked - Add
taxIdentifiertoCustomerRequest
- Add support for
LocalPaymentReversedwebhook notifications - Add
storeIdandstoreIdstoTransactionSearchRequest - Add
merchantAccountIdtoTransactionRefundRequest - Add
Transaction.adjustAuthorizationmethod to support for multiple authorizations for a single transaction
- Add
decision_reasonsandtransaction_risk_scoretoRiskData
- Add
scaExemptiontoTransactionRequest - Add
scaExemptionRequestedtoTransaction - Add validation error code:
TRANSACTION_SCA_EXEMPTION_IS_INVALID
- Pattern / regexp usage optimization : Re-use patterns / Avoid compiling / creating patterns when not needed (thanks @benbenw!)
- Add
currencyIsoCodetoTransaction - Add
verificationCurrencyIsoCodetoCreditCard,PaymentMethod, andCustomer - Add validation error codes:
CREDIT_CARD_OPTIONS_VERIFICATION_INVALID_PRESENTMENT_CURRENCYTRANSACTION_INVALID_PRESENTMENT_CURRENCY
- Add
installmentstoTransactionRequest - Add
counttoInstallmentRequest - Add
installmentandrefunded_installmentstoTransaction - Add
adjustmenttoInstallment - Fix bug in
ThreeDSecureInfoloading auth data from wrong XML node (thanks @iainjames88!) - Avoid allocating memory / constructing object if the message is not going to be logged (thanks @benbenw!)
- Avoid multiple node traversal in webhooks parsing (thanks @benbenw!)
- No need to do a complex status message parsing if the server response is a success (thanks @benbenw!)
- Add
acquirerReferenceNumbertoTransaction - Add
billingAgreementIdtoPayPalDetails - Add
isRecurringto Transaction class - Deprecate
getRecurringin Transaction class (useisRecurringinstead) - Deprecate
recurringin TransactionRequest
- Deprecate
MasterpassCardpayment method - Deprecate
AmexExpressCheckoutCardpayment method - Deprecate
deviceSessionIdandfraudMerchantIdinCreditCardRequest,CustomerRequest,PaymentMethodRequest, andTransactionRequestclasses - Fix issue where risk data was not included in
CustomerRequest(fixes #85) - Add
getInstallmentCount()method todispute.getTransaction()on dispute webhooks - Update
lookupmethod onThreeDSecureGatewayto return aResultobject - Add
implicitlyVaultedPaymentMethodTokenandimplicitlyVaultedPaymentMethodGlobalIdtoPayPalDetails
- Add
RISK_THRESHOLDtoGatewayRejectionReason - Add
networkTransactionIdtoCreditCardVerification - Add
productSkutoTransactionRequest - Add
shippingMethodandphoneNumbertoAddressRequest,TransactionAddressRequest - Add
customerDeviceId,customerLocationZip, andcustomerTenuretoAddressRequest,TransactionAddressRequest - Add validation error codes:
TRANSACTION_PRODUCT_SKU_IS_INVALIDTRANSACTION_SHIPPING_PHONE_NUMBER_IS_INVALIDTRANSACTION_BILLING_PHONE_NUMBER_IS_INVALIDRISK_DATA_CUSTOMER_BROWSER_IS_TOO_LONGRISK_DATA_CUSTOMER_DEVICE_ID_IS_TOO_LONGRISK_DATA_CUSTOMER_LOCATION_ZIP_INVALID_CHARACTERSRISK_DATA_CUSTOMER_LOCATION_ZIP_IS_INVALIDRISK_DATA_CUSTOMER_LOCATION_ZIP_IS_TOO_LONGRISK_DATA_CUSTOMER_TENURE_IS_TOO_LONG
- Add
isProcessedWithNetworkTokentoTransaction - Add
isNetworkTokenizedtoCreditCard
- Add
RequestTimeoutExceptionandGatewayTimeoutException - Breaking Changes:
- Stop sending validation errors for declined refunds, instead send the transaction object
- Remove deprecated Coinbase references
- Remove deprecated Transparent Redirect, Ideal, SEPA modules, error codes, and functions
- Remove deprecated PaymentMethodForwardRequest class
- Remove deprecated methods from
Dispute- Remove
getForwardedComments(usegetProcessorComments) - Remove
getTransactionDetails(usegetTransaction)
- Remove
- Remove deprecated
getTag(usegetCategory) fromDisputeEvidence - Remove deprecated
paypalVaultWithoutUpgradefromPaymentMethodRequest - Remove deprecated parameters from
SearchRequest- Remove
transparentRedirectURLForCreate - Remove
creditTrData
- Remove
- Remove deprecated
getNextBillAmountfromSubscription - Remove deprecated
tag(usecategory) fromTextEvidenceRequest - Remove deprecated methods from
Transaction- Remove
getRefundId(usegetRefundIds) - Remove
getSubscription(usegetSubscriptionDetails)
- Remove
- Remove deprecated method
getRows(useTransactionLevelFeeReport#getCSVRecords) fromTransactionLevelFeeReport - Remove deprecated validation error codes
CUSTOMER_ID_IS_INVAILDCUSTOMER_ID_IS_INVALIDTRANSACTION_LINE_ITEM_DISCOUNT_AMOUNT_MUST_BE_GREATER_THAN_ZEROTRANSACTION_LINE_ITEM_UNIT_TAX_AMOUNT_MUST_BE_GREATER_THAN_ZEROTRANSACTION_LINE_ITEM_TAX_AMOUNT_MUST_BE_GREATER_THAN_ZEROEUROPE_BANK_ACCOUNT_ACCOUNT_HOLDER_NAME_IS_REQUIREDEUROPE_BANK_ACCOUNT_BIC_IS_REQUIREDEUROPE_BANK_ACCOUNT_IBAN_IS_REQUIREDSEPA_MANDATE_ACCOUNT_HOLDER_NAME_IS_REQUIREDSEPA_MANDATE_BIC_INVALID_CHARACTERSEPA_MANDATE_BIC_IS_REQUIREDSEPA_MANDATE_BIC_LENGTH_IS_INVALIDSEPA_MANDATE_BIC_UNSUPPORTED_COUNTRYSEPA_MANDATE_BILLING_ADDRESS_CONFLICTSEPA_MANDATE_BILLING_ADDRESS_ID_IS_INVALIDSEPA_MANDATE_IBAN_INVALID_CHARACTERSEPA_MANDATE_IBAN_INVALID_FORMATSEPA_MANDATE_IBAN_IS_REQUIREDSEPA_MANDATE_IBAN_UNSUPPORTED_COUNTRYSEPA_MANDATE_TYPE_IS_REQUIREDSEPA_MANDATE_TYPE_IS_INVALIDTRANSACTION_AMOUNT_DOES_NOT_MATCH_IDEAL_PAYMENT_AMOUNTTRANSACTION_IDEAL_PAYMENT_NOT_COMPLETETRANSACTION_IDEAL_PAYMENTS_CANNOT_BE_VAULTEDTRANSACTION_MERCHANT_ACCOUNT_DOES_NOT_MATCH_IDEAL_PAYMENT_MERCHANT_ACCOUNTTRANSACTION_MERCHANT_ACCOUNT_NAME_IS_INVALIDTRANSACTION_ORDER_ID_DOES_NOT_MATCH_IDEAL_PAYMENT_ORDER_IDTRANSACTION_ORDER_ID_IS_REQUIRED_WITH_IDEAL_PAYMENTUNKOWN_VALIDATION_ERROR(changed toUNKNOWN_VALIDATION_ERROR)
- Error codes cannot be modified
- Remove
GRANTED_PAYMENT_INSTRUMENT_UPDATEWebhook notification - Remove deprecated
greaterThanOrEqualmethod for searches (usegreaterThanOrEqualTo) - Remove deprecated
lessThanOrEqualmethod for searches (uselessThanOrEqualTo) DownForMaintenanceexception renamed toServiceUnavailableException- Transaction searches throw
UnexpectedExceptioninstead ofDownForMaintenancewhen search response yields unexpected results - Remove
recurringCustomerConsentandrecurringMaxAmountparameters fromauthenticationInsightOptionsinPaymentMethodNonce.create()
- Add
threeDSecurePassThrutoCreditCard.create(),CreditCard.update(),Customer.create(),Customer.update(),PaymentMethod.create()andPaymentMethod.update() - Add missing
paymentMethodTokensearch toCreditCardVerificationSearchRequest - Add
recurringCustomerConsentandrecurringMaxAmountparameters toauthenticationInsightOptionsinPaymentMethodNonce.create() - Add
DOCUMENT_UPLOAD_FILE_IS_EMPTYerror code - Add
getBillingAddressmethod toPaymentMethodNonceDetailsPayerInfo(#83 thanks @eliasjpr) - Add
getShippingAddressmethod toPaymentMethodNonceDetailsPayerInfo(#83 thanks @eliasjpr)
- Fix null pointer exception when 3DS lookup returns a
422 - Add ThreeDSecure test payment method nonces
- Add test
AuthenticationIds - Add
DISPUTE_ACCEPTED,DISPUTE_DISPUTED, andDISPUTE_EXPIREDwebhook constants - Fix parsing for 3DS response authenticate fields
- Add
TRANSACTION_REFUND_AUTH_HARD_DECLINEDandTRANSACTION_REFUND_AUTH_SOFT_DECLINEDvalidation errors - Add
isNetworkTokenizedfield toAndroidPayCardandAndroidPayDetails - Add GraphQL ID to
CreditCardVerification,Customer,Dispute, andTransaction - Add
retrievalReferenceNumberfield toTransaction
- Add
PROCESSOR_DOES_NOT_SUPPORT_MOTO_FOR_CARD_TYPEto validation errors - Update
jackson-jrto v2.9.9 to fix CVE-2018-11307 (#75 thanks @sehrope) - Add
threeDSecureAuthenticationIdtoThreeDSecureInfo - Add
acsTransactionIdtoThreeDSecureInfo - Add
paresStatustoThreeDSecureInfo - Add
threeDSecureServerTransactionIdtoThreeDSecureInfo - Add
threeDSecureLookupInfotoThreeDSecureInfo - Add
threeDSecureAuthenticateInfotoThreeDSecureInfo
- Add
merchantAccountIdsetter toThreeDSecureLookupRequest
- Add
getProcessorCommentstoDispute - Add
TRANSACTION_AMOUNT_NOT_SUPPORTED_BY_PROCESSORto validation errors - Deprecate
getForwardedCommentsfromDispute - Deprecate
getRowsfromTransactionLevelFeeReportin favor ofgetCSVRecords
- Add
getUniqueNumberIdentifiertoCustomActionsPaymentMethodDetails
- Fix issue where billing address was not applied correctly in
ThreeDSecureLookupRequest
- Add
networkResponseCodeandnetworkResponseTextfields toTransactionandCreditCardVerification - Add
graphQLClientto theBraintreeGatewayclass - Add
threeDSecureInfotoCreditCardVerification - Add
xid,cavv,eciFlag,dsTransactionId, andthreeDSecureVersiontoThreeDSecureInfo - Add
PayPalHereDetailstoTransaction
- Add more Venmo error codes to
ValidationErrorCode
- Add
CustomActionsPaymentMethodsupport
- Add Venmo error codes to
ValidationErrorCode
- Avoid throwing an exception when Refunded Amount is empty in the Transaction-Level Fee Report
- Add
captureIdfield toLocalPaymentDetail - Add
refundIdfield toLocalPaymentDetail - Add
debugIdfield toLocalPaymentDetail - Add
transactionFeeAmountfield toLocalPaymentDetail - Add
transactionFeeCurrencyIsoCodefield toLocalPaymentDetail - Add
refundFromTransactionFeeAmountfield toLocalPaymentDetail - Add
refundFromTransactionFeeCurrencyIsoCodefield toLocalPaymentDetail - Add
dsTransactionIdtoThreeDSecurePassthruRequest
- Fix serialization of
ThreeDSecureLookupAdditionalInformation - Return
AuthenticationInsightwhen requested onPaymentMethodNonce.create - Add
roomTaxfield toTransactionIndustryDataRequest - Add
noShowfield toTransactionIndustryDataRequest - Add
advancedDepositfield toTransactionIndustryDataRequest - Add
fireSafefield toTransactionIndustryDataRequest - Add
propertyPhonefield toTransactionIndustryDataRequest - Add
additionalChargeRequestsfield toTransactionIndustryDataRequest - Add
payerInfotoPaymentMethodNonceDetailsclass - Add
PostalCodeIsRequiredForCardBrandAndProcessorto validation errors
- Add
ThreeDSecureLookup
- Add
revokedAtfield toPayPalAccount - Add support for
PAYMENT_METHOD_REVOKED_BY_CUSTOMERwebhook - Add
payment_method_noncefield toLocalPaymentCompletedwebhook - Add
transactionfield toLocalPaymentCompletedwebhook - Add
LocalPaymentDetailsto transactions
- Add
refundFromTransactionFeeAmountfield toPayPalDetails - Add
refundFromTransactionFeeCurrencyIsoCodefield toPayPalDetails - Add
token_issuancegateway reject status to support Venmo transactions - Add
threeDSecureVersiontoThreeDSecurePassthruRequest
- Add
accountTypetoTransaction,CreditCard,PaymentMethod, andCreditCardVerification
- Add
accountTypetoTransaction,CreditCard,PaymentMethod, andCreditCardVerification
- Deprecate
GRANTED_PAYMENT_INSTRUMENT_UPDATEand addGRANTOR_UPDATED_GRANTED_PAYMENT_METHODandRECIPIENT_UPDATED_GRANTED_PAYMENT_METHOD - Fix bug where dates in the Transaction-Level Fee Report could be parsed incorrectly due to timezone differences
- Add External Vault and Risk Data to
CreditCardVerificationRequest - Add
prepaidfield toAndroidPayDetails - Add
healthcarefield toAndroidPayDetails - Add
debitfield toAndroidPayDetails - Add
durbinRegulatedfield toAndroidPayDetails - Add
commercialfield toAndroidPayDetails - Add
payrollfield toAndroidPayDetails - Add
issuingBankfield toAndroidPayDetails - Add
countryOfIssuancefield toAndroidPayDetails - Add
productIdfield toAndroidPayDetails - Add
globalIdfield toAndroidPayDetails
- Add
binfield toPaymentMethodNonceDetails - Add
prepaidfield toApplePayDetails - Add
healthcarefield toApplePayDetails - Add
debitfield toApplePayDetails - Add
durbinRegulatedfield toApplePayDetails - Add
commercialfield toApplePayDetails - Add
payrollfield toApplePayDetails - Add
issuingBankfield toApplePayDetails - Add
countryOfIssuancefield toApplePayDetails - Add
productIdfield toApplePayDetails - Add
binfield toApplePayDetails - Add
globalIdfield toApplePayDetails - Add Error indicating pdf uploads too long for dispute evidence.
- Add
fraudServiceProviderfield toriskData
- Allow PayPal payment ID and payer ID to be passed during transaction create
- Fix bug where SDK expects
granted_payment_instrument_revokedinstead ofgranted_payment_method_revoked
- Add
travel_flightsupport to industry-specific data
- Add
GrantedPaymentMethodRevokedwebhook response objects - Add missing
getCardholderNamemethod to ApplePayCard class - Add missing nonce detail params for non-credit card nonces
- Add
authorizationExpiresAttoTransaction
- Add venmo account details to payment method nonce model
- Add
ProcessorResponseTypetoTransaction,AuthorizationAdjustment, andCreditCardVerification.
- Add
lastFourtoPaymentMethodNonceDetails - Remove final specification from
MerchantAccountGateway(#64) - Fix dispute results in transactions not showing the correct status sometimes
- Pass response message to http error (#66)
- Add
getNetworkTransactionIdas new field on subfield transaction response. - Add support for
ExternalVaultRequestfor TransactionRequest - Add support for
LocalPaymentCompletedwebhook notifications. - Close FileInputStream in
addFilePartif an exception occurs when reading. - Add
ProcessorResponseTypetoTransaction,AuthorizationAdjustment, andCreditCardVerification.
- Restore Javadoc
- Add subscription charged unsuccessfully sample webhook to webhook testing gateway
- Add initial support for GraphQL API's
- Add Transaction-Level Fee Report API
- Add support for Samsung Pay
- Allow payee ID to be passed in options params for transaction create
- Add
processor_response_codeandprocessor_response_textto authorization adjustments subfield in transaction response. - Add
getMerchantIdtoConnectedMerchantStatusTransitionedandConnectedMerchantPayPalStatusChanged, andgetOauthApplicationClientIdto OAuthAccessRevocation webhooks - Fix webhook testing sample xml for dispute webhooks to include
amount-wonandamount-disputed
- Add support for US Bank Account verifications API
- Update
jackson-jrto v2.9.5 to fix an incompatibility with Java 9 - Fix issue where multiple search criteria was not allowed. #62.
- Add support for
SubscriptionDetailsand deprecateSubscriptioninTransaction
- Add support for
OAUTH_ACCESS_REVOKEDinWebhookNotifications - Add support for dispute search by
customerId,disbursementDate, andeffectiveDate - Add
payerIdaccessor inPayPalAccount - Add support for VCR compelling evidence dispute representment
- Fix possible NullPointerException in UsBankAccount
- Add support for
association_filter_idinCustomer#find
- Deprecated
TRANSACTION_LINE_ITEM_DISCOUNT_AMOUNT_MUST_BE_GREATER_THAN_ZEROerror in favor ofTRANSACTION_LINE_ITEM_DISCOUNT_AMOUNT_CANNOT_BE_NEGATIVE - Deprecated
TRANSACTION_LINE_ITEM_UNIT_TAX_AMOUNT_MUST_BE_GREATER_THAN_ZEROerror in favor ofTRANSACTION_LINE_ITEM_UNIT_TAX_AMOUNT_CANNOT_BE_NEGATIVE - Deprecated
TRANSACTION_LINE_ITEM_TAX_AMOUNT_MUST_BE_GREATER_THAN_ZEROerror in favor ofTRANSACTION_LINE_ITEM_TAX_AMOUNT_CANNOT_BE_NEGATIVE
- Update https certificate bundle
- Add
getSourceMerchantId()toWebhookNotifications - Add support for taxAmount field on transaction lineItems
- Swap out
org.jsonpackage forjackson-jrto fix licensing issues (#58,#59) - Add support for
profile_idin Transaction#create options for VenmoAccounts
- Add support for line_items
- Add support for tagged evidence in DisputeGateway#addTextEvidence (Beta release)
- Add support for raw Apple Pay processing
- Add support for setting connect timeout (#56)
- Add support for upgrading a PayPal future payment refresh token to a billing agreement
- Add loginOnly parameter to OAuth connect URL
- Add support for Granted Payment Instrument Update webhook
- Add ability to create a transaction from a shared nonce
- Fix spec to expect PayPal transaction to settle immediately after successful capture
- Add
options->paypal->shippingfor creating & updating customers as well as creating payment methods - Add
imageUrltoApplePayDetails - Deprecate
OAuthGateway::computeSignature - Fix spec to expect PayPal transactions to move to settling rather than settled
- Add
deviceDataCapturedfield toRiskData - Add
binDatatoPaymentMethodNonce - Throw error if
signatureorpayloadin webhook is null - Fix
receivedDate/replyByDateby returningDateRangeNodeinDisputeSearchRequest(Note: this is a breaking change for limited relese disputes API)
- Add iDEAL webhook support
- Add
IDEAL_PAYMENTtoPaymentInstrumentType - Add document upload API
- Add AuthorizationAdjustment class and
authorizationAdjustmentsto Transaction - Coinbase is no longer a supported payment method.
PAYMENT_METHOD_NO_LONGER_SUPPORTEDwill be returned for Coinbase operations - Add facilitated transaction details to Transaction if present
- Add
bintoApplePayCard - Add
submitForSettlementtoSubscriptionGateway.retryCharge - Add
options->paypal->descriptionfor creating and updating subscriptions - Add
acceptmethod for the Dispute API - Add
addTextEvidencemethod for the Dispute API - Add
addFileEvidencemethod for the Dispute API - Add
finalizemethod for the Dispute API - Add
findmethod for the Dispute API - Add
removeEvidencemethod for the Dispute API - Add
searchmethod for the Dispute API
- Add additional properties to
PaymentMethodNonce
- Add
skipAvsandskipCvvoptions toTransactionOptionsRequest CreditCardVerificationnow containsamountandcurrencyIsoCode- Add iDEAL support
- Add Masterpass support
- Add Visa Checkout support
- Add support for additional PayPal options when vaulting a PayPal Order
- Stop sending
account_descriptionfield from us bank accounts - Add
ConnectedMerchantStatusTransitionedandConnectedMerchantPayPalStatusChangedAuth webhooks
- Stop sending account_description field from us bank accounts
- Add functionality to list all merchant accounts for a merchant with
MerchantAccount.all. - Update UsBank tests to use legal routing numbers.
- Add option
skip_advanced_fraud_checkfor transaction flows. - Raise an exception if fetching pages of results times out during a transaction search.
- Fix
UsBankAccountsupport forCustomers - Throw
ConfigurationExceptionfor missing credentials - Refactor payment method grant and revoke APIs to accept
PaymentMethodGrantRequestandPaymentMethodGrantRevokeRequestobjects as parameters
- Add 'UsBankAccount' payment method
- Use TLS v1.2 by default and fallback to TLS
- Add getPlanId() to SubscriptionStatusEvent
- Add createdAt to subscription search
- Log encoding error instead of printing stack trace
- Reuse SSLSocketFactory for http requests
- Allow proxy objects to be used to specify proxy config
- Add currency iso code
- Expose credit card product ID
- Add validation error for verifications with submerchants
- Allow passing OAuth scopes to
Merchant#create - Support passing
transaction_sourcefor setting moto or recurring ECI flag - Add support for passing risk data
- Allow updating default_payment_method on Customer
- Add OrderId to refund
- Add 3DS Pass thru support
- Add verificiation amount option to Payment Method request
- Expose ids in resource collections
- Add method of revoking OAuth access tokens.
- Add transaction
UpdateDetails - Add ssnLast4 to merchant account individual details
- Support for Too Many Requests response codes
- Add new landing_page param to OAuthConnectUrlRequest
- Add getSubscriptions method to PaymentMethod interface (Thanks @singhalkul!)
- Add establishedOn attribute to partner business data
- Allow passing companyName and currencies to
Merchant#create
- Remove java.util.logging.ConsoleHandler
- Add isInvalid error code for addresses
- Add timeout attribute to Configuration
- Adds shared vault parameters
- Add support for logging. Thanks @yatsenko-ihor!
- Add AccountUpdaterDailyReport webhook parsing
- Add support for OSGi bundling. Thanks, @lburgazzoli!
- Add verification create API
- Add support for options in
submit_for_settlementtransaction flows
- Include Coinbase Accounts in
Customer#getPaymentMethods(Thanks @danmidwood) - Add VenmoAccount
- Adds
CHECKwebhook kind
- Fixes broken maven release
- Add kind, openedDate, and wonDate to Dispute
- Add support for partial settlement transactions
- Add transaction data to subsription charged successfully webhooks
- Add sourceDescription attribute to Android Pay and Apple Pay
- Add new Android Pay test nonces
- Add support for amex rewards transactions
- Add new test payment method nonces
- Allow passing description on PayPal transactions
- Expose transaction fee details on PayPal transactions
- Add support for PayPal billing agreements
- Add oauth support
- Add support for Android Pay
- Validate webhook challenge payload
- Fix ThreeDSecureInfo#find to be more consistent
- Add 3DS info to the server side
- Simplified SEPA workflow
- Close InputStreams after use
- Add additional PayPalDetails getters
- Surface Apple Pay payment instrument name in responses
- Support making 3DSecure required
- Add support for Coinbase
- Explicitly disconnect the HttpURLConnection after use (Thanks, @gsharma)
- New validation error constants
- Add ApplePayDetails#getLast4
- More searches from CreditCardVerificationSearchRequest
- Allow payee_email in transaction.options.paypal
- Allow PayPal custom field on transaction create
- Add support for Retrieval dispute reasons.
- 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
- ApplePay support
- Allow descriptor to be passed in Funding Details options params for Merchant Account create and update.
- Add additionalProcessorResponse to transaction
- Allow payee_email to be passed in options params for Transaction create
- Added paypal specific fields to transaction calls
- Added SettlementPending, SettlementDeclined transaction statuses
- Add descriptor url support
- 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
- Add support for dispute webhooks
- Support for v.zero SDKs.
- Make webhook parsing more robust with newlines
- Add messages to InvalidSignature exceptions
- Include Dispute information on Transaction
- Search for Transactions disputed on a certain date
- Disbursement Webhooks
- Merchant account find API
- Merchant account update API
- Merchant account create API v2
- Use new Braintree Gateway API endpoints
- Adds support for Partnerships
- Adds fraud to gatewayRejectionReason, unrecognized to all enums missing it.
- Adds holdInEscrow method
- Add error codes for verification not supported error
- Add companyName and taxId to ApplicantDetailsRequest
- Adds cancelRelease method
- Adds releaseFromEscrow functionality
- Adds merchant account phone error code.
- Adds device data to transactions, customers, and credit cards.
- Lots of cleanups [thanks to https://github.com/steve-nester-uk]
- Bumps version in maven pom.xml
- Adds disbursement details to transactions.
- Adds image url to transactions.
- Adds Venmo Touch support.
- Adds channel field to transactions.
- Adds country of issuance and issuing bank
- Adds verification search
- 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
- Adds prepaid attribute on credit cards (possible values: Yes, No, Unknown)
- Adds webhook gateways for parsing, verifying, and testing incoming notifications
- Adds search for duplicate credit cards given a payment method token
- Adds flag to fail saving credit card to vault if card is duplicate
- Exposes plan_id on transactions
- Adds new certificates for sandbox environment
- Added error code for invalid purchase order number
- Added error message for merchant accounts that do not support refunds
- Added ability to retrieve all Plans, Addons, and Discounts
- Added Transaction cloning
- Update README to include Maven repository documentation
- Implemented new NodeWrapper (SimpleNodeWrapper) that is much faster than the previous xpath implementation.
- Fixed a bug in SettlementBatchSummary that may have requested the wrong date when using a timezone other than UTC.
- Added SettlementBatchSummary
- Correctly report PAST_DUE status on Subscriptions.
- Added subscription to Transaction
- Added flag to store in vault only when a transaction is successful
- Added new error code
- Added a new transaction state, AUTHORIZATION_EXPIRED.
- Enabled searching by authorizationExpiredAt.
- Added nextBillingDate and transactionId to subscription search
- Added addressCountryName to customer search
- Added new error codes
- Added Customer search
- Added dynamic descriptors to Subscriptions and Transactions
- Added level 2 fields to Transactions:
- tax_amount
- tax_exempt
- purchase_order_number
- Added billingAddressId to CreditCardRequest
- Allow searching on Subscriptions that are currently in a trial period using inTrialPeriod
- Added ability to perform multiple partial refunds on Transactions
- Deprecated Transaction getRefundId in favor of getRefundIds
- Added revertSubscriptionOnProrationFailure flag to Subscription update that specifies how a Subscription should react to a failed proration charge
- Deprecated Subscription getNextBillAmount in favor of getNextBillingPeriodAmount
- Added new properties to Subscription:
- balance
- paidThroughDate
- nextBillingPeriodAmount
- Added AddOns/Discounts
- Enhanced Subscription search
- Enhanced Transaction search
- Added AddOn/Discount details to Transactions that were created from a Subscription
- Added an enum for CreditCardVerification statuses
- Added EXPIRED and PENDING statuses to Subscription
- Allowed prorateCharges to be specified on Subscription update
- Renamed search methods greaterThanOrEqual and lessThanOrEqual to greaterThanOrEqualTo and lessThanOrEqualTo -- deprecated old methods
- All Braintree Exceptions now inherit from BraintreeException superclass
- Added new properties to Subscription:
- billingDayOfMonth
- daysPastDue
- firstBillingDate
- neverExpires
- numberOfBillingCycles
- Added unified message to result objects
- Added ability to specify country using countryName, countryCodeAlpha2, countryCodeAlpha3, or countryCodeNumeric (see ISO_3166-1)
- Added gatewayRejectionReason to Transaction and Verification
- When creating a Subscription, return failed transaction on the Result if the initial transaction is not successful
- Fixed a bug in confirming TransparentRedirect when returning an Error result
- Added unified TransparentRedirect url and confirm methods and deprecated old methods
- Added methods to CreditCardGateway to allow searching on expiring and expired credit cards
- Allow credit card verification against a specified merchant account
- Added ability to update a customer, credit card, and billing address in one request
- Allow updating the payment method token on a subscription
- Added methods to navigate between a Transaction and its refund (in both directions)
- Read VERSION from a constant instead of a VERSION file, which can conflict with other VERSION files in load path.
- 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 getApproximateSize to getMaximumSize 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 the client library version is no longer compatible with the gateway
- 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 credit card
- Allow existing billing address to be updated when updating credit card
- Updated isSuccess() on transaction results to return false on declined transactions
- Search results now implement Iterable and will automatically paginate data
- Added getCardholderName() to CreditCard
- Added option to change default credit card for a customer
- Added subscription search
- Return associated subscriptions when finding credit cards
- Updated forObject to return an empty ValidationErrors object instead of null if there are no errors
- Raise down for maintenance exception instead of forged query string when down for maintenance
- Added java 1.5 compatibility
- Updated production URL
- Added processorAuthorizationCode() to Transaction
- Fixed a bug preventing TransactionRequest objects with nested Customer objects from building properly
- Added getMaskedNumber() to CreditCard to return the masked credit card number
- Added recurring billing support
- Initial release