diff --git a/Adyen/Model/AcsWebhooks/Amount.cs b/Adyen/Model/AcsWebhooks/Amount.cs
index 95a466f14..daeca719b 100644
--- a/Adyen/Model/AcsWebhooks/Amount.cs
+++ b/Adyen/Model/AcsWebhooks/Amount.cs
@@ -40,8 +40,8 @@ protected Amount() { }
///
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/AcsWebhooks/AuthenticationNotificationRequest.cs b/Adyen/Model/AcsWebhooks/AuthenticationNotificationRequest.cs
index 07c3c7131..c541d209c 100644
--- a/Adyen/Model/AcsWebhooks/AuthenticationNotificationRequest.cs
+++ b/Adyen/Model/AcsWebhooks/AuthenticationNotificationRequest.cs
@@ -64,12 +64,14 @@ protected AuthenticationNotificationRequest() { }
///
/// data (required).
/// The environment from which the webhook originated. Possible values: **test**, **live**. (required).
+ /// When the event was queued..
/// Type of notification. (required).
- public AuthenticationNotificationRequest(AuthenticationNotificationData data = default(AuthenticationNotificationData), string environment = default(string), TypeEnum type = default(TypeEnum))
+ public AuthenticationNotificationRequest(AuthenticationNotificationData data = default(AuthenticationNotificationData), string environment = default(string), DateTime timestamp = default(DateTime), TypeEnum type = default(TypeEnum))
{
this.Data = data;
this.Environment = environment;
this.Type = type;
+ this.Timestamp = timestamp;
}
///
@@ -85,6 +87,13 @@ protected AuthenticationNotificationRequest() { }
[DataMember(Name = "environment", IsRequired = false, EmitDefaultValue = false)]
public string Environment { get; set; }
+ ///
+ /// When the event was queued.
+ ///
+ /// When the event was queued.
+ [DataMember(Name = "timestamp", EmitDefaultValue = false)]
+ public DateTime Timestamp { get; set; }
+
///
/// Returns the string presentation of the object
///
@@ -95,6 +104,7 @@ public override string ToString()
sb.Append("class AuthenticationNotificationRequest {\n");
sb.Append(" Data: ").Append(Data).Append("\n");
sb.Append(" Environment: ").Append(Environment).Append("\n");
+ sb.Append(" Timestamp: ").Append(Timestamp).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append("}\n");
return sb.ToString();
@@ -141,6 +151,11 @@ public bool Equals(AuthenticationNotificationRequest input)
(this.Environment != null &&
this.Environment.Equals(input.Environment))
) &&
+ (
+ this.Timestamp == input.Timestamp ||
+ (this.Timestamp != null &&
+ this.Timestamp.Equals(input.Timestamp))
+ ) &&
(
this.Type == input.Type ||
this.Type.Equals(input.Type)
@@ -164,6 +179,10 @@ public override int GetHashCode()
{
hashCode = (hashCode * 59) + this.Environment.GetHashCode();
}
+ if (this.Timestamp != null)
+ {
+ hashCode = (hashCode * 59) + this.Timestamp.GetHashCode();
+ }
hashCode = (hashCode * 59) + this.Type.GetHashCode();
return hashCode;
}
diff --git a/Adyen/Model/BinLookup/Amount.cs b/Adyen/Model/BinLookup/Amount.cs
index fb7ebaad0..311da0060 100644
--- a/Adyen/Model/BinLookup/Amount.cs
+++ b/Adyen/Model/BinLookup/Amount.cs
@@ -40,8 +40,8 @@ protected Amount() { }
///
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/Checkout/CardDetails.cs b/Adyen/Model/Checkout/CardDetails.cs
index 831e05aee..512824693 100644
--- a/Adyen/Model/Checkout/CardDetails.cs
+++ b/Adyen/Model/Checkout/CardDetails.cs
@@ -95,7 +95,13 @@ public enum TypeEnum
/// Enum Card for value: card
///
[EnumMember(Value = "card")]
- Card = 5
+ Card = 5,
+
+ ///
+ /// Enum Clicktopay for value: clicktopay
+ ///
+ [EnumMember(Value = "clicktopay")]
+ Clicktopay = 6
}
@@ -113,6 +119,7 @@ public enum TypeEnum
/// The checkout attempt identifier..
/// cupsecureplusSmscode.
/// The card verification code. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)..
+ /// Only include this for JSON Web Encryption (JWE) implementations. The JWE-encrypted card details..
/// The encrypted card number..
/// The encrypted card expiry month..
/// The encrypted card expiry year..
@@ -132,12 +139,13 @@ public enum TypeEnum
/// This is the `recurringDetailReference` returned in the response when you created the token..
/// Required for mobile integrations. Version of the 3D Secure 2 mobile SDK..
/// Default payment method details. Common for scheme payment methods, and for simple payment method details. (default to TypeEnum.Scheme).
- public CardDetails(string brand = default(string), string checkoutAttemptId = default(string), string cupsecureplusSmscode = default(string), string cvc = default(string), string encryptedCardNumber = default(string), string encryptedExpiryMonth = default(string), string encryptedExpiryYear = default(string), string encryptedSecurityCode = default(string), string expiryMonth = default(string), string expiryYear = default(string), FundingSourceEnum? fundingSource = default(FundingSourceEnum?), string holderName = default(string), string networkPaymentReference = default(string), string number = default(string), string recurringDetailReference = default(string), string shopperNotificationReference = default(string), string srcCorrelationId = default(string), string srcDigitalCardId = default(string), string srcScheme = default(string), string srcTokenReference = default(string), string storedPaymentMethodId = default(string), string threeDS2SdkVersion = default(string), TypeEnum? type = TypeEnum.Scheme)
+ public CardDetails(string brand = default(string), string checkoutAttemptId = default(string), string cupsecureplusSmscode = default(string), string cvc = default(string), string encryptedCard = default(string), string encryptedCardNumber = default(string), string encryptedExpiryMonth = default(string), string encryptedExpiryYear = default(string), string encryptedSecurityCode = default(string), string expiryMonth = default(string), string expiryYear = default(string), FundingSourceEnum? fundingSource = default(FundingSourceEnum?), string holderName = default(string), string networkPaymentReference = default(string), string number = default(string), string recurringDetailReference = default(string), string shopperNotificationReference = default(string), string srcCorrelationId = default(string), string srcDigitalCardId = default(string), string srcScheme = default(string), string srcTokenReference = default(string), string storedPaymentMethodId = default(string), string threeDS2SdkVersion = default(string), TypeEnum? type = TypeEnum.Scheme)
{
this.Brand = brand;
this.CheckoutAttemptId = checkoutAttemptId;
this.CupsecureplusSmscode = cupsecureplusSmscode;
this.Cvc = cvc;
+ this.EncryptedCard = encryptedCard;
this.EncryptedCardNumber = encryptedCardNumber;
this.EncryptedExpiryMonth = encryptedExpiryMonth;
this.EncryptedExpiryYear = encryptedExpiryYear;
@@ -187,6 +195,13 @@ public enum TypeEnum
[DataMember(Name = "cvc", EmitDefaultValue = false)]
public string Cvc { get; set; }
+ ///
+ /// Only include this for JSON Web Encryption (JWE) implementations. The JWE-encrypted card details.
+ ///
+ /// Only include this for JSON Web Encryption (JWE) implementations. The JWE-encrypted card details.
+ [DataMember(Name = "encryptedCard", EmitDefaultValue = false)]
+ public string EncryptedCard { get; set; }
+
///
/// The encrypted card number.
///
@@ -319,6 +334,7 @@ public override string ToString()
sb.Append(" CheckoutAttemptId: ").Append(CheckoutAttemptId).Append("\n");
sb.Append(" CupsecureplusSmscode: ").Append(CupsecureplusSmscode).Append("\n");
sb.Append(" Cvc: ").Append(Cvc).Append("\n");
+ sb.Append(" EncryptedCard: ").Append(EncryptedCard).Append("\n");
sb.Append(" EncryptedCardNumber: ").Append(EncryptedCardNumber).Append("\n");
sb.Append(" EncryptedExpiryMonth: ").Append(EncryptedExpiryMonth).Append("\n");
sb.Append(" EncryptedExpiryYear: ").Append(EncryptedExpiryYear).Append("\n");
@@ -393,6 +409,11 @@ public bool Equals(CardDetails input)
(this.Cvc != null &&
this.Cvc.Equals(input.Cvc))
) &&
+ (
+ this.EncryptedCard == input.EncryptedCard ||
+ (this.EncryptedCard != null &&
+ this.EncryptedCard.Equals(input.EncryptedCard))
+ ) &&
(
this.EncryptedCardNumber == input.EncryptedCardNumber ||
(this.EncryptedCardNumber != null &&
@@ -513,6 +534,10 @@ public override int GetHashCode()
{
hashCode = (hashCode * 59) + this.Cvc.GetHashCode();
}
+ if (this.EncryptedCard != null)
+ {
+ hashCode = (hashCode * 59) + this.EncryptedCard.GetHashCode();
+ }
if (this.EncryptedCardNumber != null)
{
hashCode = (hashCode * 59) + this.EncryptedCardNumber.GetHashCode();
@@ -593,6 +618,12 @@ public override int GetHashCode()
/// Validation Result
public IEnumerable Validate(ValidationContext validationContext)
{
+ // EncryptedCard (string) maxLength
+ if (this.EncryptedCard != null && this.EncryptedCard.Length > 40000)
+ {
+ yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for EncryptedCard, length must be less than 40000.", new [] { "EncryptedCard" });
+ }
+
// EncryptedCardNumber (string) maxLength
if (this.EncryptedCardNumber != null && this.EncryptedCardNumber.Length > 15000)
{
diff --git a/Adyen/Model/Checkout/CardDonations.cs b/Adyen/Model/Checkout/CardDonations.cs
index 26ed07bf3..c8b4c31ea 100644
--- a/Adyen/Model/Checkout/CardDonations.cs
+++ b/Adyen/Model/Checkout/CardDonations.cs
@@ -95,7 +95,13 @@ public enum TypeEnum
/// Enum Card for value: card
///
[EnumMember(Value = "card")]
- Card = 5
+ Card = 5,
+
+ ///
+ /// Enum Clicktopay for value: clicktopay
+ ///
+ [EnumMember(Value = "clicktopay")]
+ Clicktopay = 6
}
@@ -113,6 +119,7 @@ public enum TypeEnum
/// The checkout attempt identifier..
/// cupsecureplusSmscode.
/// The card verification code. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)..
+ /// Only include this for JSON Web Encryption (JWE) implementations. The JWE-encrypted card details..
/// The encrypted card number..
/// The encrypted card expiry month..
/// The encrypted card expiry year..
@@ -132,12 +139,13 @@ public enum TypeEnum
/// This is the `recurringDetailReference` returned in the response when you created the token..
/// Required for mobile integrations. Version of the 3D Secure 2 mobile SDK..
/// Default payment method details. Common for scheme payment methods, and for simple payment method details. (default to TypeEnum.Scheme).
- public CardDonations(string brand = default(string), string checkoutAttemptId = default(string), string cupsecureplusSmscode = default(string), string cvc = default(string), string encryptedCardNumber = default(string), string encryptedExpiryMonth = default(string), string encryptedExpiryYear = default(string), string encryptedSecurityCode = default(string), string expiryMonth = default(string), string expiryYear = default(string), FundingSourceEnum? fundingSource = default(FundingSourceEnum?), string holderName = default(string), string networkPaymentReference = default(string), string number = default(string), string recurringDetailReference = default(string), string shopperNotificationReference = default(string), string srcCorrelationId = default(string), string srcDigitalCardId = default(string), string srcScheme = default(string), string srcTokenReference = default(string), string storedPaymentMethodId = default(string), string threeDS2SdkVersion = default(string), TypeEnum? type = TypeEnum.Scheme)
+ public CardDonations(string brand = default(string), string checkoutAttemptId = default(string), string cupsecureplusSmscode = default(string), string cvc = default(string), string encryptedCard = default(string), string encryptedCardNumber = default(string), string encryptedExpiryMonth = default(string), string encryptedExpiryYear = default(string), string encryptedSecurityCode = default(string), string expiryMonth = default(string), string expiryYear = default(string), FundingSourceEnum? fundingSource = default(FundingSourceEnum?), string holderName = default(string), string networkPaymentReference = default(string), string number = default(string), string recurringDetailReference = default(string), string shopperNotificationReference = default(string), string srcCorrelationId = default(string), string srcDigitalCardId = default(string), string srcScheme = default(string), string srcTokenReference = default(string), string storedPaymentMethodId = default(string), string threeDS2SdkVersion = default(string), TypeEnum? type = TypeEnum.Scheme)
{
this.Brand = brand;
this.CheckoutAttemptId = checkoutAttemptId;
this.CupsecureplusSmscode = cupsecureplusSmscode;
this.Cvc = cvc;
+ this.EncryptedCard = encryptedCard;
this.EncryptedCardNumber = encryptedCardNumber;
this.EncryptedExpiryMonth = encryptedExpiryMonth;
this.EncryptedExpiryYear = encryptedExpiryYear;
@@ -187,6 +195,13 @@ public enum TypeEnum
[DataMember(Name = "cvc", EmitDefaultValue = false)]
public string Cvc { get; set; }
+ ///
+ /// Only include this for JSON Web Encryption (JWE) implementations. The JWE-encrypted card details.
+ ///
+ /// Only include this for JSON Web Encryption (JWE) implementations. The JWE-encrypted card details.
+ [DataMember(Name = "encryptedCard", EmitDefaultValue = false)]
+ public string EncryptedCard { get; set; }
+
///
/// The encrypted card number.
///
@@ -319,6 +334,7 @@ public override string ToString()
sb.Append(" CheckoutAttemptId: ").Append(CheckoutAttemptId).Append("\n");
sb.Append(" CupsecureplusSmscode: ").Append(CupsecureplusSmscode).Append("\n");
sb.Append(" Cvc: ").Append(Cvc).Append("\n");
+ sb.Append(" EncryptedCard: ").Append(EncryptedCard).Append("\n");
sb.Append(" EncryptedCardNumber: ").Append(EncryptedCardNumber).Append("\n");
sb.Append(" EncryptedExpiryMonth: ").Append(EncryptedExpiryMonth).Append("\n");
sb.Append(" EncryptedExpiryYear: ").Append(EncryptedExpiryYear).Append("\n");
@@ -393,6 +409,11 @@ public bool Equals(CardDonations input)
(this.Cvc != null &&
this.Cvc.Equals(input.Cvc))
) &&
+ (
+ this.EncryptedCard == input.EncryptedCard ||
+ (this.EncryptedCard != null &&
+ this.EncryptedCard.Equals(input.EncryptedCard))
+ ) &&
(
this.EncryptedCardNumber == input.EncryptedCardNumber ||
(this.EncryptedCardNumber != null &&
@@ -513,6 +534,10 @@ public override int GetHashCode()
{
hashCode = (hashCode * 59) + this.Cvc.GetHashCode();
}
+ if (this.EncryptedCard != null)
+ {
+ hashCode = (hashCode * 59) + this.EncryptedCard.GetHashCode();
+ }
if (this.EncryptedCardNumber != null)
{
hashCode = (hashCode * 59) + this.EncryptedCardNumber.GetHashCode();
@@ -593,6 +618,12 @@ public override int GetHashCode()
/// Validation Result
public IEnumerable Validate(ValidationContext validationContext)
{
+ // EncryptedCard (string) maxLength
+ if (this.EncryptedCard != null && this.EncryptedCard.Length > 40000)
+ {
+ yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for EncryptedCard, length must be less than 40000.", new [] { "EncryptedCard" });
+ }
+
// EncryptedCardNumber (string) maxLength
if (this.EncryptedCardNumber != null && this.EncryptedCardNumber.Length > 15000)
{
diff --git a/Adyen/Model/DisputeWebhooks/Amount.cs b/Adyen/Model/DisputeWebhooks/Amount.cs
index bf0aad49f..150ac0361 100644
--- a/Adyen/Model/DisputeWebhooks/Amount.cs
+++ b/Adyen/Model/DisputeWebhooks/Amount.cs
@@ -40,8 +40,8 @@ protected Amount() { }
///
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/LegalEntityManagement/CalculatePciStatusRequest.cs b/Adyen/Model/LegalEntityManagement/CalculatePciStatusRequest.cs
new file mode 100644
index 000000000..35b309b01
--- /dev/null
+++ b/Adyen/Model/LegalEntityManagement/CalculatePciStatusRequest.cs
@@ -0,0 +1,158 @@
+/*
+* Legal Entity Management API
+*
+*
+* The version of the OpenAPI document: 3
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.LegalEntityManagement
+{
+ ///
+ /// CalculatePciStatusRequest
+ ///
+ [DataContract(Name = "CalculatePciStatusRequest")]
+ public partial class CalculatePciStatusRequest : IEquatable, IValidatableObject
+ {
+ ///
+ /// Defines AdditionalSalesChannels
+ ///
+ [JsonConverter(typeof(StringEnumConverter))]
+ public enum AdditionalSalesChannelsEnum
+ {
+ ///
+ /// Enum ECommerce for value: eCommerce
+ ///
+ [EnumMember(Value = "eCommerce")]
+ ECommerce = 1,
+
+ ///
+ /// Enum EcomMoto for value: ecomMoto
+ ///
+ [EnumMember(Value = "ecomMoto")]
+ EcomMoto = 2,
+
+ ///
+ /// Enum Pos for value: pos
+ ///
+ [EnumMember(Value = "pos")]
+ Pos = 3,
+
+ ///
+ /// Enum PosMoto for value: posMoto
+ ///
+ [EnumMember(Value = "posMoto")]
+ PosMoto = 4
+
+ }
+
+
+
+ ///
+ /// An array of additional sales channels to generate PCI questionnaires. Include the relevant sales channels if you need your user to sign PCI questionnaires. Not required if you [create stores](https://docs.adyen.com/platforms) and [add payment methods](https://docs.adyen.com/adyen-for-platforms-model) before you generate the questionnaires. Possible values: * **eCommerce** * **pos** * **ecomMoto** * **posMoto**
+ ///
+ /// An array of additional sales channels to generate PCI questionnaires. Include the relevant sales channels if you need your user to sign PCI questionnaires. Not required if you [create stores](https://docs.adyen.com/platforms) and [add payment methods](https://docs.adyen.com/adyen-for-platforms-model) before you generate the questionnaires. Possible values: * **eCommerce** * **pos** * **ecomMoto** * **posMoto**
+ [DataMember(Name = "additionalSalesChannels", EmitDefaultValue = false)]
+ public List AdditionalSalesChannels { get; set; }
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// An array of additional sales channels to generate PCI questionnaires. Include the relevant sales channels if you need your user to sign PCI questionnaires. Not required if you [create stores](https://docs.adyen.com/platforms) and [add payment methods](https://docs.adyen.com/adyen-for-platforms-model) before you generate the questionnaires. Possible values: * **eCommerce** * **pos** * **ecomMoto** * **posMoto** .
+ public CalculatePciStatusRequest(List additionalSalesChannels = default(List))
+ {
+ this.AdditionalSalesChannels = additionalSalesChannels;
+ }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class CalculatePciStatusRequest {\n");
+ sb.Append(" AdditionalSalesChannels: ").Append(AdditionalSalesChannels).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as CalculatePciStatusRequest);
+ }
+
+ ///
+ /// Returns true if CalculatePciStatusRequest instances are equal
+ ///
+ /// Instance of CalculatePciStatusRequest to be compared
+ /// Boolean
+ public bool Equals(CalculatePciStatusRequest input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.AdditionalSalesChannels == input.AdditionalSalesChannels ||
+ this.AdditionalSalesChannels.SequenceEqual(input.AdditionalSalesChannels)
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ hashCode = (hashCode * 59) + this.AdditionalSalesChannels.GetHashCode();
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/LegalEntityManagement/CalculatePciStatusResponse.cs b/Adyen/Model/LegalEntityManagement/CalculatePciStatusResponse.cs
new file mode 100644
index 000000000..9bd725077
--- /dev/null
+++ b/Adyen/Model/LegalEntityManagement/CalculatePciStatusResponse.cs
@@ -0,0 +1,125 @@
+/*
+* Legal Entity Management API
+*
+*
+* The version of the OpenAPI document: 3
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.LegalEntityManagement
+{
+ ///
+ /// CalculatePciStatusResponse
+ ///
+ [DataContract(Name = "CalculatePciStatusResponse")]
+ public partial class CalculatePciStatusResponse : IEquatable, IValidatableObject
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Indicates if the user is required to sign PCI questionnaires. If **false**, they do not need to sign any questionnaires..
+ public CalculatePciStatusResponse(bool? signingRequired = default(bool?))
+ {
+ this.SigningRequired = signingRequired;
+ }
+
+ ///
+ /// Indicates if the user is required to sign PCI questionnaires. If **false**, they do not need to sign any questionnaires.
+ ///
+ /// Indicates if the user is required to sign PCI questionnaires. If **false**, they do not need to sign any questionnaires.
+ [DataMember(Name = "signingRequired", EmitDefaultValue = false)]
+ public bool? SigningRequired { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class CalculatePciStatusResponse {\n");
+ sb.Append(" SigningRequired: ").Append(SigningRequired).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as CalculatePciStatusResponse);
+ }
+
+ ///
+ /// Returns true if CalculatePciStatusResponse instances are equal
+ ///
+ /// Instance of CalculatePciStatusResponse to be compared
+ /// Boolean
+ public bool Equals(CalculatePciStatusResponse input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.SigningRequired == input.SigningRequired ||
+ this.SigningRequired.Equals(input.SigningRequired)
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ hashCode = (hashCode * 59) + this.SigningRequired.GetHashCode();
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/LegalEntityManagement/Document.cs b/Adyen/Model/LegalEntityManagement/Document.cs
index b73cb57f2..1b1c0361f 100644
--- a/Adyen/Model/LegalEntityManagement/Document.cs
+++ b/Adyen/Model/LegalEntityManagement/Document.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.LegalEntityManagement
public partial class Document : IEquatable, IValidatableObject
{
///
- /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value can be **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
+ /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value is **constitutionalDocument**. * For **unincorporatedPartnership**, the `type` value is **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
///
- /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value can be **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
+ /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value is **constitutionalDocument**. * For **unincorporatedPartnership**, the `type` value is **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
[JsonConverter(typeof(StringEnumConverter))]
public enum TypeEnum
{
@@ -157,9 +157,9 @@ public enum TypeEnum
///
- /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value can be **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
+ /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value is **constitutionalDocument**. * For **unincorporatedPartnership**, the `type` value is **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
///
- /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value can be **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
+ /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value is **constitutionalDocument**. * For **unincorporatedPartnership**, the `type` value is **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
[DataMember(Name = "type", IsRequired = false, EmitDefaultValue = false)]
public TypeEnum Type { get; set; }
///
@@ -179,7 +179,7 @@ protected Document() { }
/// The state or province where the document was issued (AU only)..
/// The number in the document..
/// owner.
- /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value can be **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id). (required).
+ /// Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity type. * For **organization**, the `type` values can be **proofOfAddress**, **registrationDocument**, **vatDocument**, **proofOfOrganizationTaxInfo**, **proofOfOwnership**, **proofOfIndustry**, **proofOfSignatory**, or **proofOfFundingOrWealthSource**. * For **individual**, the `type` values can be **identityCard**, **driversLicense**, **passport**, **liveSelfie**, **proofOfNationalIdNumber**, **proofOfResidency**, **proofOfIndustry**, **proofOfIndividualTaxId**, **proofOfFundingOrWealthSource** or **proofOfRelationship**. * For **soleProprietorship**, the `type` values can be **constitutionalDocument**, **proofOfAddress**, or **proofOfIndustry**. * For **trust**, the `type` value is **constitutionalDocument**. * For **unincorporatedPartnership**, the `type` value is **constitutionalDocument**. * Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id). (required).
public Document(Attachment attachment = default(Attachment), List attachments = default(List), string description = default(string), string expiryDate = default(string), string fileName = default(string), string issuerCountry = default(string), string issuerState = default(string), string number = default(string), OwnerEntity owner = default(OwnerEntity), TypeEnum type = default(TypeEnum))
{
this.Description = description;
diff --git a/Adyen/Model/LegalEntityManagement/GeneratePciDescriptionResponse.cs b/Adyen/Model/LegalEntityManagement/GeneratePciDescriptionResponse.cs
index 0bb491c18..9de1904e3 100644
--- a/Adyen/Model/LegalEntityManagement/GeneratePciDescriptionResponse.cs
+++ b/Adyen/Model/LegalEntityManagement/GeneratePciDescriptionResponse.cs
@@ -37,7 +37,7 @@ public partial class GeneratePciDescriptionResponse : IEquatable
/// The generated questionnaires in a base64 encoded format..
/// The two-letter [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) language code for the questionnaire. For example, **en**..
- /// The array of Adyen-generated unique identifiers for the questionnaires..
+ /// The array of Adyen-generated unique identifiers for the questionnaires. If empty, the user is not required to sign questionnaires..
public GeneratePciDescriptionResponse(byte[] content = default(byte[]), string language = default(string), List pciTemplateReferences = default(List))
{
this.Content = content;
@@ -60,9 +60,9 @@ public partial class GeneratePciDescriptionResponse : IEquatable
- /// The array of Adyen-generated unique identifiers for the questionnaires.
+ /// The array of Adyen-generated unique identifiers for the questionnaires. If empty, the user is not required to sign questionnaires.
///
- /// The array of Adyen-generated unique identifiers for the questionnaires.
+ /// The array of Adyen-generated unique identifiers for the questionnaires. If empty, the user is not required to sign questionnaires.
[DataMember(Name = "pciTemplateReferences", EmitDefaultValue = false)]
public List PciTemplateReferences { get; set; }
diff --git a/Adyen/Model/LegalEntityManagement/LegalEntity.cs b/Adyen/Model/LegalEntityManagement/LegalEntity.cs
index 438e7f9b0..f2ded1904 100644
--- a/Adyen/Model/LegalEntityManagement/LegalEntity.cs
+++ b/Adyen/Model/LegalEntityManagement/LegalEntity.cs
@@ -96,8 +96,9 @@ protected LegalEntity() { }
/// soleProprietorship.
/// trust.
/// The type of legal entity. Possible values: **individual**, **organization**, **soleProprietorship**, or **trust**..
+ /// unincorporatedPartnership.
/// A key-value pair that specifies the verification process for a legal entity. Set to **upfront** for upfront verification for [marketplaces](https://docs.adyen.com/marketplaces/verification-overview/verification-types/#upfront-verification)..
- public LegalEntity(List documentDetails = default(List), List documents = default(List), List entityAssociations = default(List), Individual individual = default(Individual), Organization organization = default(Organization), List problems = default(List), string reference = default(string), SoleProprietorship soleProprietorship = default(SoleProprietorship), Trust trust = default(Trust), TypeEnum? type = default(TypeEnum?), string verificationPlan = default(string))
+ public LegalEntity(List documentDetails = default(List), List documents = default(List), List entityAssociations = default(List), Individual individual = default(Individual), Organization organization = default(Organization), List problems = default(List), string reference = default(string), SoleProprietorship soleProprietorship = default(SoleProprietorship), Trust trust = default(Trust), TypeEnum? type = default(TypeEnum?), UnincorporatedPartnership unincorporatedPartnership = default(UnincorporatedPartnership), string verificationPlan = default(string))
{
this.DocumentDetails = documentDetails;
this.Documents = documents;
@@ -109,6 +110,7 @@ protected LegalEntity() { }
this.SoleProprietorship = soleProprietorship;
this.Trust = trust;
this.Type = type;
+ this.UnincorporatedPartnership = unincorporatedPartnership;
this.VerificationPlan = verificationPlan;
}
@@ -193,6 +195,12 @@ protected LegalEntity() { }
[DataMember(Name = "trust", EmitDefaultValue = false)]
public Trust Trust { get; set; }
+ ///
+ /// Gets or Sets UnincorporatedPartnership
+ ///
+ [DataMember(Name = "unincorporatedPartnership", EmitDefaultValue = false)]
+ public UnincorporatedPartnership UnincorporatedPartnership { get; set; }
+
///
/// List of verification deadlines and the capabilities that will be disallowed if verification errors are not resolved.
///
@@ -228,6 +236,7 @@ public override string ToString()
sb.Append(" TransferInstruments: ").Append(TransferInstruments).Append("\n");
sb.Append(" Trust: ").Append(Trust).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
+ sb.Append(" UnincorporatedPartnership: ").Append(UnincorporatedPartnership).Append("\n");
sb.Append(" VerificationDeadlines: ").Append(VerificationDeadlines).Append("\n");
sb.Append(" VerificationPlan: ").Append(VerificationPlan).Append("\n");
sb.Append("}\n");
@@ -335,6 +344,11 @@ public bool Equals(LegalEntity input)
this.Type == input.Type ||
this.Type.Equals(input.Type)
) &&
+ (
+ this.UnincorporatedPartnership == input.UnincorporatedPartnership ||
+ (this.UnincorporatedPartnership != null &&
+ this.UnincorporatedPartnership.Equals(input.UnincorporatedPartnership))
+ ) &&
(
this.VerificationDeadlines == input.VerificationDeadlines ||
this.VerificationDeadlines != null &&
@@ -406,6 +420,10 @@ public override int GetHashCode()
hashCode = (hashCode * 59) + this.Trust.GetHashCode();
}
hashCode = (hashCode * 59) + this.Type.GetHashCode();
+ if (this.UnincorporatedPartnership != null)
+ {
+ hashCode = (hashCode * 59) + this.UnincorporatedPartnership.GetHashCode();
+ }
if (this.VerificationDeadlines != null)
{
hashCode = (hashCode * 59) + this.VerificationDeadlines.GetHashCode();
diff --git a/Adyen/Model/LegalEntityManagement/LegalEntityAssociation.cs b/Adyen/Model/LegalEntityManagement/LegalEntityAssociation.cs
index 1cc75315d..ba1278f94 100644
--- a/Adyen/Model/LegalEntityManagement/LegalEntityAssociation.cs
+++ b/Adyen/Model/LegalEntityManagement/LegalEntityAssociation.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.LegalEntityManagement
public partial class LegalEntityAssociation : IEquatable, IValidatableObject
{
///
- /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**.
+ /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**. Possible value for unincorporated partnership: **unincorporatedPartnership**. Possible values for unincorporated partnership members: **secondaryPartner**, **uboThroughControl**, **uboThroughOwnership**
///
- /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**.
+ /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**. Possible value for unincorporated partnership: **unincorporatedPartnership**. Possible values for unincorporated partnership members: **secondaryPartner**, **uboThroughControl**, **uboThroughOwnership**
[JsonConverter(typeof(StringEnumConverter))]
public enum TypeEnum
{
@@ -75,73 +75,85 @@ public enum TypeEnum
[EnumMember(Value = "protector")]
Protector = 6,
+ ///
+ /// Enum SecondaryPartner for value: secondaryPartner
+ ///
+ [EnumMember(Value = "secondaryPartner")]
+ SecondaryPartner = 7,
+
///
/// Enum SecondaryTrustee for value: secondaryTrustee
///
[EnumMember(Value = "secondaryTrustee")]
- SecondaryTrustee = 7,
+ SecondaryTrustee = 8,
///
/// Enum Settlor for value: settlor
///
[EnumMember(Value = "settlor")]
- Settlor = 8,
+ Settlor = 9,
///
/// Enum Signatory for value: signatory
///
[EnumMember(Value = "signatory")]
- Signatory = 9,
+ Signatory = 10,
///
/// Enum SoleProprietorship for value: soleProprietorship
///
[EnumMember(Value = "soleProprietorship")]
- SoleProprietorship = 10,
+ SoleProprietorship = 11,
///
/// Enum Trust for value: trust
///
[EnumMember(Value = "trust")]
- Trust = 11,
+ Trust = 12,
///
/// Enum TrustOwnership for value: trustOwnership
///
[EnumMember(Value = "trustOwnership")]
- TrustOwnership = 12,
+ TrustOwnership = 13,
///
/// Enum UboThroughControl for value: uboThroughControl
///
[EnumMember(Value = "uboThroughControl")]
- UboThroughControl = 13,
+ UboThroughControl = 14,
///
/// Enum UboThroughOwnership for value: uboThroughOwnership
///
[EnumMember(Value = "uboThroughOwnership")]
- UboThroughOwnership = 14,
+ UboThroughOwnership = 15,
///
/// Enum UltimateParentCompany for value: ultimateParentCompany
///
[EnumMember(Value = "ultimateParentCompany")]
- UltimateParentCompany = 15,
+ UltimateParentCompany = 16,
///
/// Enum UndefinedBeneficiary for value: undefinedBeneficiary
///
[EnumMember(Value = "undefinedBeneficiary")]
- UndefinedBeneficiary = 16
+ UndefinedBeneficiary = 17,
+
+ ///
+ /// Enum UnincorporatedPartnership for value: unincorporatedPartnership
+ ///
+ [EnumMember(Value = "unincorporatedPartnership")]
+ UnincorporatedPartnership = 18
}
///
- /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**.
+ /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**. Possible value for unincorporated partnership: **unincorporatedPartnership**. Possible values for unincorporated partnership members: **secondaryPartner**, **uboThroughControl**, **uboThroughOwnership**
///
- /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**.
+ /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**. Possible value for unincorporated partnership: **unincorporatedPartnership**. Possible values for unincorporated partnership members: **secondaryPartner**, **uboThroughControl**, **uboThroughOwnership**
[DataMember(Name = "type", IsRequired = false, EmitDefaultValue = false)]
public TypeEnum Type { get; set; }
///
@@ -155,13 +167,15 @@ protected LegalEntityAssociation() { }
/// The individual's job title if the `type` is **uboThroughControl** or **signatory**..
/// The unique identifier of the associated [legal entity](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities#responses-200-id). (required).
/// The individual's relationship to a legal representative if the `type` is **legalRepresentative**. Possible values: **parent**, **guardian**..
- /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**. (required).
- public LegalEntityAssociation(string jobTitle = default(string), string legalEntityId = default(string), string relationship = default(string), TypeEnum type = default(TypeEnum))
+ /// Defines the KYC exemption reason for a settlor associated with a trust. Only applicable to trusts in Australia. For example, **professionalServiceProvider**, **deceased**, or **contributionBelowThreshold**..
+ /// Defines the relationship of the legal entity to the current legal entity. Possible value for individuals: **legalRepresentative**. Possible values for organizations: **uboThroughOwnership**, **uboThroughControl**, **director**, **signatory**, or **ultimateParentCompany**. Possible values for sole proprietorships: **soleProprietorship**. Possible value for trusts: **trust**. Possible values for trust members: **definedBeneficiary**, **protector**, **secondaryTrustee**, **settlor**, **uboThroughControl**, or **uboThroughOwnership**. Possible value for unincorporated partnership: **unincorporatedPartnership**. Possible values for unincorporated partnership members: **secondaryPartner**, **uboThroughControl**, **uboThroughOwnership** (required).
+ public LegalEntityAssociation(string jobTitle = default(string), string legalEntityId = default(string), string relationship = default(string), List settlorExemptionReason = default(List), TypeEnum type = default(TypeEnum))
{
this.LegalEntityId = legalEntityId;
this.Type = type;
this.JobTitle = jobTitle;
this.Relationship = relationship;
+ this.SettlorExemptionReason = settlorExemptionReason;
}
///
@@ -207,11 +221,11 @@ protected LegalEntityAssociation() { }
public string Relationship { get; set; }
///
- /// Defines the Kyc Exemption Reason for a Settlor associated with a trust. For example, **professionalServiceProvider**, **deceased**, or **contributionBelowThreshold**.
+ /// Defines the KYC exemption reason for a settlor associated with a trust. Only applicable to trusts in Australia. For example, **professionalServiceProvider**, **deceased**, or **contributionBelowThreshold**.
///
- /// Defines the Kyc Exemption Reason for a Settlor associated with a trust. For example, **professionalServiceProvider**, **deceased**, or **contributionBelowThreshold**.
+ /// Defines the KYC exemption reason for a settlor associated with a trust. Only applicable to trusts in Australia. For example, **professionalServiceProvider**, **deceased**, or **contributionBelowThreshold**.
[DataMember(Name = "settlorExemptionReason", EmitDefaultValue = false)]
- public List SettlorExemptionReason { get; private set; }
+ public List SettlorExemptionReason { get; set; }
///
/// Returns the string presentation of the object
diff --git a/Adyen/Model/LegalEntityManagement/LegalEntityInfo.cs b/Adyen/Model/LegalEntityManagement/LegalEntityInfo.cs
index 9b4168eb4..c48107620 100644
--- a/Adyen/Model/LegalEntityManagement/LegalEntityInfo.cs
+++ b/Adyen/Model/LegalEntityManagement/LegalEntityInfo.cs
@@ -88,8 +88,9 @@ public enum TypeEnum
/// soleProprietorship.
/// trust.
/// The type of legal entity. Possible values: **individual**, **organization**, **soleProprietorship**, or **trust**..
+ /// unincorporatedPartnership.
/// A key-value pair that specifies the verification process for a legal entity. Set to **upfront** for upfront verification for [marketplaces](https://docs.adyen.com/marketplaces/verification-overview/verification-types/#upfront-verification)..
- public LegalEntityInfo(List entityAssociations = default(List), Individual individual = default(Individual), Organization organization = default(Organization), string reference = default(string), SoleProprietorship soleProprietorship = default(SoleProprietorship), Trust trust = default(Trust), TypeEnum? type = default(TypeEnum?), string verificationPlan = default(string))
+ public LegalEntityInfo(List entityAssociations = default(List), Individual individual = default(Individual), Organization organization = default(Organization), string reference = default(string), SoleProprietorship soleProprietorship = default(SoleProprietorship), Trust trust = default(Trust), TypeEnum? type = default(TypeEnum?), UnincorporatedPartnership unincorporatedPartnership = default(UnincorporatedPartnership), string verificationPlan = default(string))
{
this.EntityAssociations = entityAssociations;
this.Individual = individual;
@@ -98,6 +99,7 @@ public enum TypeEnum
this.SoleProprietorship = soleProprietorship;
this.Trust = trust;
this.Type = type;
+ this.UnincorporatedPartnership = unincorporatedPartnership;
this.VerificationPlan = verificationPlan;
}
@@ -146,6 +148,12 @@ public enum TypeEnum
[DataMember(Name = "trust", EmitDefaultValue = false)]
public Trust Trust { get; set; }
+ ///
+ /// Gets or Sets UnincorporatedPartnership
+ ///
+ [DataMember(Name = "unincorporatedPartnership", EmitDefaultValue = false)]
+ public UnincorporatedPartnership UnincorporatedPartnership { get; set; }
+
///
/// A key-value pair that specifies the verification process for a legal entity. Set to **upfront** for upfront verification for [marketplaces](https://docs.adyen.com/marketplaces/verification-overview/verification-types/#upfront-verification).
///
@@ -169,6 +177,7 @@ public override string ToString()
sb.Append(" SoleProprietorship: ").Append(SoleProprietorship).Append("\n");
sb.Append(" Trust: ").Append(Trust).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
+ sb.Append(" UnincorporatedPartnership: ").Append(UnincorporatedPartnership).Append("\n");
sb.Append(" VerificationPlan: ").Append(VerificationPlan).Append("\n");
sb.Append("}\n");
return sb.ToString();
@@ -246,6 +255,11 @@ public bool Equals(LegalEntityInfo input)
this.Type == input.Type ||
this.Type.Equals(input.Type)
) &&
+ (
+ this.UnincorporatedPartnership == input.UnincorporatedPartnership ||
+ (this.UnincorporatedPartnership != null &&
+ this.UnincorporatedPartnership.Equals(input.UnincorporatedPartnership))
+ ) &&
(
this.VerificationPlan == input.VerificationPlan ||
(this.VerificationPlan != null &&
@@ -291,6 +305,10 @@ public override int GetHashCode()
hashCode = (hashCode * 59) + this.Trust.GetHashCode();
}
hashCode = (hashCode * 59) + this.Type.GetHashCode();
+ if (this.UnincorporatedPartnership != null)
+ {
+ hashCode = (hashCode * 59) + this.UnincorporatedPartnership.GetHashCode();
+ }
if (this.VerificationPlan != null)
{
hashCode = (hashCode * 59) + this.VerificationPlan.GetHashCode();
diff --git a/Adyen/Model/LegalEntityManagement/LegalEntityInfoRequiredType.cs b/Adyen/Model/LegalEntityManagement/LegalEntityInfoRequiredType.cs
index f2cd20779..f19702852 100644
--- a/Adyen/Model/LegalEntityManagement/LegalEntityInfoRequiredType.cs
+++ b/Adyen/Model/LegalEntityManagement/LegalEntityInfoRequiredType.cs
@@ -93,8 +93,9 @@ protected LegalEntityInfoRequiredType() { }
/// soleProprietorship.
/// trust.
/// The type of legal entity. Possible values: **individual**, **organization**, **soleProprietorship**, or **trust**. (required).
+ /// unincorporatedPartnership.
/// A key-value pair that specifies the verification process for a legal entity. Set to **upfront** for upfront verification for [marketplaces](https://docs.adyen.com/marketplaces/verification-overview/verification-types/#upfront-verification)..
- public LegalEntityInfoRequiredType(List entityAssociations = default(List), Individual individual = default(Individual), Organization organization = default(Organization), string reference = default(string), SoleProprietorship soleProprietorship = default(SoleProprietorship), Trust trust = default(Trust), TypeEnum type = default(TypeEnum), string verificationPlan = default(string))
+ public LegalEntityInfoRequiredType(List entityAssociations = default(List), Individual individual = default(Individual), Organization organization = default(Organization), string reference = default(string), SoleProprietorship soleProprietorship = default(SoleProprietorship), Trust trust = default(Trust), TypeEnum type = default(TypeEnum), UnincorporatedPartnership unincorporatedPartnership = default(UnincorporatedPartnership), string verificationPlan = default(string))
{
this.Type = type;
this.EntityAssociations = entityAssociations;
@@ -103,6 +104,7 @@ protected LegalEntityInfoRequiredType() { }
this.Reference = reference;
this.SoleProprietorship = soleProprietorship;
this.Trust = trust;
+ this.UnincorporatedPartnership = unincorporatedPartnership;
this.VerificationPlan = verificationPlan;
}
@@ -151,6 +153,12 @@ protected LegalEntityInfoRequiredType() { }
[DataMember(Name = "trust", EmitDefaultValue = false)]
public Trust Trust { get; set; }
+ ///
+ /// Gets or Sets UnincorporatedPartnership
+ ///
+ [DataMember(Name = "unincorporatedPartnership", EmitDefaultValue = false)]
+ public UnincorporatedPartnership UnincorporatedPartnership { get; set; }
+
///
/// A key-value pair that specifies the verification process for a legal entity. Set to **upfront** for upfront verification for [marketplaces](https://docs.adyen.com/marketplaces/verification-overview/verification-types/#upfront-verification).
///
@@ -174,6 +182,7 @@ public override string ToString()
sb.Append(" SoleProprietorship: ").Append(SoleProprietorship).Append("\n");
sb.Append(" Trust: ").Append(Trust).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
+ sb.Append(" UnincorporatedPartnership: ").Append(UnincorporatedPartnership).Append("\n");
sb.Append(" VerificationPlan: ").Append(VerificationPlan).Append("\n");
sb.Append("}\n");
return sb.ToString();
@@ -251,6 +260,11 @@ public bool Equals(LegalEntityInfoRequiredType input)
this.Type == input.Type ||
this.Type.Equals(input.Type)
) &&
+ (
+ this.UnincorporatedPartnership == input.UnincorporatedPartnership ||
+ (this.UnincorporatedPartnership != null &&
+ this.UnincorporatedPartnership.Equals(input.UnincorporatedPartnership))
+ ) &&
(
this.VerificationPlan == input.VerificationPlan ||
(this.VerificationPlan != null &&
@@ -296,6 +310,10 @@ public override int GetHashCode()
hashCode = (hashCode * 59) + this.Trust.GetHashCode();
}
hashCode = (hashCode * 59) + this.Type.GetHashCode();
+ if (this.UnincorporatedPartnership != null)
+ {
+ hashCode = (hashCode * 59) + this.UnincorporatedPartnership.GetHashCode();
+ }
if (this.VerificationPlan != null)
{
hashCode = (hashCode * 59) + this.VerificationPlan.GetHashCode();
diff --git a/Adyen/Model/LegalEntityManagement/UnincorporatedPartnership.cs b/Adyen/Model/LegalEntityManagement/UnincorporatedPartnership.cs
new file mode 100644
index 000000000..a4b8fd4eb
--- /dev/null
+++ b/Adyen/Model/LegalEntityManagement/UnincorporatedPartnership.cs
@@ -0,0 +1,532 @@
+/*
+* Legal Entity Management API
+*
+*
+* The version of the OpenAPI document: 3
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.LegalEntityManagement
+{
+ ///
+ /// UnincorporatedPartnership
+ ///
+ [DataContract(Name = "UnincorporatedPartnership")]
+ public partial class UnincorporatedPartnership : IEquatable, IValidatableObject
+ {
+ ///
+ /// Type of Partnership. Possible values: * **limitedPartnership** * **generalPartnership** * **familyPartnership** * **commercialPartnership** * **publicPartnership** * **otherPartnership** * **gbr** * **gmbh** * **kgaa** * **cv** * **vof** * **maatschap** * **privateFundLimitedPartnership** * **businessTrustEntity** * **businessPartnership** * **limitedLiabilityPartnership** * **eg** * **cooperative** * **vos** * **comunidadDeBienes** * **herenciaYacente** * **comunidadDePropietarios** * **sep** * **sca** * **bt** * **kkt** * **scs** * **snc**
+ ///
+ /// Type of Partnership. Possible values: * **limitedPartnership** * **generalPartnership** * **familyPartnership** * **commercialPartnership** * **publicPartnership** * **otherPartnership** * **gbr** * **gmbh** * **kgaa** * **cv** * **vof** * **maatschap** * **privateFundLimitedPartnership** * **businessTrustEntity** * **businessPartnership** * **limitedLiabilityPartnership** * **eg** * **cooperative** * **vos** * **comunidadDeBienes** * **herenciaYacente** * **comunidadDePropietarios** * **sep** * **sca** * **bt** * **kkt** * **scs** * **snc**
+ [JsonConverter(typeof(StringEnumConverter))]
+ public enum TypeEnum
+ {
+ ///
+ /// Enum LimitedPartnership for value: limitedPartnership
+ ///
+ [EnumMember(Value = "limitedPartnership")]
+ LimitedPartnership = 1,
+
+ ///
+ /// Enum GeneralPartnership for value: generalPartnership
+ ///
+ [EnumMember(Value = "generalPartnership")]
+ GeneralPartnership = 2,
+
+ ///
+ /// Enum FamilyPartnership for value: familyPartnership
+ ///
+ [EnumMember(Value = "familyPartnership")]
+ FamilyPartnership = 3,
+
+ ///
+ /// Enum CommercialPartnership for value: commercialPartnership
+ ///
+ [EnumMember(Value = "commercialPartnership")]
+ CommercialPartnership = 4,
+
+ ///
+ /// Enum PublicPartnership for value: publicPartnership
+ ///
+ [EnumMember(Value = "publicPartnership")]
+ PublicPartnership = 5,
+
+ ///
+ /// Enum OtherPartnership for value: otherPartnership
+ ///
+ [EnumMember(Value = "otherPartnership")]
+ OtherPartnership = 6,
+
+ ///
+ /// Enum Gbr for value: gbr
+ ///
+ [EnumMember(Value = "gbr")]
+ Gbr = 7,
+
+ ///
+ /// Enum Gmbh for value: gmbh
+ ///
+ [EnumMember(Value = "gmbh")]
+ Gmbh = 8,
+
+ ///
+ /// Enum Kgaa for value: kgaa
+ ///
+ [EnumMember(Value = "kgaa")]
+ Kgaa = 9,
+
+ ///
+ /// Enum Cv for value: cv
+ ///
+ [EnumMember(Value = "cv")]
+ Cv = 10,
+
+ ///
+ /// Enum Vof for value: vof
+ ///
+ [EnumMember(Value = "vof")]
+ Vof = 11,
+
+ ///
+ /// Enum Maatschap for value: maatschap
+ ///
+ [EnumMember(Value = "maatschap")]
+ Maatschap = 12,
+
+ ///
+ /// Enum PrivateFundLimitedPartnership for value: privateFundLimitedPartnership
+ ///
+ [EnumMember(Value = "privateFundLimitedPartnership")]
+ PrivateFundLimitedPartnership = 13,
+
+ ///
+ /// Enum BusinessTrustEntity for value: businessTrustEntity
+ ///
+ [EnumMember(Value = "businessTrustEntity")]
+ BusinessTrustEntity = 14,
+
+ ///
+ /// Enum BusinessPartnership for value: businessPartnership
+ ///
+ [EnumMember(Value = "businessPartnership")]
+ BusinessPartnership = 15,
+
+ ///
+ /// Enum LimitedLiabilityPartnership for value: limitedLiabilityPartnership
+ ///
+ [EnumMember(Value = "limitedLiabilityPartnership")]
+ LimitedLiabilityPartnership = 16,
+
+ ///
+ /// Enum Eg for value: eg
+ ///
+ [EnumMember(Value = "eg")]
+ Eg = 17,
+
+ ///
+ /// Enum Cooperative for value: cooperative
+ ///
+ [EnumMember(Value = "cooperative")]
+ Cooperative = 18,
+
+ ///
+ /// Enum Vos for value: vos
+ ///
+ [EnumMember(Value = "vos")]
+ Vos = 19,
+
+ ///
+ /// Enum ComunidadDeBienes for value: comunidadDeBienes
+ ///
+ [EnumMember(Value = "comunidadDeBienes")]
+ ComunidadDeBienes = 20,
+
+ ///
+ /// Enum HerenciaYacente for value: herenciaYacente
+ ///
+ [EnumMember(Value = "herenciaYacente")]
+ HerenciaYacente = 21,
+
+ ///
+ /// Enum ComunidadDePropietarios for value: comunidadDePropietarios
+ ///
+ [EnumMember(Value = "comunidadDePropietarios")]
+ ComunidadDePropietarios = 22,
+
+ ///
+ /// Enum Sep for value: sep
+ ///
+ [EnumMember(Value = "sep")]
+ Sep = 23,
+
+ ///
+ /// Enum Sca for value: sca
+ ///
+ [EnumMember(Value = "sca")]
+ Sca = 24,
+
+ ///
+ /// Enum Bt for value: bt
+ ///
+ [EnumMember(Value = "bt")]
+ Bt = 25,
+
+ ///
+ /// Enum Kkt for value: kkt
+ ///
+ [EnumMember(Value = "kkt")]
+ Kkt = 26,
+
+ ///
+ /// Enum Scs for value: scs
+ ///
+ [EnumMember(Value = "scs")]
+ Scs = 27,
+
+ ///
+ /// Enum Snc for value: snc
+ ///
+ [EnumMember(Value = "snc")]
+ Snc = 28
+
+ }
+
+
+ ///
+ /// Type of Partnership. Possible values: * **limitedPartnership** * **generalPartnership** * **familyPartnership** * **commercialPartnership** * **publicPartnership** * **otherPartnership** * **gbr** * **gmbh** * **kgaa** * **cv** * **vof** * **maatschap** * **privateFundLimitedPartnership** * **businessTrustEntity** * **businessPartnership** * **limitedLiabilityPartnership** * **eg** * **cooperative** * **vos** * **comunidadDeBienes** * **herenciaYacente** * **comunidadDePropietarios** * **sep** * **sca** * **bt** * **kkt** * **scs** * **snc**
+ ///
+ /// Type of Partnership. Possible values: * **limitedPartnership** * **generalPartnership** * **familyPartnership** * **commercialPartnership** * **publicPartnership** * **otherPartnership** * **gbr** * **gmbh** * **kgaa** * **cv** * **vof** * **maatschap** * **privateFundLimitedPartnership** * **businessTrustEntity** * **businessPartnership** * **limitedLiabilityPartnership** * **eg** * **cooperative** * **vos** * **comunidadDeBienes** * **herenciaYacente** * **comunidadDePropietarios** * **sep** * **sca** * **bt** * **kkt** * **scs** * **snc**
+ [DataMember(Name = "type", EmitDefaultValue = false)]
+ public TypeEnum? Type { get; set; }
+ ///
+ /// The reason for not providing a VAT number. Possible values: **industryExemption**, **belowTaxThreshold**.
+ ///
+ /// The reason for not providing a VAT number. Possible values: **industryExemption**, **belowTaxThreshold**.
+ [JsonConverter(typeof(StringEnumConverter))]
+ public enum VatAbsenceReasonEnum
+ {
+ ///
+ /// Enum IndustryExemption for value: industryExemption
+ ///
+ [EnumMember(Value = "industryExemption")]
+ IndustryExemption = 1,
+
+ ///
+ /// Enum BelowTaxThreshold for value: belowTaxThreshold
+ ///
+ [EnumMember(Value = "belowTaxThreshold")]
+ BelowTaxThreshold = 2
+
+ }
+
+
+ ///
+ /// The reason for not providing a VAT number. Possible values: **industryExemption**, **belowTaxThreshold**.
+ ///
+ /// The reason for not providing a VAT number. Possible values: **industryExemption**, **belowTaxThreshold**.
+ [DataMember(Name = "vatAbsenceReason", EmitDefaultValue = false)]
+ public VatAbsenceReasonEnum? VatAbsenceReason { get; set; }
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ [JsonConstructorAttribute]
+ protected UnincorporatedPartnership() { }
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code of the governing country. (required).
+ /// The date when the legal arrangement was incorporated in YYYY-MM-DD format..
+ /// Short description about the Legal Arrangement..
+ /// The registered name, if different from the `name`..
+ /// The legal name. (required).
+ /// principalPlaceOfBusiness.
+ /// registeredAddress (required).
+ /// The registration number..
+ /// The tax information of the entity..
+ /// Type of Partnership. Possible values: * **limitedPartnership** * **generalPartnership** * **familyPartnership** * **commercialPartnership** * **publicPartnership** * **otherPartnership** * **gbr** * **gmbh** * **kgaa** * **cv** * **vof** * **maatschap** * **privateFundLimitedPartnership** * **businessTrustEntity** * **businessPartnership** * **limitedLiabilityPartnership** * **eg** * **cooperative** * **vos** * **comunidadDeBienes** * **herenciaYacente** * **comunidadDePropietarios** * **sep** * **sca** * **bt** * **kkt** * **scs** * **snc** .
+ /// The reason for not providing a VAT number. Possible values: **industryExemption**, **belowTaxThreshold**..
+ /// The VAT number..
+ public UnincorporatedPartnership(string countryOfGoverningLaw = default(string), string dateOfIncorporation = default(string), string description = default(string), string doingBusinessAs = default(string), string name = default(string), Address principalPlaceOfBusiness = default(Address), Address registeredAddress = default(Address), string registrationNumber = default(string), List taxInformation = default(List), TypeEnum? type = default(TypeEnum?), VatAbsenceReasonEnum? vatAbsenceReason = default(VatAbsenceReasonEnum?), string vatNumber = default(string))
+ {
+ this.CountryOfGoverningLaw = countryOfGoverningLaw;
+ this.Name = name;
+ this.RegisteredAddress = registeredAddress;
+ this.DateOfIncorporation = dateOfIncorporation;
+ this.Description = description;
+ this.DoingBusinessAs = doingBusinessAs;
+ this.PrincipalPlaceOfBusiness = principalPlaceOfBusiness;
+ this.RegistrationNumber = registrationNumber;
+ this.TaxInformation = taxInformation;
+ this.Type = type;
+ this.VatAbsenceReason = vatAbsenceReason;
+ this.VatNumber = vatNumber;
+ }
+
+ ///
+ /// The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code of the governing country.
+ ///
+ /// The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code of the governing country.
+ [DataMember(Name = "countryOfGoverningLaw", IsRequired = false, EmitDefaultValue = false)]
+ public string CountryOfGoverningLaw { get; set; }
+
+ ///
+ /// The date when the legal arrangement was incorporated in YYYY-MM-DD format.
+ ///
+ /// The date when the legal arrangement was incorporated in YYYY-MM-DD format.
+ [DataMember(Name = "dateOfIncorporation", EmitDefaultValue = false)]
+ public string DateOfIncorporation { get; set; }
+
+ ///
+ /// Short description about the Legal Arrangement.
+ ///
+ /// Short description about the Legal Arrangement.
+ [DataMember(Name = "description", EmitDefaultValue = false)]
+ public string Description { get; set; }
+
+ ///
+ /// The registered name, if different from the `name`.
+ ///
+ /// The registered name, if different from the `name`.
+ [DataMember(Name = "doingBusinessAs", EmitDefaultValue = false)]
+ public string DoingBusinessAs { get; set; }
+
+ ///
+ /// The legal name.
+ ///
+ /// The legal name.
+ [DataMember(Name = "name", IsRequired = false, EmitDefaultValue = false)]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or Sets PrincipalPlaceOfBusiness
+ ///
+ [DataMember(Name = "principalPlaceOfBusiness", EmitDefaultValue = false)]
+ public Address PrincipalPlaceOfBusiness { get; set; }
+
+ ///
+ /// Gets or Sets RegisteredAddress
+ ///
+ [DataMember(Name = "registeredAddress", IsRequired = false, EmitDefaultValue = false)]
+ public Address RegisteredAddress { get; set; }
+
+ ///
+ /// The registration number.
+ ///
+ /// The registration number.
+ [DataMember(Name = "registrationNumber", EmitDefaultValue = false)]
+ public string RegistrationNumber { get; set; }
+
+ ///
+ /// The tax information of the entity.
+ ///
+ /// The tax information of the entity.
+ [DataMember(Name = "taxInformation", EmitDefaultValue = false)]
+ public List TaxInformation { get; set; }
+
+ ///
+ /// The VAT number.
+ ///
+ /// The VAT number.
+ [DataMember(Name = "vatNumber", EmitDefaultValue = false)]
+ public string VatNumber { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class UnincorporatedPartnership {\n");
+ sb.Append(" CountryOfGoverningLaw: ").Append(CountryOfGoverningLaw).Append("\n");
+ sb.Append(" DateOfIncorporation: ").Append(DateOfIncorporation).Append("\n");
+ sb.Append(" Description: ").Append(Description).Append("\n");
+ sb.Append(" DoingBusinessAs: ").Append(DoingBusinessAs).Append("\n");
+ sb.Append(" Name: ").Append(Name).Append("\n");
+ sb.Append(" PrincipalPlaceOfBusiness: ").Append(PrincipalPlaceOfBusiness).Append("\n");
+ sb.Append(" RegisteredAddress: ").Append(RegisteredAddress).Append("\n");
+ sb.Append(" RegistrationNumber: ").Append(RegistrationNumber).Append("\n");
+ sb.Append(" TaxInformation: ").Append(TaxInformation).Append("\n");
+ sb.Append(" Type: ").Append(Type).Append("\n");
+ sb.Append(" VatAbsenceReason: ").Append(VatAbsenceReason).Append("\n");
+ sb.Append(" VatNumber: ").Append(VatNumber).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as UnincorporatedPartnership);
+ }
+
+ ///
+ /// Returns true if UnincorporatedPartnership instances are equal
+ ///
+ /// Instance of UnincorporatedPartnership to be compared
+ /// Boolean
+ public bool Equals(UnincorporatedPartnership input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.CountryOfGoverningLaw == input.CountryOfGoverningLaw ||
+ (this.CountryOfGoverningLaw != null &&
+ this.CountryOfGoverningLaw.Equals(input.CountryOfGoverningLaw))
+ ) &&
+ (
+ this.DateOfIncorporation == input.DateOfIncorporation ||
+ (this.DateOfIncorporation != null &&
+ this.DateOfIncorporation.Equals(input.DateOfIncorporation))
+ ) &&
+ (
+ this.Description == input.Description ||
+ (this.Description != null &&
+ this.Description.Equals(input.Description))
+ ) &&
+ (
+ this.DoingBusinessAs == input.DoingBusinessAs ||
+ (this.DoingBusinessAs != null &&
+ this.DoingBusinessAs.Equals(input.DoingBusinessAs))
+ ) &&
+ (
+ this.Name == input.Name ||
+ (this.Name != null &&
+ this.Name.Equals(input.Name))
+ ) &&
+ (
+ this.PrincipalPlaceOfBusiness == input.PrincipalPlaceOfBusiness ||
+ (this.PrincipalPlaceOfBusiness != null &&
+ this.PrincipalPlaceOfBusiness.Equals(input.PrincipalPlaceOfBusiness))
+ ) &&
+ (
+ this.RegisteredAddress == input.RegisteredAddress ||
+ (this.RegisteredAddress != null &&
+ this.RegisteredAddress.Equals(input.RegisteredAddress))
+ ) &&
+ (
+ this.RegistrationNumber == input.RegistrationNumber ||
+ (this.RegistrationNumber != null &&
+ this.RegistrationNumber.Equals(input.RegistrationNumber))
+ ) &&
+ (
+ this.TaxInformation == input.TaxInformation ||
+ this.TaxInformation != null &&
+ input.TaxInformation != null &&
+ this.TaxInformation.SequenceEqual(input.TaxInformation)
+ ) &&
+ (
+ this.Type == input.Type ||
+ this.Type.Equals(input.Type)
+ ) &&
+ (
+ this.VatAbsenceReason == input.VatAbsenceReason ||
+ this.VatAbsenceReason.Equals(input.VatAbsenceReason)
+ ) &&
+ (
+ this.VatNumber == input.VatNumber ||
+ (this.VatNumber != null &&
+ this.VatNumber.Equals(input.VatNumber))
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.CountryOfGoverningLaw != null)
+ {
+ hashCode = (hashCode * 59) + this.CountryOfGoverningLaw.GetHashCode();
+ }
+ if (this.DateOfIncorporation != null)
+ {
+ hashCode = (hashCode * 59) + this.DateOfIncorporation.GetHashCode();
+ }
+ if (this.Description != null)
+ {
+ hashCode = (hashCode * 59) + this.Description.GetHashCode();
+ }
+ if (this.DoingBusinessAs != null)
+ {
+ hashCode = (hashCode * 59) + this.DoingBusinessAs.GetHashCode();
+ }
+ if (this.Name != null)
+ {
+ hashCode = (hashCode * 59) + this.Name.GetHashCode();
+ }
+ if (this.PrincipalPlaceOfBusiness != null)
+ {
+ hashCode = (hashCode * 59) + this.PrincipalPlaceOfBusiness.GetHashCode();
+ }
+ if (this.RegisteredAddress != null)
+ {
+ hashCode = (hashCode * 59) + this.RegisteredAddress.GetHashCode();
+ }
+ if (this.RegistrationNumber != null)
+ {
+ hashCode = (hashCode * 59) + this.RegistrationNumber.GetHashCode();
+ }
+ if (this.TaxInformation != null)
+ {
+ hashCode = (hashCode * 59) + this.TaxInformation.GetHashCode();
+ }
+ hashCode = (hashCode * 59) + this.Type.GetHashCode();
+ hashCode = (hashCode * 59) + this.VatAbsenceReason.GetHashCode();
+ if (this.VatNumber != null)
+ {
+ hashCode = (hashCode * 59) + this.VatNumber.GetHashCode();
+ }
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/Payout/Amount.cs b/Adyen/Model/Payout/Amount.cs
index 2e1103463..cbd0cd634 100644
--- a/Adyen/Model/Payout/Amount.cs
+++ b/Adyen/Model/Payout/Amount.cs
@@ -40,8 +40,8 @@ protected Amount() { }
///
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/Payout/ResponseAdditionalDataCard.cs b/Adyen/Model/Payout/ResponseAdditionalDataCard.cs
index f8771bd05..19528be32 100644
--- a/Adyen/Model/Payout/ResponseAdditionalDataCard.cs
+++ b/Adyen/Model/Payout/ResponseAdditionalDataCard.cs
@@ -32,6 +32,88 @@ namespace Adyen.Model.Payout
[DataContract(Name = "ResponseAdditionalDataCard")]
public partial class ResponseAdditionalDataCard : IEquatable, IValidatableObject
{
+ ///
+ /// The Card Product ID represents the type of card following card scheme product definitions and can be returned for Adyen Acquiring service level payments. Possible values Visa: * **A** - Visa Traditional * **B** - Visa Traditional Rewards * **C** - Visa Signature * **D** - Visa Signature Preferred * **F** - Visa Classic Possible values Mastercard: * **MCC** - Mastercard Card * **MCE** - Mastercard Electronic Card * **MCF** - Mastercard Corporate Fleet Card * **MCG** - Gold Mastercard Card * **MCH** - Mastercard Premium Charge * **MCI** - Mastercard Select Debit
+ ///
+ /// The Card Product ID represents the type of card following card scheme product definitions and can be returned for Adyen Acquiring service level payments. Possible values Visa: * **A** - Visa Traditional * **B** - Visa Traditional Rewards * **C** - Visa Signature * **D** - Visa Signature Preferred * **F** - Visa Classic Possible values Mastercard: * **MCC** - Mastercard Card * **MCE** - Mastercard Electronic Card * **MCF** - Mastercard Corporate Fleet Card * **MCG** - Gold Mastercard Card * **MCH** - Mastercard Premium Charge * **MCI** - Mastercard Select Debit
+ [JsonConverter(typeof(StringEnumConverter))]
+ public enum CardProductIdEnum
+ {
+ ///
+ /// Enum A for value: A
+ ///
+ [EnumMember(Value = "A")]
+ A = 1,
+
+ ///
+ /// Enum B for value: B
+ ///
+ [EnumMember(Value = "B")]
+ B = 2,
+
+ ///
+ /// Enum C for value: C
+ ///
+ [EnumMember(Value = "C")]
+ C = 3,
+
+ ///
+ /// Enum D for value: D
+ ///
+ [EnumMember(Value = "D")]
+ D = 4,
+
+ ///
+ /// Enum F for value: F
+ ///
+ [EnumMember(Value = "F")]
+ F = 5,
+
+ ///
+ /// Enum MCC for value: MCC
+ ///
+ [EnumMember(Value = "MCC")]
+ MCC = 6,
+
+ ///
+ /// Enum MCE for value: MCE
+ ///
+ [EnumMember(Value = "MCE")]
+ MCE = 7,
+
+ ///
+ /// Enum MCF for value: MCF
+ ///
+ [EnumMember(Value = "MCF")]
+ MCF = 8,
+
+ ///
+ /// Enum MCG for value: MCG
+ ///
+ [EnumMember(Value = "MCG")]
+ MCG = 9,
+
+ ///
+ /// Enum MCH for value: MCH
+ ///
+ [EnumMember(Value = "MCH")]
+ MCH = 10,
+
+ ///
+ /// Enum MCI for value: MCI
+ ///
+ [EnumMember(Value = "MCI")]
+ MCI = 11
+
+ }
+
+
+ ///
+ /// The Card Product ID represents the type of card following card scheme product definitions and can be returned for Adyen Acquiring service level payments. Possible values Visa: * **A** - Visa Traditional * **B** - Visa Traditional Rewards * **C** - Visa Signature * **D** - Visa Signature Preferred * **F** - Visa Classic Possible values Mastercard: * **MCC** - Mastercard Card * **MCE** - Mastercard Electronic Card * **MCF** - Mastercard Corporate Fleet Card * **MCG** - Gold Mastercard Card * **MCH** - Mastercard Premium Charge * **MCI** - Mastercard Select Debit
+ ///
+ /// The Card Product ID represents the type of card following card scheme product definitions and can be returned for Adyen Acquiring service level payments. Possible values Visa: * **A** - Visa Traditional * **B** - Visa Traditional Rewards * **C** - Visa Signature * **D** - Visa Signature Preferred * **F** - Visa Classic Possible values Mastercard: * **MCC** - Mastercard Card * **MCE** - Mastercard Electronic Card * **MCF** - Mastercard Corporate Fleet Card * **MCG** - Gold Mastercard Card * **MCH** - Mastercard Premium Charge * **MCI** - Mastercard Select Debit
+ [DataMember(Name = "cardProductId", EmitDefaultValue = false)]
+ public CardProductIdEnum? CardProductId { get; set; }
///
/// Initializes a new instance of the class.
///
@@ -41,9 +123,10 @@ public partial class ResponseAdditionalDataCard : IEquatableThe country where the card was issued. Example: US.
/// The currency in which the card is issued, if this information is available. Provided as the currency code or currency number from the ISO-4217 standard. Example: USD.
/// The card payment method used for the transaction. Example: amex.
+ /// The Card Product ID represents the type of card following card scheme product definitions and can be returned for Adyen Acquiring service level payments. Possible values Visa: * **A** - Visa Traditional * **B** - Visa Traditional Rewards * **C** - Visa Signature * **D** - Visa Signature Preferred * **F** - Visa Classic Possible values Mastercard: * **MCC** - Mastercard Card * **MCE** - Mastercard Electronic Card * **MCF** - Mastercard Corporate Fleet Card * **MCG** - Gold Mastercard Card * **MCH** - Mastercard Premium Charge * **MCI** - Mastercard Select Debit .
/// The last four digits of a card number. > Returned only in case of a card payment..
/// The first eight digits of the card number. Only returned if the card number is 16 digits or more. This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN. Example: 52123423.
- public ResponseAdditionalDataCard(string cardBin = default(string), string cardHolderName = default(string), string cardIssuingBank = default(string), string cardIssuingCountry = default(string), string cardIssuingCurrency = default(string), string cardPaymentMethod = default(string), string cardSummary = default(string), string issuerBin = default(string))
+ public ResponseAdditionalDataCard(string cardBin = default(string), string cardHolderName = default(string), string cardIssuingBank = default(string), string cardIssuingCountry = default(string), string cardIssuingCurrency = default(string), string cardPaymentMethod = default(string), CardProductIdEnum? cardProductId = default(CardProductIdEnum?), string cardSummary = default(string), string issuerBin = default(string))
{
this.CardBin = cardBin;
this.CardHolderName = cardHolderName;
@@ -51,6 +134,7 @@ public partial class ResponseAdditionalDataCard : IEquatable
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/TransactionWebhooks/Amount.cs b/Adyen/Model/TransactionWebhooks/Amount.cs
index f4132e02d..27c938e95 100644
--- a/Adyen/Model/TransactionWebhooks/Amount.cs
+++ b/Adyen/Model/TransactionWebhooks/Amount.cs
@@ -40,8 +40,8 @@ protected Amount() { }
///
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/TransactionWebhooks/PlatformPayment.cs b/Adyen/Model/TransactionWebhooks/PlatformPayment.cs
index aee400b05..7914c9b77 100644
--- a/Adyen/Model/TransactionWebhooks/PlatformPayment.cs
+++ b/Adyen/Model/TransactionWebhooks/PlatformPayment.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.TransactionWebhooks
public partial class PlatformPayment : IEquatable, IValidatableObject
{
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
[JsonConverter(typeof(StringEnumConverter))]
public enum PlatformPaymentTypeEnum
{
@@ -133,9 +133,9 @@ public enum PlatformPaymentTypeEnum
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
[DataMember(Name = "platformPaymentType", EmitDefaultValue = false)]
public PlatformPaymentTypeEnum? PlatformPaymentType { get; set; }
///
@@ -166,7 +166,7 @@ public enum TypeEnum
/// The capture's merchant reference included in the transfer..
/// The capture reference included in the transfer..
/// The payment's merchant reference included in the transfer..
- /// The type of the related split..
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax..
/// The payment reference included in the transfer..
/// **platformPayment** (default to TypeEnum.PlatformPayment).
public PlatformPayment(string modificationMerchantReference = default(string), string modificationPspReference = default(string), string paymentMerchantReference = default(string), PlatformPaymentTypeEnum? platformPaymentType = default(PlatformPaymentTypeEnum?), string pspPaymentReference = default(string), TypeEnum? type = TypeEnum.PlatformPayment)
diff --git a/Adyen/Model/TransactionWebhooks/TransactionNotificationRequestV4.cs b/Adyen/Model/TransactionWebhooks/TransactionNotificationRequestV4.cs
index 6fdb6e08f..767484e66 100644
--- a/Adyen/Model/TransactionWebhooks/TransactionNotificationRequestV4.cs
+++ b/Adyen/Model/TransactionWebhooks/TransactionNotificationRequestV4.cs
@@ -64,11 +64,13 @@ protected TransactionNotificationRequestV4() { }
///
/// data (required).
/// The environment from which the webhook originated. Possible values: **test**, **live**. (required).
+ /// When the event was queued..
/// Type of the webhook..
- public TransactionNotificationRequestV4(Transaction data = default(Transaction), string environment = default(string), TypeEnum? type = default(TypeEnum?))
+ public TransactionNotificationRequestV4(Transaction data = default(Transaction), string environment = default(string), DateTime timestamp = default(DateTime), TypeEnum? type = default(TypeEnum?))
{
this.Data = data;
this.Environment = environment;
+ this.Timestamp = timestamp;
this.Type = type;
}
@@ -85,6 +87,13 @@ protected TransactionNotificationRequestV4() { }
[DataMember(Name = "environment", IsRequired = false, EmitDefaultValue = false)]
public string Environment { get; set; }
+ ///
+ /// When the event was queued.
+ ///
+ /// When the event was queued.
+ [DataMember(Name = "timestamp", EmitDefaultValue = false)]
+ public DateTime Timestamp { get; set; }
+
///
/// Returns the string presentation of the object
///
@@ -95,6 +104,7 @@ public override string ToString()
sb.Append("class TransactionNotificationRequestV4 {\n");
sb.Append(" Data: ").Append(Data).Append("\n");
sb.Append(" Environment: ").Append(Environment).Append("\n");
+ sb.Append(" Timestamp: ").Append(Timestamp).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append("}\n");
return sb.ToString();
@@ -141,6 +151,11 @@ public bool Equals(TransactionNotificationRequestV4 input)
(this.Environment != null &&
this.Environment.Equals(input.Environment))
) &&
+ (
+ this.Timestamp == input.Timestamp ||
+ (this.Timestamp != null &&
+ this.Timestamp.Equals(input.Timestamp))
+ ) &&
(
this.Type == input.Type ||
this.Type.Equals(input.Type)
@@ -164,6 +179,10 @@ public override int GetHashCode()
{
hashCode = (hashCode * 59) + this.Environment.GetHashCode();
}
+ if (this.Timestamp != null)
+ {
+ hashCode = (hashCode * 59) + this.Timestamp.GetHashCode();
+ }
hashCode = (hashCode * 59) + this.Type.GetHashCode();
return hashCode;
}
diff --git a/Adyen/Model/TransferWebhooks/Airline.cs b/Adyen/Model/TransferWebhooks/Airline.cs
new file mode 100644
index 000000000..ed340acf7
--- /dev/null
+++ b/Adyen/Model/TransferWebhooks/Airline.cs
@@ -0,0 +1,149 @@
+/*
+* Transfer webhooks
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.TransferWebhooks
+{
+ ///
+ /// Airline
+ ///
+ [DataContract(Name = "Airline")]
+ public partial class Airline : IEquatable, IValidatableObject
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Details about the flight legs for this ticket..
+ /// The ticket's unique identifier.
+ public Airline(List legs = default(List), string ticketNumber = default(string))
+ {
+ this.Legs = legs;
+ this.TicketNumber = ticketNumber;
+ }
+
+ ///
+ /// Details about the flight legs for this ticket.
+ ///
+ /// Details about the flight legs for this ticket.
+ [DataMember(Name = "legs", EmitDefaultValue = false)]
+ public List Legs { get; set; }
+
+ ///
+ /// The ticket's unique identifier
+ ///
+ /// The ticket's unique identifier
+ [DataMember(Name = "ticketNumber", EmitDefaultValue = false)]
+ public string TicketNumber { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class Airline {\n");
+ sb.Append(" Legs: ").Append(Legs).Append("\n");
+ sb.Append(" TicketNumber: ").Append(TicketNumber).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as Airline);
+ }
+
+ ///
+ /// Returns true if Airline instances are equal
+ ///
+ /// Instance of Airline to be compared
+ /// Boolean
+ public bool Equals(Airline input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.Legs == input.Legs ||
+ this.Legs != null &&
+ input.Legs != null &&
+ this.Legs.SequenceEqual(input.Legs)
+ ) &&
+ (
+ this.TicketNumber == input.TicketNumber ||
+ (this.TicketNumber != null &&
+ this.TicketNumber.Equals(input.TicketNumber))
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.Legs != null)
+ {
+ hashCode = (hashCode * 59) + this.Legs.GetHashCode();
+ }
+ if (this.TicketNumber != null)
+ {
+ hashCode = (hashCode * 59) + this.TicketNumber.GetHashCode();
+ }
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/TransferWebhooks/Amount.cs b/Adyen/Model/TransferWebhooks/Amount.cs
index e5ce1a918..fac41e3d7 100644
--- a/Adyen/Model/TransferWebhooks/Amount.cs
+++ b/Adyen/Model/TransferWebhooks/Amount.cs
@@ -40,8 +40,8 @@ protected Amount() { }
///
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/TransferWebhooks/Leg.cs b/Adyen/Model/TransferWebhooks/Leg.cs
new file mode 100644
index 000000000..7acfff0c4
--- /dev/null
+++ b/Adyen/Model/TransferWebhooks/Leg.cs
@@ -0,0 +1,224 @@
+/*
+* Transfer webhooks
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.TransferWebhooks
+{
+ ///
+ /// Leg
+ ///
+ [DataContract(Name = "Leg")]
+ public partial class Leg : IEquatable, IValidatableObject
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The IATA 3-letter airport code of the destination airport. This field is required if the airline data includes leg details..
+ /// The basic fare code for this leg..
+ /// IATA code of the carrier operating the flight..
+ /// The IATA three-letter airport code of the departure airport. This field is required if the airline data includes leg details.
+ /// The flight departure date..
+ /// The flight identifier..
+ public Leg(string arrivalAirportCode = default(string), string basicFareCode = default(string), string carrierCode = default(string), string departureAirportCode = default(string), string departureDate = default(string), string flightNumber = default(string))
+ {
+ this.ArrivalAirportCode = arrivalAirportCode;
+ this.BasicFareCode = basicFareCode;
+ this.CarrierCode = carrierCode;
+ this.DepartureAirportCode = departureAirportCode;
+ this.DepartureDate = departureDate;
+ this.FlightNumber = flightNumber;
+ }
+
+ ///
+ /// The IATA 3-letter airport code of the destination airport. This field is required if the airline data includes leg details.
+ ///
+ /// The IATA 3-letter airport code of the destination airport. This field is required if the airline data includes leg details.
+ [DataMember(Name = "arrivalAirportCode", EmitDefaultValue = false)]
+ public string ArrivalAirportCode { get; set; }
+
+ ///
+ /// The basic fare code for this leg.
+ ///
+ /// The basic fare code for this leg.
+ [DataMember(Name = "basicFareCode", EmitDefaultValue = false)]
+ public string BasicFareCode { get; set; }
+
+ ///
+ /// IATA code of the carrier operating the flight.
+ ///
+ /// IATA code of the carrier operating the flight.
+ [DataMember(Name = "carrierCode", EmitDefaultValue = false)]
+ public string CarrierCode { get; set; }
+
+ ///
+ /// The IATA three-letter airport code of the departure airport. This field is required if the airline data includes leg details
+ ///
+ /// The IATA three-letter airport code of the departure airport. This field is required if the airline data includes leg details
+ [DataMember(Name = "departureAirportCode", EmitDefaultValue = false)]
+ public string DepartureAirportCode { get; set; }
+
+ ///
+ /// The flight departure date.
+ ///
+ /// The flight departure date.
+ [DataMember(Name = "departureDate", EmitDefaultValue = false)]
+ public string DepartureDate { get; set; }
+
+ ///
+ /// The flight identifier.
+ ///
+ /// The flight identifier.
+ [DataMember(Name = "flightNumber", EmitDefaultValue = false)]
+ public string FlightNumber { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class Leg {\n");
+ sb.Append(" ArrivalAirportCode: ").Append(ArrivalAirportCode).Append("\n");
+ sb.Append(" BasicFareCode: ").Append(BasicFareCode).Append("\n");
+ sb.Append(" CarrierCode: ").Append(CarrierCode).Append("\n");
+ sb.Append(" DepartureAirportCode: ").Append(DepartureAirportCode).Append("\n");
+ sb.Append(" DepartureDate: ").Append(DepartureDate).Append("\n");
+ sb.Append(" FlightNumber: ").Append(FlightNumber).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as Leg);
+ }
+
+ ///
+ /// Returns true if Leg instances are equal
+ ///
+ /// Instance of Leg to be compared
+ /// Boolean
+ public bool Equals(Leg input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.ArrivalAirportCode == input.ArrivalAirportCode ||
+ (this.ArrivalAirportCode != null &&
+ this.ArrivalAirportCode.Equals(input.ArrivalAirportCode))
+ ) &&
+ (
+ this.BasicFareCode == input.BasicFareCode ||
+ (this.BasicFareCode != null &&
+ this.BasicFareCode.Equals(input.BasicFareCode))
+ ) &&
+ (
+ this.CarrierCode == input.CarrierCode ||
+ (this.CarrierCode != null &&
+ this.CarrierCode.Equals(input.CarrierCode))
+ ) &&
+ (
+ this.DepartureAirportCode == input.DepartureAirportCode ||
+ (this.DepartureAirportCode != null &&
+ this.DepartureAirportCode.Equals(input.DepartureAirportCode))
+ ) &&
+ (
+ this.DepartureDate == input.DepartureDate ||
+ (this.DepartureDate != null &&
+ this.DepartureDate.Equals(input.DepartureDate))
+ ) &&
+ (
+ this.FlightNumber == input.FlightNumber ||
+ (this.FlightNumber != null &&
+ this.FlightNumber.Equals(input.FlightNumber))
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.ArrivalAirportCode != null)
+ {
+ hashCode = (hashCode * 59) + this.ArrivalAirportCode.GetHashCode();
+ }
+ if (this.BasicFareCode != null)
+ {
+ hashCode = (hashCode * 59) + this.BasicFareCode.GetHashCode();
+ }
+ if (this.CarrierCode != null)
+ {
+ hashCode = (hashCode * 59) + this.CarrierCode.GetHashCode();
+ }
+ if (this.DepartureAirportCode != null)
+ {
+ hashCode = (hashCode * 59) + this.DepartureAirportCode.GetHashCode();
+ }
+ if (this.DepartureDate != null)
+ {
+ hashCode = (hashCode * 59) + this.DepartureDate.GetHashCode();
+ }
+ if (this.FlightNumber != null)
+ {
+ hashCode = (hashCode * 59) + this.FlightNumber.GetHashCode();
+ }
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/TransferWebhooks/MerchantPurchaseData.cs b/Adyen/Model/TransferWebhooks/MerchantPurchaseData.cs
new file mode 100644
index 000000000..a12c7cd8b
--- /dev/null
+++ b/Adyen/Model/TransferWebhooks/MerchantPurchaseData.cs
@@ -0,0 +1,163 @@
+/*
+* Transfer webhooks
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.TransferWebhooks
+{
+ ///
+ /// MerchantPurchaseData
+ ///
+ [DataContract(Name = "MerchantPurchaseData")]
+ public partial class MerchantPurchaseData : IEquatable, IValidatableObject
+ {
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ [JsonConverter(typeof(StringEnumConverter))]
+ public enum TypeEnum
+ {
+ ///
+ /// Enum MerchantPurchaseData for value: merchantPurchaseData
+ ///
+ [EnumMember(Value = "merchantPurchaseData")]
+ MerchantPurchaseData = 1
+
+ }
+
+
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ [DataMember(Name = "type", IsRequired = false, EmitDefaultValue = false)]
+ public TypeEnum Type { get; set; }
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ [JsonConstructorAttribute]
+ protected MerchantPurchaseData() { }
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// airline.
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data (required) (default to TypeEnum.MerchantPurchaseData).
+ public MerchantPurchaseData(Airline airline = default(Airline), TypeEnum type = TypeEnum.MerchantPurchaseData)
+ {
+ this.Type = type;
+ this.Airline = airline;
+ }
+
+ ///
+ /// Gets or Sets Airline
+ ///
+ [DataMember(Name = "airline", EmitDefaultValue = false)]
+ public Airline Airline { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class MerchantPurchaseData {\n");
+ sb.Append(" Airline: ").Append(Airline).Append("\n");
+ sb.Append(" Type: ").Append(Type).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as MerchantPurchaseData);
+ }
+
+ ///
+ /// Returns true if MerchantPurchaseData instances are equal
+ ///
+ /// Instance of MerchantPurchaseData to be compared
+ /// Boolean
+ public bool Equals(MerchantPurchaseData input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.Airline == input.Airline ||
+ (this.Airline != null &&
+ this.Airline.Equals(input.Airline))
+ ) &&
+ (
+ this.Type == input.Type ||
+ this.Type.Equals(input.Type)
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.Airline != null)
+ {
+ hashCode = (hashCode * 59) + this.Airline.GetHashCode();
+ }
+ hashCode = (hashCode * 59) + this.Type.GetHashCode();
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/TransferWebhooks/PlatformPayment.cs b/Adyen/Model/TransferWebhooks/PlatformPayment.cs
index 55126d6f1..8e0a2f0b0 100644
--- a/Adyen/Model/TransferWebhooks/PlatformPayment.cs
+++ b/Adyen/Model/TransferWebhooks/PlatformPayment.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.TransferWebhooks
public partial class PlatformPayment : IEquatable, IValidatableObject
{
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
[JsonConverter(typeof(StringEnumConverter))]
public enum PlatformPaymentTypeEnum
{
@@ -133,9 +133,9 @@ public enum PlatformPaymentTypeEnum
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
[DataMember(Name = "platformPaymentType", EmitDefaultValue = false)]
public PlatformPaymentTypeEnum? PlatformPaymentType { get; set; }
///
@@ -166,7 +166,7 @@ public enum TypeEnum
/// The capture's merchant reference included in the transfer..
/// The capture reference included in the transfer..
/// The payment's merchant reference included in the transfer..
- /// The type of the related split..
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax..
/// The payment reference included in the transfer..
/// **platformPayment** (default to TypeEnum.PlatformPayment).
public PlatformPayment(string modificationMerchantReference = default(string), string modificationPspReference = default(string), string paymentMerchantReference = default(string), PlatformPaymentTypeEnum? platformPaymentType = default(PlatformPaymentTypeEnum?), string pspPaymentReference = default(string), TypeEnum? type = TypeEnum.PlatformPayment)
diff --git a/Adyen/Model/TransferWebhooks/TransferData.cs b/Adyen/Model/TransferWebhooks/TransferData.cs
index 3fa3082c9..865256f29 100644
--- a/Adyen/Model/TransferWebhooks/TransferData.cs
+++ b/Adyen/Model/TransferWebhooks/TransferData.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.TransferWebhooks
public partial class TransferData : IEquatable, IValidatableObject
{
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[JsonConverter(typeof(StringEnumConverter))]
public enum CategoryEnum
{
@@ -67,15 +67,21 @@ public enum CategoryEnum
/// Enum PlatformPayment for value: platformPayment
///
[EnumMember(Value = "platformPayment")]
- PlatformPayment = 5
+ PlatformPayment = 5,
+
+ ///
+ /// Enum TopUp for value: topUp
+ ///
+ [EnumMember(Value = "topUp")]
+ TopUp = 6
}
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[DataMember(Name = "category", IsRequired = false, EmitDefaultValue = false)]
public CategoryEnum Category { get; set; }
///
@@ -935,13 +941,14 @@ protected TransferData() { }
/// balanceAccount.
/// The unique identifier of the balance platform..
/// The list of the latest balance statuses in the transfer..
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. (required).
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account. (required).
/// categoryData.
/// counterparty.
/// The date and time when the event was triggered, in ISO 8601 extended format. For example, **2020-12-18T10:15:30+01:00**..
/// Your description for the transfer. It is used by most banks as the transfer description. We recommend sending a maximum of 140 characters, otherwise the description may be truncated. Supported characters: **[a-z] [A-Z] [0-9] / - ?** **: ( ) . , ' + Space** Supported characters for **regular** and **fast** transfers to a US counterparty: **[a-z] [A-Z] [0-9] & $ % # @** **~ = + - _ ' \" ! ?**.
/// directDebitInformation.
/// The direction of the transfer. Possible values: **incoming**, **outgoing**..
+ /// The event id listed under events, that triggered the notification..
/// The list of events leading up to the current status of the transfer..
/// The ID of the resource..
/// paymentInstrument.
@@ -954,7 +961,7 @@ protected TransferData() { }
/// tracking.
/// transactionRulesResult.
/// The type of transfer or transaction. For example, **refund**, **payment**, **internalTransfer**, **bankTransfer**..
- public TransferData(ResourceReference accountHolder = default(ResourceReference), Amount amount = default(Amount), ResourceReference balanceAccount = default(ResourceReference), string balancePlatform = default(string), List balances = default(List), CategoryEnum category = default(CategoryEnum), TransferDataCategoryData categoryData = default(TransferDataCategoryData), TransferNotificationCounterParty counterparty = default(TransferNotificationCounterParty), DateTime creationDate = default(DateTime), string description = default(string), DirectDebitInformation directDebitInformation = default(DirectDebitInformation), DirectionEnum? direction = default(DirectionEnum?), List events = default(List), string id = default(string), PaymentInstrument paymentInstrument = default(PaymentInstrument), ReasonEnum? reason = default(ReasonEnum?), string reference = default(string), string referenceForBeneficiary = default(string), TransferReview review = default(TransferReview), int? sequenceNumber = default(int?), StatusEnum status = default(StatusEnum), TransferDataTracking tracking = default(TransferDataTracking), TransactionRulesResult transactionRulesResult = default(TransactionRulesResult), TypeEnum? type = default(TypeEnum?))
+ public TransferData(ResourceReference accountHolder = default(ResourceReference), Amount amount = default(Amount), ResourceReference balanceAccount = default(ResourceReference), string balancePlatform = default(string), List balances = default(List), CategoryEnum category = default(CategoryEnum), TransferDataCategoryData categoryData = default(TransferDataCategoryData), TransferNotificationCounterParty counterparty = default(TransferNotificationCounterParty), DateTime creationDate = default(DateTime), string description = default(string), DirectDebitInformation directDebitInformation = default(DirectDebitInformation), DirectionEnum? direction = default(DirectionEnum?), string eventId = default(string), List events = default(List), string id = default(string), PaymentInstrument paymentInstrument = default(PaymentInstrument), ReasonEnum? reason = default(ReasonEnum?), string reference = default(string), string referenceForBeneficiary = default(string), TransferReview review = default(TransferReview), int? sequenceNumber = default(int?), StatusEnum status = default(StatusEnum), TransferDataTracking tracking = default(TransferDataTracking), TransactionRulesResult transactionRulesResult = default(TransactionRulesResult), TypeEnum? type = default(TypeEnum?))
{
this.Amount = amount;
this.Category = category;
@@ -969,6 +976,7 @@ protected TransferData() { }
this.Description = description;
this.DirectDebitInformation = directDebitInformation;
this.Direction = direction;
+ this.EventId = eventId;
this.Events = events;
this.Id = id;
this.PaymentInstrument = paymentInstrument;
@@ -1046,6 +1054,13 @@ protected TransferData() { }
[DataMember(Name = "directDebitInformation", EmitDefaultValue = false)]
public DirectDebitInformation DirectDebitInformation { get; set; }
+ ///
+ /// The event id listed under events, that triggered the notification.
+ ///
+ /// The event id listed under events, that triggered the notification.
+ [DataMember(Name = "eventId", EmitDefaultValue = false)]
+ public string EventId { get; set; }
+
///
/// The list of events leading up to the current status of the transfer.
///
@@ -1125,6 +1140,7 @@ public override string ToString()
sb.Append(" Description: ").Append(Description).Append("\n");
sb.Append(" DirectDebitInformation: ").Append(DirectDebitInformation).Append("\n");
sb.Append(" Direction: ").Append(Direction).Append("\n");
+ sb.Append(" EventId: ").Append(EventId).Append("\n");
sb.Append(" Events: ").Append(Events).Append("\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" PaymentInstrument: ").Append(PaymentInstrument).Append("\n");
@@ -1231,6 +1247,11 @@ public bool Equals(TransferData input)
this.Direction == input.Direction ||
this.Direction.Equals(input.Direction)
) &&
+ (
+ this.EventId == input.EventId ||
+ (this.EventId != null &&
+ this.EventId.Equals(input.EventId))
+ ) &&
(
this.Events == input.Events ||
this.Events != null &&
@@ -1341,6 +1362,10 @@ public override int GetHashCode()
hashCode = (hashCode * 59) + this.DirectDebitInformation.GetHashCode();
}
hashCode = (hashCode * 59) + this.Direction.GetHashCode();
+ if (this.EventId != null)
+ {
+ hashCode = (hashCode * 59) + this.EventId.GetHashCode();
+ }
if (this.Events != null)
{
hashCode = (hashCode * 59) + this.Events.GetHashCode();
diff --git a/Adyen/Model/TransferWebhooks/TransferEvent.cs b/Adyen/Model/TransferWebhooks/TransferEvent.cs
index 7d2526c5d..09dffa38f 100644
--- a/Adyen/Model/TransferWebhooks/TransferEvent.cs
+++ b/Adyen/Model/TransferWebhooks/TransferEvent.cs
@@ -640,6 +640,7 @@ public enum TypeEnum
/// Scheme unique arn identifier useful for tracing captures, chargebacks, refunds, etc..
/// The date when the transfer request was sent..
/// The estimated time when the beneficiary should have access to the funds..
+ /// A list of event data..
/// externalReason.
/// The unique identifier of the transfer event..
/// modification.
@@ -652,13 +653,14 @@ public enum TypeEnum
/// The type of the transfer event. Possible values: **accounting**, **tracking**..
/// The date when the tracking status was updated..
/// The date when the funds are expected to be deducted from or credited to the balance account. This date can be in either the past or future..
- public TransferEvent(Amount amount = default(Amount), List amountAdjustments = default(List), string arn = default(string), DateTime bookingDate = default(DateTime), DateTime estimatedArrivalTime = default(DateTime), ExternalReason externalReason = default(ExternalReason), string id = default(string), Modification modification = default(Modification), List mutations = default(List), Amount originalAmount = default(Amount), ReasonEnum? reason = default(ReasonEnum?), StatusEnum? status = default(StatusEnum?), TransferEventTrackingData trackingData = default(TransferEventTrackingData), string transactionId = default(string), TypeEnum? type = default(TypeEnum?), DateTime updateDate = default(DateTime), DateTime valueDate = default(DateTime))
+ public TransferEvent(Amount amount = default(Amount), List amountAdjustments = default(List), string arn = default(string), DateTime bookingDate = default(DateTime), DateTime estimatedArrivalTime = default(DateTime), List eventsData = default(List), ExternalReason externalReason = default(ExternalReason), string id = default(string), Modification modification = default(Modification), List mutations = default(List), Amount originalAmount = default(Amount), ReasonEnum? reason = default(ReasonEnum?), StatusEnum? status = default(StatusEnum?), TransferEventTrackingData trackingData = default(TransferEventTrackingData), string transactionId = default(string), TypeEnum? type = default(TypeEnum?), DateTime updateDate = default(DateTime), DateTime valueDate = default(DateTime))
{
this.Amount = amount;
this.AmountAdjustments = amountAdjustments;
this.Arn = arn;
this.BookingDate = bookingDate;
this.EstimatedArrivalTime = estimatedArrivalTime;
+ this.EventsData = eventsData;
this.ExternalReason = externalReason;
this.Id = id;
this.Modification = modification;
@@ -707,6 +709,13 @@ public enum TypeEnum
[DataMember(Name = "estimatedArrivalTime", EmitDefaultValue = false)]
public DateTime EstimatedArrivalTime { get; set; }
+ ///
+ /// A list of event data.
+ ///
+ /// A list of event data.
+ [DataMember(Name = "eventsData", EmitDefaultValue = false)]
+ public List EventsData { get; set; }
+
///
/// Gets or Sets ExternalReason
///
@@ -779,6 +788,7 @@ public override string ToString()
sb.Append(" Arn: ").Append(Arn).Append("\n");
sb.Append(" BookingDate: ").Append(BookingDate).Append("\n");
sb.Append(" EstimatedArrivalTime: ").Append(EstimatedArrivalTime).Append("\n");
+ sb.Append(" EventsData: ").Append(EventsData).Append("\n");
sb.Append(" ExternalReason: ").Append(ExternalReason).Append("\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Modification: ").Append(Modification).Append("\n");
@@ -852,6 +862,12 @@ public bool Equals(TransferEvent input)
(this.EstimatedArrivalTime != null &&
this.EstimatedArrivalTime.Equals(input.EstimatedArrivalTime))
) &&
+ (
+ this.EventsData == input.EventsData ||
+ this.EventsData != null &&
+ input.EventsData != null &&
+ this.EventsData.SequenceEqual(input.EventsData)
+ ) &&
(
this.ExternalReason == input.ExternalReason ||
(this.ExternalReason != null &&
@@ -941,6 +957,10 @@ public override int GetHashCode()
{
hashCode = (hashCode * 59) + this.EstimatedArrivalTime.GetHashCode();
}
+ if (this.EventsData != null)
+ {
+ hashCode = (hashCode * 59) + this.EventsData.GetHashCode();
+ }
if (this.ExternalReason != null)
{
hashCode = (hashCode * 59) + this.ExternalReason.GetHashCode();
diff --git a/Adyen/Model/TransferWebhooks/TransferEventEventsDataInner.cs b/Adyen/Model/TransferWebhooks/TransferEventEventsDataInner.cs
new file mode 100644
index 000000000..1c664f5b8
--- /dev/null
+++ b/Adyen/Model/TransferWebhooks/TransferEventEventsDataInner.cs
@@ -0,0 +1,248 @@
+/*
+* Transfer webhooks
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+using System.Reflection;
+
+namespace Adyen.Model.TransferWebhooks
+{
+ ///
+ /// TransferEventEventsDataInner
+ ///
+ [JsonConverter(typeof(TransferEventEventsDataInnerJsonConverter))]
+ [DataContract(Name = "TransferEvent_eventsData_inner")]
+ public partial class TransferEventEventsDataInner : AbstractOpenAPISchema, IEquatable, IValidatableObject
+ {
+ ///
+ /// Initializes a new instance of the class
+ /// with the class
+ ///
+ /// An instance of MerchantPurchaseData.
+ public TransferEventEventsDataInner(MerchantPurchaseData actualInstance)
+ {
+ this.IsNullable = false;
+ this.SchemaType= "oneOf";
+ this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null.");
+ }
+
+
+ private Object _actualInstance;
+
+ ///
+ /// Gets or Sets ActualInstance
+ ///
+ public override Object ActualInstance
+ {
+ get
+ {
+ return _actualInstance;
+ }
+ set
+ {
+ if (value.GetType() == typeof(MerchantPurchaseData))
+ {
+ this._actualInstance = value;
+ }
+ else
+ {
+ throw new ArgumentException("Invalid instance found. Must be the following types: MerchantPurchaseData");
+ }
+ }
+ }
+
+ ///
+ /// Get the actual instance of `MerchantPurchaseData`. If the actual instance is not `MerchantPurchaseData`,
+ /// the InvalidClassException will be thrown
+ ///
+ /// An instance of MerchantPurchaseData
+ public MerchantPurchaseData GetMerchantPurchaseData()
+ {
+ return (MerchantPurchaseData)this.ActualInstance;
+ }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ var sb = new StringBuilder();
+ sb.Append("class TransferEventEventsDataInner {\n");
+ sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public override string ToJson()
+ {
+ return JsonConvert.SerializeObject(this.ActualInstance, TransferEventEventsDataInner.SerializerSettings);
+ }
+
+ ///
+ /// Converts the JSON string into an instance of TransferEventEventsDataInner
+ ///
+ /// JSON string
+ /// An instance of TransferEventEventsDataInner
+ public static TransferEventEventsDataInner FromJson(string jsonString)
+ {
+ TransferEventEventsDataInner newTransferEventEventsDataInner = null;
+
+ if (string.IsNullOrEmpty(jsonString))
+ {
+ return newTransferEventEventsDataInner;
+ }
+ int match = 0;
+ List matchedTypes = new List();
+ JToken typeToken = JObject.Parse(jsonString).GetValue("type");
+ string type = typeToken?.Value();
+ // Throw exception if jsonString does not contain type param
+ if (type == null)
+ {
+ throw new InvalidDataException("JsonString does not contain required enum type for deserialization.");
+ }
+ try
+ {
+ // Check if the jsonString type enum matches the MerchantPurchaseData type enums
+ if (ContainsValue(type))
+ {
+ newTransferEventEventsDataInner = new TransferEventEventsDataInner(JsonConvert.DeserializeObject(jsonString, TransferEventEventsDataInner.SerializerSettings));
+ matchedTypes.Add("MerchantPurchaseData");
+ match++;
+ }
+ }
+ catch (Exception ex)
+ {
+ if (!(ex is JsonSerializationException))
+ {
+ throw new InvalidDataException(string.Format("Failed to deserialize `{0}` into target: {1}", jsonString, ex.ToString()));
+ }
+ }
+
+ if (match != 1)
+ {
+ throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined. MatchedTypes are: " + matchedTypes);
+ }
+
+ // deserialization is considered successful at this point if no exception has been thrown.
+ return newTransferEventEventsDataInner;
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as TransferEventEventsDataInner);
+ }
+
+ ///
+ /// Returns true if TransferEventEventsDataInner instances are equal
+ ///
+ /// Instance of TransferEventEventsDataInner to be compared
+ /// Boolean
+ public bool Equals(TransferEventEventsDataInner input)
+ {
+ if (input == null)
+ return false;
+
+ return this.ActualInstance.Equals(input.ActualInstance);
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.ActualInstance != null)
+ hashCode = hashCode * 59 + this.ActualInstance.GetHashCode();
+ return hashCode;
+ }
+ }
+
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ IEnumerable IValidatableObject.Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+ ///
+ /// Custom JSON converter for TransferEventEventsDataInner
+ ///
+ public class TransferEventEventsDataInnerJsonConverter : JsonConverter
+ {
+ ///
+ /// To write the JSON string
+ ///
+ /// JSON writer
+ /// Object to be converted into a JSON string
+ /// JSON Serializer
+ public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
+ {
+ writer.WriteRawValue((string)(typeof(TransferEventEventsDataInner).GetMethod("ToJson").Invoke(value, null)));
+ }
+
+ ///
+ /// To convert a JSON string into an object
+ ///
+ /// JSON reader
+ /// Object type
+ /// Existing value
+ /// JSON Serializer
+ /// The object converted from the JSON string
+ public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
+ {
+ if(reader.TokenType != JsonToken.Null)
+ {
+ return TransferEventEventsDataInner.FromJson(JObject.Load(reader).ToString(Formatting.None));
+ }
+ return null;
+ }
+
+ ///
+ /// Check if the object can be converted
+ ///
+ /// Object type
+ /// True if the object can be converted
+ public override bool CanConvert(Type objectType)
+ {
+ return false;
+ }
+ }
+
+}
diff --git a/Adyen/Model/TransferWebhooks/TransferNotificationRequest.cs b/Adyen/Model/TransferWebhooks/TransferNotificationRequest.cs
index e989ac5da..0e1aa9cc3 100644
--- a/Adyen/Model/TransferWebhooks/TransferNotificationRequest.cs
+++ b/Adyen/Model/TransferWebhooks/TransferNotificationRequest.cs
@@ -70,11 +70,13 @@ protected TransferNotificationRequest() { }
///
/// data (required).
/// The environment from which the webhook originated. Possible values: **test**, **live**. (required).
+ /// When the event was queued..
/// The type of webhook..
- public TransferNotificationRequest(TransferData data = default(TransferData), string environment = default(string), TypeEnum? type = default(TypeEnum?))
+ public TransferNotificationRequest(TransferData data = default(TransferData), string environment = default(string), DateTime timestamp = default(DateTime), TypeEnum? type = default(TypeEnum?))
{
this.Data = data;
this.Environment = environment;
+ this.Timestamp = timestamp;
this.Type = type;
}
@@ -91,6 +93,13 @@ protected TransferNotificationRequest() { }
[DataMember(Name = "environment", IsRequired = false, EmitDefaultValue = false)]
public string Environment { get; set; }
+ ///
+ /// When the event was queued.
+ ///
+ /// When the event was queued.
+ [DataMember(Name = "timestamp", EmitDefaultValue = false)]
+ public DateTime Timestamp { get; set; }
+
///
/// Returns the string presentation of the object
///
@@ -101,6 +110,7 @@ public override string ToString()
sb.Append("class TransferNotificationRequest {\n");
sb.Append(" Data: ").Append(Data).Append("\n");
sb.Append(" Environment: ").Append(Environment).Append("\n");
+ sb.Append(" Timestamp: ").Append(Timestamp).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append("}\n");
return sb.ToString();
@@ -147,6 +157,11 @@ public bool Equals(TransferNotificationRequest input)
(this.Environment != null &&
this.Environment.Equals(input.Environment))
) &&
+ (
+ this.Timestamp == input.Timestamp ||
+ (this.Timestamp != null &&
+ this.Timestamp.Equals(input.Timestamp))
+ ) &&
(
this.Type == input.Type ||
this.Type.Equals(input.Type)
@@ -170,6 +185,10 @@ public override int GetHashCode()
{
hashCode = (hashCode * 59) + this.Environment.GetHashCode();
}
+ if (this.Timestamp != null)
+ {
+ hashCode = (hashCode * 59) + this.Timestamp.GetHashCode();
+ }
hashCode = (hashCode * 59) + this.Type.GetHashCode();
return hashCode;
}
diff --git a/Adyen/Model/Transfers/Airline.cs b/Adyen/Model/Transfers/Airline.cs
new file mode 100644
index 000000000..1b70fe119
--- /dev/null
+++ b/Adyen/Model/Transfers/Airline.cs
@@ -0,0 +1,149 @@
+/*
+* Transfers API
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.Transfers
+{
+ ///
+ /// Airline
+ ///
+ [DataContract(Name = "Airline")]
+ public partial class Airline : IEquatable, IValidatableObject
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Details about the flight legs for this ticket..
+ /// The ticket's unique identifier.
+ public Airline(List legs = default(List), string ticketNumber = default(string))
+ {
+ this.Legs = legs;
+ this.TicketNumber = ticketNumber;
+ }
+
+ ///
+ /// Details about the flight legs for this ticket.
+ ///
+ /// Details about the flight legs for this ticket.
+ [DataMember(Name = "legs", EmitDefaultValue = false)]
+ public List Legs { get; set; }
+
+ ///
+ /// The ticket's unique identifier
+ ///
+ /// The ticket's unique identifier
+ [DataMember(Name = "ticketNumber", EmitDefaultValue = false)]
+ public string TicketNumber { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class Airline {\n");
+ sb.Append(" Legs: ").Append(Legs).Append("\n");
+ sb.Append(" TicketNumber: ").Append(TicketNumber).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as Airline);
+ }
+
+ ///
+ /// Returns true if Airline instances are equal
+ ///
+ /// Instance of Airline to be compared
+ /// Boolean
+ public bool Equals(Airline input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.Legs == input.Legs ||
+ this.Legs != null &&
+ input.Legs != null &&
+ this.Legs.SequenceEqual(input.Legs)
+ ) &&
+ (
+ this.TicketNumber == input.TicketNumber ||
+ (this.TicketNumber != null &&
+ this.TicketNumber.Equals(input.TicketNumber))
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.Legs != null)
+ {
+ hashCode = (hashCode * 59) + this.Legs.GetHashCode();
+ }
+ if (this.TicketNumber != null)
+ {
+ hashCode = (hashCode * 59) + this.TicketNumber.GetHashCode();
+ }
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/Transfers/Amount.cs b/Adyen/Model/Transfers/Amount.cs
index d6499ea6c..b6d3c694e 100644
--- a/Adyen/Model/Transfers/Amount.cs
+++ b/Adyen/Model/Transfers/Amount.cs
@@ -40,8 +40,8 @@ protected Amount() { }
///
/// Initializes a new instance of the class.
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). (required).
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). (required).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). (required).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). (required).
public Amount(string currency = default(string), long? value = default(long?))
{
this.Currency = currency;
@@ -49,16 +49,16 @@ protected Amount() { }
}
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
///
- /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
+ /// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
[DataMember(Name = "currency", IsRequired = false, EmitDefaultValue = false)]
public string Currency { get; set; }
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
///
- /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
+ /// The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
[DataMember(Name = "value", IsRequired = false, EmitDefaultValue = false)]
public long? Value { get; set; }
diff --git a/Adyen/Model/Transfers/Leg.cs b/Adyen/Model/Transfers/Leg.cs
new file mode 100644
index 000000000..c8b1b2fb6
--- /dev/null
+++ b/Adyen/Model/Transfers/Leg.cs
@@ -0,0 +1,224 @@
+/*
+* Transfers API
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.Transfers
+{
+ ///
+ /// Leg
+ ///
+ [DataContract(Name = "Leg")]
+ public partial class Leg : IEquatable, IValidatableObject
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The IATA 3-letter airport code of the destination airport. This field is required if the airline data includes leg details..
+ /// The basic fare code for this leg..
+ /// IATA code of the carrier operating the flight..
+ /// The IATA three-letter airport code of the departure airport. This field is required if the airline data includes leg details.
+ /// The flight departure date..
+ /// The flight identifier..
+ public Leg(string arrivalAirportCode = default(string), string basicFareCode = default(string), string carrierCode = default(string), string departureAirportCode = default(string), string departureDate = default(string), string flightNumber = default(string))
+ {
+ this.ArrivalAirportCode = arrivalAirportCode;
+ this.BasicFareCode = basicFareCode;
+ this.CarrierCode = carrierCode;
+ this.DepartureAirportCode = departureAirportCode;
+ this.DepartureDate = departureDate;
+ this.FlightNumber = flightNumber;
+ }
+
+ ///
+ /// The IATA 3-letter airport code of the destination airport. This field is required if the airline data includes leg details.
+ ///
+ /// The IATA 3-letter airport code of the destination airport. This field is required if the airline data includes leg details.
+ [DataMember(Name = "arrivalAirportCode", EmitDefaultValue = false)]
+ public string ArrivalAirportCode { get; set; }
+
+ ///
+ /// The basic fare code for this leg.
+ ///
+ /// The basic fare code for this leg.
+ [DataMember(Name = "basicFareCode", EmitDefaultValue = false)]
+ public string BasicFareCode { get; set; }
+
+ ///
+ /// IATA code of the carrier operating the flight.
+ ///
+ /// IATA code of the carrier operating the flight.
+ [DataMember(Name = "carrierCode", EmitDefaultValue = false)]
+ public string CarrierCode { get; set; }
+
+ ///
+ /// The IATA three-letter airport code of the departure airport. This field is required if the airline data includes leg details
+ ///
+ /// The IATA three-letter airport code of the departure airport. This field is required if the airline data includes leg details
+ [DataMember(Name = "departureAirportCode", EmitDefaultValue = false)]
+ public string DepartureAirportCode { get; set; }
+
+ ///
+ /// The flight departure date.
+ ///
+ /// The flight departure date.
+ [DataMember(Name = "departureDate", EmitDefaultValue = false)]
+ public string DepartureDate { get; set; }
+
+ ///
+ /// The flight identifier.
+ ///
+ /// The flight identifier.
+ [DataMember(Name = "flightNumber", EmitDefaultValue = false)]
+ public string FlightNumber { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class Leg {\n");
+ sb.Append(" ArrivalAirportCode: ").Append(ArrivalAirportCode).Append("\n");
+ sb.Append(" BasicFareCode: ").Append(BasicFareCode).Append("\n");
+ sb.Append(" CarrierCode: ").Append(CarrierCode).Append("\n");
+ sb.Append(" DepartureAirportCode: ").Append(DepartureAirportCode).Append("\n");
+ sb.Append(" DepartureDate: ").Append(DepartureDate).Append("\n");
+ sb.Append(" FlightNumber: ").Append(FlightNumber).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as Leg);
+ }
+
+ ///
+ /// Returns true if Leg instances are equal
+ ///
+ /// Instance of Leg to be compared
+ /// Boolean
+ public bool Equals(Leg input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.ArrivalAirportCode == input.ArrivalAirportCode ||
+ (this.ArrivalAirportCode != null &&
+ this.ArrivalAirportCode.Equals(input.ArrivalAirportCode))
+ ) &&
+ (
+ this.BasicFareCode == input.BasicFareCode ||
+ (this.BasicFareCode != null &&
+ this.BasicFareCode.Equals(input.BasicFareCode))
+ ) &&
+ (
+ this.CarrierCode == input.CarrierCode ||
+ (this.CarrierCode != null &&
+ this.CarrierCode.Equals(input.CarrierCode))
+ ) &&
+ (
+ this.DepartureAirportCode == input.DepartureAirportCode ||
+ (this.DepartureAirportCode != null &&
+ this.DepartureAirportCode.Equals(input.DepartureAirportCode))
+ ) &&
+ (
+ this.DepartureDate == input.DepartureDate ||
+ (this.DepartureDate != null &&
+ this.DepartureDate.Equals(input.DepartureDate))
+ ) &&
+ (
+ this.FlightNumber == input.FlightNumber ||
+ (this.FlightNumber != null &&
+ this.FlightNumber.Equals(input.FlightNumber))
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.ArrivalAirportCode != null)
+ {
+ hashCode = (hashCode * 59) + this.ArrivalAirportCode.GetHashCode();
+ }
+ if (this.BasicFareCode != null)
+ {
+ hashCode = (hashCode * 59) + this.BasicFareCode.GetHashCode();
+ }
+ if (this.CarrierCode != null)
+ {
+ hashCode = (hashCode * 59) + this.CarrierCode.GetHashCode();
+ }
+ if (this.DepartureAirportCode != null)
+ {
+ hashCode = (hashCode * 59) + this.DepartureAirportCode.GetHashCode();
+ }
+ if (this.DepartureDate != null)
+ {
+ hashCode = (hashCode * 59) + this.DepartureDate.GetHashCode();
+ }
+ if (this.FlightNumber != null)
+ {
+ hashCode = (hashCode * 59) + this.FlightNumber.GetHashCode();
+ }
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/Transfers/MerchantPurchaseData.cs b/Adyen/Model/Transfers/MerchantPurchaseData.cs
new file mode 100644
index 000000000..c1a7f8d2e
--- /dev/null
+++ b/Adyen/Model/Transfers/MerchantPurchaseData.cs
@@ -0,0 +1,163 @@
+/*
+* Transfers API
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+
+namespace Adyen.Model.Transfers
+{
+ ///
+ /// MerchantPurchaseData
+ ///
+ [DataContract(Name = "MerchantPurchaseData")]
+ public partial class MerchantPurchaseData : IEquatable, IValidatableObject
+ {
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ [JsonConverter(typeof(StringEnumConverter))]
+ public enum TypeEnum
+ {
+ ///
+ /// Enum MerchantPurchaseData for value: merchantPurchaseData
+ ///
+ [EnumMember(Value = "merchantPurchaseData")]
+ MerchantPurchaseData = 1
+
+ }
+
+
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ ///
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data
+ [DataMember(Name = "type", IsRequired = false, EmitDefaultValue = false)]
+ public TypeEnum Type { get; set; }
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ [JsonConstructorAttribute]
+ protected MerchantPurchaseData() { }
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// airline.
+ /// The type of events data. Possible values: - **merchantPurchaseData**: merchant purchase data (required) (default to TypeEnum.MerchantPurchaseData).
+ public MerchantPurchaseData(Airline airline = default(Airline), TypeEnum type = TypeEnum.MerchantPurchaseData)
+ {
+ this.Type = type;
+ this.Airline = airline;
+ }
+
+ ///
+ /// Gets or Sets Airline
+ ///
+ [DataMember(Name = "airline", EmitDefaultValue = false)]
+ public Airline Airline { get; set; }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.Append("class MerchantPurchaseData {\n");
+ sb.Append(" Airline: ").Append(Airline).Append("\n");
+ sb.Append(" Type: ").Append(Type).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public virtual string ToJson()
+ {
+ return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as MerchantPurchaseData);
+ }
+
+ ///
+ /// Returns true if MerchantPurchaseData instances are equal
+ ///
+ /// Instance of MerchantPurchaseData to be compared
+ /// Boolean
+ public bool Equals(MerchantPurchaseData input)
+ {
+ if (input == null)
+ {
+ return false;
+ }
+ return
+ (
+ this.Airline == input.Airline ||
+ (this.Airline != null &&
+ this.Airline.Equals(input.Airline))
+ ) &&
+ (
+ this.Type == input.Type ||
+ this.Type.Equals(input.Type)
+ );
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.Airline != null)
+ {
+ hashCode = (hashCode * 59) + this.Airline.GetHashCode();
+ }
+ hashCode = (hashCode * 59) + this.Type.GetHashCode();
+ return hashCode;
+ }
+ }
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+}
diff --git a/Adyen/Model/Transfers/PlatformPayment.cs b/Adyen/Model/Transfers/PlatformPayment.cs
index dc19f8614..0f6d83476 100644
--- a/Adyen/Model/Transfers/PlatformPayment.cs
+++ b/Adyen/Model/Transfers/PlatformPayment.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.Transfers
public partial class PlatformPayment : IEquatable, IValidatableObject
{
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
[JsonConverter(typeof(StringEnumConverter))]
public enum PlatformPaymentTypeEnum
{
@@ -133,9 +133,9 @@ public enum PlatformPaymentTypeEnum
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
///
- /// The type of the related split.
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax.
[DataMember(Name = "platformPaymentType", EmitDefaultValue = false)]
public PlatformPaymentTypeEnum? PlatformPaymentType { get; set; }
///
@@ -166,7 +166,7 @@ public enum TypeEnum
/// The capture's merchant reference included in the transfer..
/// The capture reference included in the transfer..
/// The payment's merchant reference included in the transfer..
- /// The type of the related split..
+ /// Specifies the nature of the transfer. This parameter helps categorize transfers so you can reconcile transactions at a later time, using the Balance Platform Accounting Report for [marketplaces](https://docs.adyen.com/marketplaces/reports-and-fees/balance-platform-accounting-report/) or [platforms](https://docs.adyen.com/platforms/reports-and-fees/balance-platform-accounting-report/). Possible values: * **AcquiringFees**: for the acquiring fee incurred on a transaction. * **AdyenCommission**: for the transaction fee due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/guides/payments-training-guide/get-the-best-from-your-card-processing). * **AdyenFees**: for all the transaction fees due to Adyen. This is the sum of Adyen's commission and Adyen's markup. * **AdyenMarkup**: for the transaction fee due to Adyen under [Interchange++ pricing](https://www.adyen.com/pricing). * **BalanceAccount**: or the sale amount of a transaction. * **Commission**: for your platform's commission on a transaction. * **Interchange**: for the interchange fee (fee paid to the issuer) incurred on a transaction. * **PaymentFee**: for all of the transaction fees. * **Remainder**: for the left over amount after currency conversion. * **SchemeFee**: for the scheme fee incurred on a transaction. This is the sum of the interchange fees and the acquiring fees. * **Surcharge**: for the surcharge paid by the customer on a transaction. * **Tip**: for the tip paid by the customer. * **TopUp**: for an incoming transfer to top up your user's balance account. * **VAT**: for the Value Added Tax..
/// The payment reference included in the transfer..
/// **platformPayment** (default to TypeEnum.PlatformPayment).
public PlatformPayment(string modificationMerchantReference = default(string), string modificationPspReference = default(string), string paymentMerchantReference = default(string), PlatformPaymentTypeEnum? platformPaymentType = default(PlatformPaymentTypeEnum?), string pspPaymentReference = default(string), TypeEnum? type = TypeEnum.PlatformPayment)
diff --git a/Adyen/Model/Transfers/Transfer.cs b/Adyen/Model/Transfers/Transfer.cs
index f49d95ba0..46de51c81 100644
--- a/Adyen/Model/Transfers/Transfer.cs
+++ b/Adyen/Model/Transfers/Transfer.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.Transfers
public partial class Transfer : IEquatable, IValidatableObject
{
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[JsonConverter(typeof(StringEnumConverter))]
public enum CategoryEnum
{
@@ -67,15 +67,21 @@ public enum CategoryEnum
/// Enum PlatformPayment for value: platformPayment
///
[EnumMember(Value = "platformPayment")]
- PlatformPayment = 5
+ PlatformPayment = 5,
+
+ ///
+ /// Enum TopUp for value: topUp
+ ///
+ [EnumMember(Value = "topUp")]
+ TopUp = 6
}
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[DataMember(Name = "category", IsRequired = false, EmitDefaultValue = false)]
public CategoryEnum Category { get; set; }
///
@@ -933,7 +939,7 @@ protected Transfer() { }
/// accountHolder.
/// amount (required).
/// balanceAccount.
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. (required).
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account. (required).
/// categoryData.
/// counterparty (required).
/// The date and time when the event was triggered, in ISO 8601 extended format. For example, **2020-12-18T10:15:30+01:00**..
diff --git a/Adyen/Model/Transfers/TransferData.cs b/Adyen/Model/Transfers/TransferData.cs
index 32110f644..c4ae9cbb6 100644
--- a/Adyen/Model/Transfers/TransferData.cs
+++ b/Adyen/Model/Transfers/TransferData.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.Transfers
public partial class TransferData : IEquatable, IValidatableObject
{
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[JsonConverter(typeof(StringEnumConverter))]
public enum CategoryEnum
{
@@ -67,15 +67,21 @@ public enum CategoryEnum
/// Enum PlatformPayment for value: platformPayment
///
[EnumMember(Value = "platformPayment")]
- PlatformPayment = 5
+ PlatformPayment = 5,
+
+ ///
+ /// Enum TopUp for value: topUp
+ ///
+ [EnumMember(Value = "topUp")]
+ TopUp = 6
}
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[DataMember(Name = "category", IsRequired = false, EmitDefaultValue = false)]
public CategoryEnum Category { get; set; }
///
@@ -935,13 +941,14 @@ protected TransferData() { }
/// balanceAccount.
/// The unique identifier of the balance platform..
/// The list of the latest balance statuses in the transfer..
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by an Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. (required).
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account. (required).
/// categoryData.
/// counterparty.
/// The date and time when the event was triggered, in ISO 8601 extended format. For example, **2020-12-18T10:15:30+01:00**..
/// Your description for the transfer. It is used by most banks as the transfer description. We recommend sending a maximum of 140 characters, otherwise the description may be truncated. Supported characters: **[a-z] [A-Z] [0-9] / - ?** **: ( ) . , ' + Space** Supported characters for **regular** and **fast** transfers to a US counterparty: **[a-z] [A-Z] [0-9] & $ % # @** **~ = + - _ ' \" ! ?**.
/// directDebitInformation.
/// The direction of the transfer. Possible values: **incoming**, **outgoing**..
+ /// The event id listed under events, that triggered the notification..
/// The list of events leading up to the current status of the transfer..
/// The ID of the resource..
/// paymentInstrument.
@@ -954,7 +961,7 @@ protected TransferData() { }
/// tracking.
/// transactionRulesResult.
/// The type of transfer or transaction. For example, **refund**, **payment**, **internalTransfer**, **bankTransfer**..
- public TransferData(ResourceReference accountHolder = default(ResourceReference), Amount amount = default(Amount), ResourceReference balanceAccount = default(ResourceReference), string balancePlatform = default(string), List balances = default(List), CategoryEnum category = default(CategoryEnum), TransferCategoryData categoryData = default(TransferCategoryData), TransferNotificationCounterParty counterparty = default(TransferNotificationCounterParty), DateTime creationDate = default(DateTime), string description = default(string), DirectDebitInformation directDebitInformation = default(DirectDebitInformation), DirectionEnum? direction = default(DirectionEnum?), List events = default(List), string id = default(string), PaymentInstrument paymentInstrument = default(PaymentInstrument), ReasonEnum? reason = default(ReasonEnum?), string reference = default(string), string referenceForBeneficiary = default(string), TransferReview review = default(TransferReview), int? sequenceNumber = default(int?), StatusEnum status = default(StatusEnum), TransferDataTracking tracking = default(TransferDataTracking), TransactionRulesResult transactionRulesResult = default(TransactionRulesResult), TypeEnum? type = default(TypeEnum?))
+ public TransferData(ResourceReference accountHolder = default(ResourceReference), Amount amount = default(Amount), ResourceReference balanceAccount = default(ResourceReference), string balancePlatform = default(string), List balances = default(List), CategoryEnum category = default(CategoryEnum), TransferCategoryData categoryData = default(TransferCategoryData), TransferNotificationCounterParty counterparty = default(TransferNotificationCounterParty), DateTime creationDate = default(DateTime), string description = default(string), DirectDebitInformation directDebitInformation = default(DirectDebitInformation), DirectionEnum? direction = default(DirectionEnum?), string eventId = default(string), List events = default(List), string id = default(string), PaymentInstrument paymentInstrument = default(PaymentInstrument), ReasonEnum? reason = default(ReasonEnum?), string reference = default(string), string referenceForBeneficiary = default(string), TransferReview review = default(TransferReview), int? sequenceNumber = default(int?), StatusEnum status = default(StatusEnum), TransferDataTracking tracking = default(TransferDataTracking), TransactionRulesResult transactionRulesResult = default(TransactionRulesResult), TypeEnum? type = default(TypeEnum?))
{
this.Amount = amount;
this.Category = category;
@@ -969,6 +976,7 @@ protected TransferData() { }
this.Description = description;
this.DirectDebitInformation = directDebitInformation;
this.Direction = direction;
+ this.EventId = eventId;
this.Events = events;
this.Id = id;
this.PaymentInstrument = paymentInstrument;
@@ -1046,6 +1054,13 @@ protected TransferData() { }
[DataMember(Name = "directDebitInformation", EmitDefaultValue = false)]
public DirectDebitInformation DirectDebitInformation { get; set; }
+ ///
+ /// The event id listed under events, that triggered the notification.
+ ///
+ /// The event id listed under events, that triggered the notification.
+ [DataMember(Name = "eventId", EmitDefaultValue = false)]
+ public string EventId { get; set; }
+
///
/// The list of events leading up to the current status of the transfer.
///
@@ -1125,6 +1140,7 @@ public override string ToString()
sb.Append(" Description: ").Append(Description).Append("\n");
sb.Append(" DirectDebitInformation: ").Append(DirectDebitInformation).Append("\n");
sb.Append(" Direction: ").Append(Direction).Append("\n");
+ sb.Append(" EventId: ").Append(EventId).Append("\n");
sb.Append(" Events: ").Append(Events).Append("\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" PaymentInstrument: ").Append(PaymentInstrument).Append("\n");
@@ -1231,6 +1247,11 @@ public bool Equals(TransferData input)
this.Direction == input.Direction ||
this.Direction.Equals(input.Direction)
) &&
+ (
+ this.EventId == input.EventId ||
+ (this.EventId != null &&
+ this.EventId.Equals(input.EventId))
+ ) &&
(
this.Events == input.Events ||
this.Events != null &&
@@ -1341,6 +1362,10 @@ public override int GetHashCode()
hashCode = (hashCode * 59) + this.DirectDebitInformation.GetHashCode();
}
hashCode = (hashCode * 59) + this.Direction.GetHashCode();
+ if (this.EventId != null)
+ {
+ hashCode = (hashCode * 59) + this.EventId.GetHashCode();
+ }
if (this.Events != null)
{
hashCode = (hashCode * 59) + this.Events.GetHashCode();
diff --git a/Adyen/Model/Transfers/TransferEvent.cs b/Adyen/Model/Transfers/TransferEvent.cs
index 01d24dd28..1769ac2a4 100644
--- a/Adyen/Model/Transfers/TransferEvent.cs
+++ b/Adyen/Model/Transfers/TransferEvent.cs
@@ -640,6 +640,7 @@ public enum TypeEnum
/// Scheme unique arn identifier useful for tracing captures, chargebacks, refunds, etc..
/// The date when the transfer request was sent..
/// The estimated time when the beneficiary should have access to the funds..
+ /// A list of event data..
/// externalReason.
/// The unique identifier of the transfer event..
/// modification.
@@ -652,13 +653,14 @@ public enum TypeEnum
/// The type of the transfer event. Possible values: **accounting**, **tracking**..
/// The date when the tracking status was updated..
/// The date when the funds are expected to be deducted from or credited to the balance account. This date can be in either the past or future..
- public TransferEvent(Amount amount = default(Amount), List amountAdjustments = default(List), string arn = default(string), DateTime bookingDate = default(DateTime), DateTime estimatedArrivalTime = default(DateTime), ExternalReason externalReason = default(ExternalReason), string id = default(string), Modification modification = default(Modification), List mutations = default(List), Amount originalAmount = default(Amount), ReasonEnum? reason = default(ReasonEnum?), StatusEnum? status = default(StatusEnum?), TransferEventTrackingData trackingData = default(TransferEventTrackingData), string transactionId = default(string), TypeEnum? type = default(TypeEnum?), DateTime updateDate = default(DateTime), DateTime valueDate = default(DateTime))
+ public TransferEvent(Amount amount = default(Amount), List amountAdjustments = default(List), string arn = default(string), DateTime bookingDate = default(DateTime), DateTime estimatedArrivalTime = default(DateTime), List eventsData = default(List), ExternalReason externalReason = default(ExternalReason), string id = default(string), Modification modification = default(Modification), List mutations = default(List), Amount originalAmount = default(Amount), ReasonEnum? reason = default(ReasonEnum?), StatusEnum? status = default(StatusEnum?), TransferEventTrackingData trackingData = default(TransferEventTrackingData), string transactionId = default(string), TypeEnum? type = default(TypeEnum?), DateTime updateDate = default(DateTime), DateTime valueDate = default(DateTime))
{
this.Amount = amount;
this.AmountAdjustments = amountAdjustments;
this.Arn = arn;
this.BookingDate = bookingDate;
this.EstimatedArrivalTime = estimatedArrivalTime;
+ this.EventsData = eventsData;
this.ExternalReason = externalReason;
this.Id = id;
this.Modification = modification;
@@ -707,6 +709,13 @@ public enum TypeEnum
[DataMember(Name = "estimatedArrivalTime", EmitDefaultValue = false)]
public DateTime EstimatedArrivalTime { get; set; }
+ ///
+ /// A list of event data.
+ ///
+ /// A list of event data.
+ [DataMember(Name = "eventsData", EmitDefaultValue = false)]
+ public List EventsData { get; set; }
+
///
/// Gets or Sets ExternalReason
///
@@ -779,6 +788,7 @@ public override string ToString()
sb.Append(" Arn: ").Append(Arn).Append("\n");
sb.Append(" BookingDate: ").Append(BookingDate).Append("\n");
sb.Append(" EstimatedArrivalTime: ").Append(EstimatedArrivalTime).Append("\n");
+ sb.Append(" EventsData: ").Append(EventsData).Append("\n");
sb.Append(" ExternalReason: ").Append(ExternalReason).Append("\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Modification: ").Append(Modification).Append("\n");
@@ -852,6 +862,12 @@ public bool Equals(TransferEvent input)
(this.EstimatedArrivalTime != null &&
this.EstimatedArrivalTime.Equals(input.EstimatedArrivalTime))
) &&
+ (
+ this.EventsData == input.EventsData ||
+ this.EventsData != null &&
+ input.EventsData != null &&
+ this.EventsData.SequenceEqual(input.EventsData)
+ ) &&
(
this.ExternalReason == input.ExternalReason ||
(this.ExternalReason != null &&
@@ -941,6 +957,10 @@ public override int GetHashCode()
{
hashCode = (hashCode * 59) + this.EstimatedArrivalTime.GetHashCode();
}
+ if (this.EventsData != null)
+ {
+ hashCode = (hashCode * 59) + this.EventsData.GetHashCode();
+ }
if (this.ExternalReason != null)
{
hashCode = (hashCode * 59) + this.ExternalReason.GetHashCode();
diff --git a/Adyen/Model/Transfers/TransferEventEventsDataInner.cs b/Adyen/Model/Transfers/TransferEventEventsDataInner.cs
new file mode 100644
index 000000000..4f2beb7dc
--- /dev/null
+++ b/Adyen/Model/Transfers/TransferEventEventsDataInner.cs
@@ -0,0 +1,248 @@
+/*
+* Transfers API
+*
+*
+* The version of the OpenAPI document: 4
+*
+* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+* https://openapi-generator.tech
+* Do not edit the class manually.
+*/
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Text.RegularExpressions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
+using System.ComponentModel.DataAnnotations;
+using OpenAPIDateConverter = Adyen.ApiSerialization.OpenAPIDateConverter;
+using System.Reflection;
+
+namespace Adyen.Model.Transfers
+{
+ ///
+ /// TransferEventEventsDataInner
+ ///
+ [JsonConverter(typeof(TransferEventEventsDataInnerJsonConverter))]
+ [DataContract(Name = "TransferEvent_eventsData_inner")]
+ public partial class TransferEventEventsDataInner : AbstractOpenAPISchema, IEquatable, IValidatableObject
+ {
+ ///
+ /// Initializes a new instance of the class
+ /// with the class
+ ///
+ /// An instance of MerchantPurchaseData.
+ public TransferEventEventsDataInner(MerchantPurchaseData actualInstance)
+ {
+ this.IsNullable = false;
+ this.SchemaType= "oneOf";
+ this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null.");
+ }
+
+
+ private Object _actualInstance;
+
+ ///
+ /// Gets or Sets ActualInstance
+ ///
+ public override Object ActualInstance
+ {
+ get
+ {
+ return _actualInstance;
+ }
+ set
+ {
+ if (value.GetType() == typeof(MerchantPurchaseData))
+ {
+ this._actualInstance = value;
+ }
+ else
+ {
+ throw new ArgumentException("Invalid instance found. Must be the following types: MerchantPurchaseData");
+ }
+ }
+ }
+
+ ///
+ /// Get the actual instance of `MerchantPurchaseData`. If the actual instance is not `MerchantPurchaseData`,
+ /// the InvalidClassException will be thrown
+ ///
+ /// An instance of MerchantPurchaseData
+ public MerchantPurchaseData GetMerchantPurchaseData()
+ {
+ return (MerchantPurchaseData)this.ActualInstance;
+ }
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
+ public override string ToString()
+ {
+ var sb = new StringBuilder();
+ sb.Append("class TransferEventEventsDataInner {\n");
+ sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n");
+ sb.Append("}\n");
+ return sb.ToString();
+ }
+
+ ///
+ /// Returns the JSON string presentation of the object
+ ///
+ /// JSON string presentation of the object
+ public override string ToJson()
+ {
+ return JsonConvert.SerializeObject(this.ActualInstance, TransferEventEventsDataInner.SerializerSettings);
+ }
+
+ ///
+ /// Converts the JSON string into an instance of TransferEventEventsDataInner
+ ///
+ /// JSON string
+ /// An instance of TransferEventEventsDataInner
+ public static TransferEventEventsDataInner FromJson(string jsonString)
+ {
+ TransferEventEventsDataInner newTransferEventEventsDataInner = null;
+
+ if (string.IsNullOrEmpty(jsonString))
+ {
+ return newTransferEventEventsDataInner;
+ }
+ int match = 0;
+ List matchedTypes = new List();
+ JToken typeToken = JObject.Parse(jsonString).GetValue("type");
+ string type = typeToken?.Value();
+ // Throw exception if jsonString does not contain type param
+ if (type == null)
+ {
+ throw new InvalidDataException("JsonString does not contain required enum type for deserialization.");
+ }
+ try
+ {
+ // Check if the jsonString type enum matches the MerchantPurchaseData type enums
+ if (ContainsValue(type))
+ {
+ newTransferEventEventsDataInner = new TransferEventEventsDataInner(JsonConvert.DeserializeObject(jsonString, TransferEventEventsDataInner.SerializerSettings));
+ matchedTypes.Add("MerchantPurchaseData");
+ match++;
+ }
+ }
+ catch (Exception ex)
+ {
+ if (!(ex is JsonSerializationException))
+ {
+ throw new InvalidDataException(string.Format("Failed to deserialize `{0}` into target: {1}", jsonString, ex.ToString()));
+ }
+ }
+
+ if (match != 1)
+ {
+ throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined. MatchedTypes are: " + matchedTypes);
+ }
+
+ // deserialization is considered successful at this point if no exception has been thrown.
+ return newTransferEventEventsDataInner;
+ }
+
+ ///
+ /// Returns true if objects are equal
+ ///
+ /// Object to be compared
+ /// Boolean
+ public override bool Equals(object input)
+ {
+ return this.Equals(input as TransferEventEventsDataInner);
+ }
+
+ ///
+ /// Returns true if TransferEventEventsDataInner instances are equal
+ ///
+ /// Instance of TransferEventEventsDataInner to be compared
+ /// Boolean
+ public bool Equals(TransferEventEventsDataInner input)
+ {
+ if (input == null)
+ return false;
+
+ return this.ActualInstance.Equals(input.ActualInstance);
+ }
+
+ ///
+ /// Gets the hash code
+ ///
+ /// Hash code
+ public override int GetHashCode()
+ {
+ unchecked // Overflow is fine, just wrap
+ {
+ int hashCode = 41;
+ if (this.ActualInstance != null)
+ hashCode = hashCode * 59 + this.ActualInstance.GetHashCode();
+ return hashCode;
+ }
+ }
+
+ ///
+ /// To validate all properties of the instance
+ ///
+ /// Validation context
+ /// Validation Result
+ IEnumerable IValidatableObject.Validate(ValidationContext validationContext)
+ {
+ yield break;
+ }
+ }
+
+ ///
+ /// Custom JSON converter for TransferEventEventsDataInner
+ ///
+ public class TransferEventEventsDataInnerJsonConverter : JsonConverter
+ {
+ ///
+ /// To write the JSON string
+ ///
+ /// JSON writer
+ /// Object to be converted into a JSON string
+ /// JSON Serializer
+ public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
+ {
+ writer.WriteRawValue((string)(typeof(TransferEventEventsDataInner).GetMethod("ToJson").Invoke(value, null)));
+ }
+
+ ///
+ /// To convert a JSON string into an object
+ ///
+ /// JSON reader
+ /// Object type
+ /// Existing value
+ /// JSON Serializer
+ /// The object converted from the JSON string
+ public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
+ {
+ if(reader.TokenType != JsonToken.Null)
+ {
+ return TransferEventEventsDataInner.FromJson(JObject.Load(reader).ToString(Formatting.None));
+ }
+ return null;
+ }
+
+ ///
+ /// Check if the object can be converted
+ ///
+ /// Object type
+ /// True if the object can be converted
+ public override bool CanConvert(Type objectType)
+ {
+ return false;
+ }
+ }
+
+}
diff --git a/Adyen/Model/Transfers/TransferInfo.cs b/Adyen/Model/Transfers/TransferInfo.cs
index fdbb1160b..a42c994ca 100644
--- a/Adyen/Model/Transfers/TransferInfo.cs
+++ b/Adyen/Model/Transfers/TransferInfo.cs
@@ -33,9 +33,9 @@ namespace Adyen.Model.Transfers
public partial class TransferInfo : IEquatable, IValidatableObject
{
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[JsonConverter(typeof(StringEnumConverter))]
public enum CategoryEnum
{
@@ -67,15 +67,21 @@ public enum CategoryEnum
/// Enum PlatformPayment for value: platformPayment
///
[EnumMember(Value = "platformPayment")]
- PlatformPayment = 5
+ PlatformPayment = 5,
+
+ ///
+ /// Enum TopUp for value: topUp
+ ///
+ [EnumMember(Value = "topUp")]
+ TopUp = 6
}
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
///
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users.
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account.
[DataMember(Name = "category", IsRequired = false, EmitDefaultValue = false)]
public CategoryEnum Category { get; set; }
///
@@ -226,7 +232,7 @@ protected TransferInfo() { }
///
/// amount (required).
/// The unique identifier of the source [balance account](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/balanceAccounts#responses-200-id). If you want to make a transfer using a **virtual** **bankAccount** assigned to the balance account, you must specify the [payment instrument ID](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/paymentInstruments#responses-200-id) of the **virtual** **bankAccount**. If you only specify a balance account ID, Adyen uses the default **physical** **bankAccount** payment instrument assigned to the balance account..
- /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. (required).
+ /// The category of the transfer. Possible values: - **bank**: a transfer involving a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **card**: a transfer involving a third-party card. - **internal**: a transfer between [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: a transfer initiated by a Adyen-issued card. - **platformPayment**: funds movements related to payments that are acquired for your users. - **topUp**: an incoming transfer initiated by your user to top up their balance account. (required).
/// counterparty (required).
/// Your description for the transfer. It is used by most banks as the transfer description. We recommend sending a maximum of 140 characters, otherwise the description may be truncated. Supported characters: **[a-z] [A-Z] [0-9] / - ?** **: ( ) . , ' + Space** Supported characters for **regular** and **fast** transfers to a US counterparty: **[a-z] [A-Z] [0-9] & $ % # @** **~ = + - _ ' \" ! ?**.
/// The unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/paymentInstruments#responses-200-id). If you want to make a transfer using a **virtual** **bankAccount**, you must specify the payment instrument ID of the **virtual** **bankAccount**. If you only specify a balance account ID, Adyen uses the default **physical** **bankAccount** payment instrument assigned to the balance account..
diff --git a/Adyen/Service/LegalEntityManagement/PCIQuestionnairesService.cs b/Adyen/Service/LegalEntityManagement/PCIQuestionnairesService.cs
index 08b732ee5..dc818a201 100644
--- a/Adyen/Service/LegalEntityManagement/PCIQuestionnairesService.cs
+++ b/Adyen/Service/LegalEntityManagement/PCIQuestionnairesService.cs
@@ -24,6 +24,25 @@ namespace Adyen.Service.LegalEntityManagement
///
public interface IPCIQuestionnairesService
{
+ ///
+ /// Calculate PCI status of a legal entity
+ ///
+ /// - The unique identifier of the legal entity to calculate PCI status.
+ /// -
+ /// - Additional request options.
+ /// .
+ Model.LegalEntityManagement.CalculatePciStatusResponse CalculatePciStatusOfLegalEntity(string id, CalculatePciStatusRequest calculatePciStatusRequest = default, RequestOptions requestOptions = default);
+
+ ///
+ /// Calculate PCI status of a legal entity
+ ///
+ /// - The unique identifier of the legal entity to calculate PCI status.
+ /// -
+ /// - Additional request options.
+ /// A CancellationToken enables cooperative cancellation between threads, thread pool work items, or Task objects.
+ /// Task of .
+ Task CalculatePciStatusOfLegalEntityAsync(string id, CalculatePciStatusRequest calculatePciStatusRequest = default, RequestOptions requestOptions = default, CancellationToken cancellationToken = default);
+
///
/// Generate PCI questionnaire
///
@@ -112,6 +131,18 @@ public PCIQuestionnairesService(Client client) : base(client)
_baseUrl = CreateBaseUrl("https://kyc-test.adyen.com/lem/v3");
}
+ public Model.LegalEntityManagement.CalculatePciStatusResponse CalculatePciStatusOfLegalEntity(string id, CalculatePciStatusRequest calculatePciStatusRequest = default, RequestOptions requestOptions = default)
+ {
+ return CalculatePciStatusOfLegalEntityAsync(id, calculatePciStatusRequest, requestOptions).ConfigureAwait(false).GetAwaiter().GetResult();
+ }
+
+ public async Task CalculatePciStatusOfLegalEntityAsync(string id, CalculatePciStatusRequest calculatePciStatusRequest = default, RequestOptions requestOptions = default, CancellationToken cancellationToken = default)
+ {
+ var endpoint = _baseUrl + $"/legalEntities/{id}/pciQuestionnaires/signingRequired";
+ var resource = new ServiceResource(this, endpoint);
+ return await resource.RequestAsync(calculatePciStatusRequest.ToJson(), requestOptions, new HttpMethod("POST"), cancellationToken).ConfigureAwait(false);
+ }
+
public Model.LegalEntityManagement.GeneratePciDescriptionResponse GeneratePciQuestionnaire(string id, GeneratePciDescriptionRequest generatePciDescriptionRequest = default, RequestOptions requestOptions = default)
{
return GeneratePciQuestionnaireAsync(id, generatePciDescriptionRequest, requestOptions).ConfigureAwait(false).GetAwaiter().GetResult();