Skip to content

Commit 063d82f

Browse files
committed
5.39.0
1 parent db90be1 commit 063d82f

21 files changed

+267
-182
lines changed

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Changelog
22

3+
## 5.39.0
4+
- Add `acceptPartialAuthorization` in `TransactionRequest` and `PartiallyAuthorized` in `Transaction`
5+
- Deprecate transactions for `visa_checkout_card` and maintain search functionality
6+
- Add `UsBankAccount` to `TransactionOptionsRequest`
7+
- Add field `AchType` to `TransactionOptionsUsBankAccountRequest`
8+
- Add response field `RequestedAchType`, `AchType` to `Transaction`
9+
310
## 5.38.0
411
- Add `MiddleName` to sender and receiver, and `DateOfBirth` to sender in transfer on Transaction
512

src/Braintree/Braintree.csproj

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,19 @@
44
<PropertyGroup>
55
<Description>Braintree Client Library</Description>
66
<Copyright>Copyright © Braintree, a division of PayPal, Inc. 2021</Copyright>
7-
<VersionPrefix>5.38.0</VersionPrefix>
7+
<VersionPrefix>5.39.0</VersionPrefix>
88
<Authors>Braintree</Authors>
99
<!-- We target NET standard 2.0 so that we can support NET Core 2.1. When NET Core 2.1 reaches EOL, we can update to Net Standard 2.1 -->
1010
<TargetFrameworks>net452;netstandard2.0</TargetFrameworks>
1111
<AssemblyName>Braintree</AssemblyName>
1212
<PackageId>Braintree</PackageId>
1313
<PackageTags>braintree;paypal;venmo;intenational;payments;gateway;currencies;money;visa;mastercard;bitcoin;maestro;apple pay;android pay;amex;jcb;diners club;discover;american express</PackageTags>
1414
<PackageReleaseNotes>
15-
- Add `ProcessingMerchantCategoryCode` to `TransactionRequest`
16-
- Add missing `transfer` validation error codes in `Transaction`
15+
-Add acceptPartialAuthorization in TransactionRequest and PartiallyAuthorized in Transaction
16+
-Deprecate transactions for visa_checkout_card and maintain search functionality
17+
-Add UsBankAccount to TransactionOptionsRequest
18+
-Add field AchType to TransactionOptionsUsBankAccountRequest
19+
-Add response field RequestedAchType, AchType to Transaction
1720
</PackageReleaseNotes>
1821
<PackageProjectUrl>https://github.com/braintree/braintree_dotnet</PackageProjectUrl>
1922
<GenerateAssemblyTitleAttribute>false</GenerateAssemblyTitleAttribute>

src/Braintree/Customer.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ public class Customer
3939
public virtual DateTime? UpdatedAt { get; protected set; }
4040
public virtual UsBankAccount[] UsBankAccounts { get; protected set; }
4141
public virtual VenmoAccount[] VenmoAccounts { get; protected set; }
42+
#pragma warning disable 618
4243
public virtual VisaCheckoutCard[] VisaCheckoutCards { get; protected set; }
44+
#pragma warning restore 618
4345
public virtual string Website { get; protected set; }
4446

4547
public PaymentMethod DefaultPaymentMethod
@@ -122,11 +124,14 @@ protected internal Customer(NodeWrapper node, IBraintreeGateway gateway)
122124
}
123125

124126
var visaCheckoutCardsXmlNodes = node.GetList("visa-checkout-cards/visa-checkout-card");
127+
// VisaCheckoutCard has been deprecated for transactions
128+
#pragma warning disable 618
125129
VisaCheckoutCards = new VisaCheckoutCard[visaCheckoutCardsXmlNodes.Count];
126130
for (int i = 0; i < visaCheckoutCardsXmlNodes.Count; i++)
127131
{
128132
VisaCheckoutCards[i] = new VisaCheckoutCard(visaCheckoutCardsXmlNodes[i], gateway);
129133
}
134+
#pragma warning restore 618
130135

131136
var usBankAccountXmlNodes = node.GetList("us-bank-accounts/us-bank-account");
132137
UsBankAccounts = new UsBankAccount[usBankAccountXmlNodes.Count];

src/Braintree/PaymentMethodGateway.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,10 @@ private Result<PaymentMethod> ExtractResultFromResponse(NodeWrapper response)
125125
}
126126
else if (response.GetName() == "visa-checkout-card")
127127
{
128+
// VisaCheckoutCard has been deprecated for transactions
129+
#pragma warning disable 618
128130
return new ResultImpl<VisaCheckoutCard>(response, gateway);
131+
#pragma warning restore 618
129132
}
130133
else if (response.GetName() == "samsung-pay-card")
131134
{

src/Braintree/PaymentMethodParser.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,9 @@ public static PaymentMethod ParsePaymentMethod(NodeWrapper response, IBraintreeG
5151
}
5252
else if (response.GetName() == "visa-checkout-card")
5353
{
54+
#pragma warning disable 618
5455
return new VisaCheckoutCard(response, gateway);
56+
#pragma warning restore 618
5557
}
5658
else
5759
{

src/Braintree/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// Build Number
3333
// Revision
3434
//
35-
[assembly: AssemblyVersion("5.38.0.0")]
36-
[assembly: AssemblyFileVersion("5.38.0.0")]
35+
[assembly: AssemblyVersion("5.39.0.0")]
36+
[assembly: AssemblyFileVersion("5.39.0.0")]

src/Braintree/Result.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,10 +165,13 @@ private T newInstanceFromResponse(NodeWrapper node, IBraintreeGateway gateway)
165165
{
166166
return new UsBankAccountVerification(node) as T;
167167
}
168+
// VisaCheckoutCard has been deprecated for transactions
169+
#pragma warning disable 618
168170
else if (typeof(T) == typeof(VisaCheckoutCard))
169171
{
170172
return new VisaCheckoutCard(node, gateway) as T;
171173
}
174+
#pragma warning restore 618
172175
#pragma warning disable 618
173176
else if (typeof(T) == typeof(SamsungPayCard))
174177
{

src/Braintree/SandboxValues.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ public class Dispute
3737
public class TransactionAmount
3838
{
3939
public const decimal AUTHORIZE = 1000;
40+
public const decimal PARTIALLY_AUTHORIZED = 1004;
4041
public const decimal DECLINE = 2000;
4142
public const decimal HARD_DECLINE = 2015;
4243
public const decimal FAILED = 3000;

src/Braintree/Transaction.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ public class Transaction
119119
public virtual bool? AccountFundingTransaction { get; protected set; }
120120
public virtual string AchRejectReason { get; protected set; }
121121
public virtual string AchReturnCode { get; protected set; }
122+
public virtual string AchType { get; protected set; }
122123
public virtual string AcquirerReferenceNumber { get; protected set; }
123124
public virtual string AdditionalProcessorResponse { get; protected set; }
124125
public virtual List<AddOn> AddOns { get; protected set; }
@@ -165,6 +166,7 @@ public class Transaction
165166
public virtual string NetworkTransactionId { get; protected set; }
166167
public virtual string OrderId { get; protected set; }
167168
public virtual PackageDetails[] Packages { get; protected set; }
169+
public virtual bool? PartiallyAuthorized { get; protected set; }
168170
public virtual List<string> PartialSettlementTransactionIds { get; protected set; }
169171
public virtual PaymentInstrumentType PaymentInstrumentType { get; protected set; }
170172
public virtual PayPalDetails PayPalDetails { get; protected set; }
@@ -182,6 +184,7 @@ public class Transaction
182184
public virtual List<Installment> RefundedInstallments { get; protected set; }
183185
public virtual string RefundedTransactionId { get; protected set; }
184186
public virtual List<string> RefundIds { get; protected set; }
187+
public virtual string RequestedAchType { get; protected set; }
185188
public virtual bool? Retried { get; protected set; }
186189
public virtual string RetriedTransactionId { get; protected set; }
187190
public virtual string RetrievalReferenceNumber { get; protected set; }
@@ -212,7 +215,9 @@ public class Transaction
212215
public virtual DateTime? UpdatedAt { get; protected set; }
213216
public virtual UsBankAccountDetails UsBankAccountDetails { get; protected set; }
214217
public virtual VenmoAccountDetails VenmoAccountDetails { get; protected set; }
218+
#pragma warning disable 618
215219
public virtual VisaCheckoutCardDetails VisaCheckoutCardDetails { get; protected set; }
220+
#pragma warning restore 618
216221
public virtual string VoiceReferralNumber { get; protected set; }
217222

218223
private IBraintreeGateway Gateway;
@@ -284,6 +289,10 @@ protected internal Transaction(NodeWrapper node, IBraintreeGateway gateway)
284289
TaxExempt = node.GetBoolean("tax-exempt");
285290
CustomFields = node.GetDictionary("custom-fields");
286291
ForeignRetailer = node.GetBoolean("foreign-retailer");
292+
if (ProcessorResponseCode != null)
293+
{
294+
PartiallyAuthorized = ProcessorResponseCode.Equals("1004");
295+
}
287296

288297
var creditCardNode = node.GetNode("credit-card");
289298
if (creditCardNode != null)
@@ -371,7 +380,9 @@ protected internal Transaction(NodeWrapper node, IBraintreeGateway gateway)
371380
var visaCheckoutNode = node.GetNode("visa-checkout-card");
372381
if (visaCheckoutNode != null)
373382
{
383+
#pragma warning disable 618
374384
VisaCheckoutCardDetails = new VisaCheckoutCardDetails(visaCheckoutNode);
385+
#pragma warning restore 618
375386
}
376387
// NEXT_MAJOR_VERSION SamsungPayCard has been deprecated, remove all associated references
377388
var samsungPayNode = node.GetNode("samsung-pay-card");
@@ -450,6 +461,8 @@ protected internal Transaction(NodeWrapper node, IBraintreeGateway gateway)
450461

451462
AchRejectReason = node.GetString("ach-reject-reason");
452463
AchReturnCode = node.GetString("ach-return-code");
464+
AchType = node.GetString("ach-type");
465+
RequestedAchType = node.GetString("requested-ach-type");
453466

454467
SepaDirectDebitReturnCode = node.GetString("sepa-direct-debit-return-code");
455468

src/Braintree/TransactionOptionsRequest.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ public class TransactionOptionsRequest : Request
2525
public TransactionOptionsAmexRewardsRequest AmexRewards { get; set; }
2626
public TransactionOptionsVenmoRequest Venmo { get; set; }
2727
public TransactionOptionsCreditCardRequest CreditCard { get; set; }
28+
public TransactionOptionsUsBankAccountRequest UsBankAccount { get; set; }
2829
public TransactionOptionsProcessingOverridesRequest ProcessingOverrides { get; set; }
2930

3031
public override string ToXml(string root)
@@ -60,6 +61,7 @@ protected virtual RequestBuilder BuildRequest(string root)
6061
AddElement("credit-card", CreditCard).
6162
AddElement("amex-rewards", AmexRewards).
6263
AddElement("venmo", Venmo).
64+
AddElement("us-bank-account", UsBankAccount).
6365
AddElement("processing-overrides", ProcessingOverrides);
6466
}
6567
}

0 commit comments

Comments
 (0)