diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 8358f5fe2..285be38ef 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.448.0"
+ ".": "0.449.0"
}
\ No newline at end of file
diff --git a/.stats.yml b/.stats.yml
index 165ec440d..71f54a569 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 232
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-985e738d362cc4d7dce557163d9e57b9a3a254718d862bdeb2758b6c265584b9.yml
-openapi_spec_hash: aa0b0b7eb6ca282b6e607dcc0408fafe
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-8bcd1f04377ee8ae354a1cb3b1c214232c8b448a93c98502ea92b696bf0757bf.yml
+openapi_spec_hash: c338b176720c2dc69dd3f7db351ea8a5
config_hash: d15ecbf4dc8a7a0ef99397d11b557444
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 904d83efe..6a564ea66 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,13 @@
# Changelog
+## 0.449.0 (2026-03-05)
+
+Full Changelog: [v0.448.0...v0.449.0](https://github.com/Increase/increase-java/compare/v0.448.0...v0.449.0)
+
+### Features
+
+* **api:** api update ([917f6b8](https://github.com/Increase/increase-java/commit/917f6b86401823744ec289561eb91505b785dc87))
+
## 0.448.0 (2026-03-05)
Full Changelog: [v0.447.0...v0.448.0](https://github.com/Increase/increase-java/compare/v0.447.0...v0.448.0)
diff --git a/README.md b/README.md
index 7208f2770..1027431bc 100644
--- a/README.md
+++ b/README.md
@@ -2,8 +2,8 @@
-[](https://central.sonatype.com/artifact/com.increase.api/increase-java/0.448.0)
-[](https://javadoc.io/doc/com.increase.api/increase-java/0.448.0)
+[](https://central.sonatype.com/artifact/com.increase.api/increase-java/0.449.0)
+[](https://javadoc.io/doc/com.increase.api/increase-java/0.449.0)
@@ -13,7 +13,7 @@ The Increase Java SDK is similar to the Increase Kotlin SDK but with minor diffe
-The REST API documentation can be found on [increase.com](https://increase.com/documentation). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.increase.api/increase-java/0.448.0).
+The REST API documentation can be found on [increase.com](https://increase.com/documentation). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.increase.api/increase-java/0.449.0).
@@ -24,7 +24,7 @@ The REST API documentation can be found on [increase.com](https://increase.com/d
### Gradle
```kotlin
-implementation("com.increase.api:increase-java:0.448.0")
+implementation("com.increase.api:increase-java:0.449.0")
```
### Maven
@@ -33,7 +33,7 @@ implementation("com.increase.api:increase-java:0.448.0")
com.increase.api
increase-java
- 0.448.0
+ 0.449.0
```
diff --git a/build.gradle.kts b/build.gradle.kts
index c578080e2..1c0bf3d6b 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -8,7 +8,7 @@ repositories {
allprojects {
group = "com.increase.api"
- version = "0.448.0" // x-release-please-version
+ version = "0.449.0" // x-release-please-version
}
subprojects {
diff --git a/increase-java-core/src/main/kotlin/com/increase/api/models/cardpayments/CardPayment.kt b/increase-java-core/src/main/kotlin/com/increase/api/models/cardpayments/CardPayment.kt
index 4fb40e28e..c3b13c43e 100644
--- a/increase-java-core/src/main/kotlin/com/increase/api/models/cardpayments/CardPayment.kt
+++ b/increase-java-core/src/main/kotlin/com/increase/api/models/cardpayments/CardPayment.kt
@@ -1778,6 +1778,11 @@ private constructor(
private val purchaseAmount: JsonField,
private val purchaseCurrency: JsonField,
private val realTimeDecisionId: JsonField,
+ private val requestorAuthenticationIndicator:
+ JsonField,
+ private val requestorChallengeIndicator: JsonField,
+ private val requestorName: JsonField,
+ private val requestorUrl: JsonField,
private val status: JsonField,
private val type: JsonField,
private val additionalProperties: MutableMap,
@@ -1858,6 +1863,20 @@ private constructor(
@JsonProperty("real_time_decision_id")
@ExcludeMissing
realTimeDecisionId: JsonField = JsonMissing.of(),
+ @JsonProperty("requestor_authentication_indicator")
+ @ExcludeMissing
+ requestorAuthenticationIndicator: JsonField =
+ JsonMissing.of(),
+ @JsonProperty("requestor_challenge_indicator")
+ @ExcludeMissing
+ requestorChallengeIndicator: JsonField =
+ JsonMissing.of(),
+ @JsonProperty("requestor_name")
+ @ExcludeMissing
+ requestorName: JsonField = JsonMissing.of(),
+ @JsonProperty("requestor_url")
+ @ExcludeMissing
+ requestorUrl: JsonField = JsonMissing.of(),
@JsonProperty("status")
@ExcludeMissing
status: JsonField = JsonMissing.of(),
@@ -1888,6 +1907,10 @@ private constructor(
purchaseAmount,
purchaseCurrency,
realTimeDecisionId,
+ requestorAuthenticationIndicator,
+ requestorChallengeIndicator,
+ requestorName,
+ requestorUrl,
status,
type,
mutableMapOf(),
@@ -2128,6 +2151,43 @@ private constructor(
fun realTimeDecisionId(): Optional =
realTimeDecisionId.getOptional("real_time_decision_id")
+ /**
+ * The 3DS requestor authentication indicator describes why the authentication attempt
+ * is performed, such as for a recurring transaction.
+ *
+ * @throws IncreaseInvalidDataException if the JSON field has an unexpected type (e.g.
+ * if the server responded with an unexpected value).
+ */
+ fun requestorAuthenticationIndicator(): Optional =
+ requestorAuthenticationIndicator.getOptional("requestor_authentication_indicator")
+
+ /**
+ * Indicates whether a challenge is requested for this transaction.
+ *
+ * @throws IncreaseInvalidDataException if the JSON field has an unexpected type (e.g.
+ * if the server responded with an unexpected value).
+ */
+ fun requestorChallengeIndicator(): Optional =
+ requestorChallengeIndicator.getOptional("requestor_challenge_indicator")
+
+ /**
+ * The name of the 3DS requestor.
+ *
+ * @throws IncreaseInvalidDataException if the JSON field has an unexpected type or is
+ * unexpectedly missing or null (e.g. if the server responded with an unexpected
+ * value).
+ */
+ fun requestorName(): String = requestorName.getRequired("requestor_name")
+
+ /**
+ * The URL of the 3DS requestor.
+ *
+ * @throws IncreaseInvalidDataException if the JSON field has an unexpected type or is
+ * unexpectedly missing or null (e.g. if the server responded with an unexpected
+ * value).
+ */
+ fun requestorUrl(): String = requestorUrl.getRequired("requestor_url")
+
/**
* The status of the card authentication.
*
@@ -2391,6 +2451,48 @@ private constructor(
@ExcludeMissing
fun _realTimeDecisionId(): JsonField = realTimeDecisionId
+ /**
+ * Returns the raw JSON value of [requestorAuthenticationIndicator].
+ *
+ * Unlike [requestorAuthenticationIndicator], this method doesn't throw if the JSON
+ * field has an unexpected type.
+ */
+ @JsonProperty("requestor_authentication_indicator")
+ @ExcludeMissing
+ fun _requestorAuthenticationIndicator(): JsonField =
+ requestorAuthenticationIndicator
+
+ /**
+ * Returns the raw JSON value of [requestorChallengeIndicator].
+ *
+ * Unlike [requestorChallengeIndicator], this method doesn't throw if the JSON field has
+ * an unexpected type.
+ */
+ @JsonProperty("requestor_challenge_indicator")
+ @ExcludeMissing
+ fun _requestorChallengeIndicator(): JsonField =
+ requestorChallengeIndicator
+
+ /**
+ * Returns the raw JSON value of [requestorName].
+ *
+ * Unlike [requestorName], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("requestor_name")
+ @ExcludeMissing
+ fun _requestorName(): JsonField = requestorName
+
+ /**
+ * Returns the raw JSON value of [requestorUrl].
+ *
+ * Unlike [requestorUrl], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("requestor_url")
+ @ExcludeMissing
+ fun _requestorUrl(): JsonField = requestorUrl
+
/**
* Returns the raw JSON value of [status].
*
@@ -2449,6 +2551,10 @@ private constructor(
* .purchaseAmount()
* .purchaseCurrency()
* .realTimeDecisionId()
+ * .requestorAuthenticationIndicator()
+ * .requestorChallengeIndicator()
+ * .requestorName()
+ * .requestorUrl()
* .status()
* .type()
* ```
@@ -2484,6 +2590,13 @@ private constructor(
private var purchaseAmount: JsonField? = null
private var purchaseCurrency: JsonField? = null
private var realTimeDecisionId: JsonField? = null
+ private var requestorAuthenticationIndicator:
+ JsonField? =
+ null
+ private var requestorChallengeIndicator: JsonField? =
+ null
+ private var requestorName: JsonField? = null
+ private var requestorUrl: JsonField? = null
private var status: JsonField? = null
private var type: JsonField? = null
private var additionalProperties: MutableMap = mutableMapOf()
@@ -2515,6 +2628,11 @@ private constructor(
purchaseAmount = cardAuthentication.purchaseAmount
purchaseCurrency = cardAuthentication.purchaseCurrency
realTimeDecisionId = cardAuthentication.realTimeDecisionId
+ requestorAuthenticationIndicator =
+ cardAuthentication.requestorAuthenticationIndicator
+ requestorChallengeIndicator = cardAuthentication.requestorChallengeIndicator
+ requestorName = cardAuthentication.requestorName
+ requestorUrl = cardAuthentication.requestorUrl
status = cardAuthentication.status
type = cardAuthentication.type
additionalProperties = cardAuthentication.additionalProperties.toMutableMap()
@@ -3028,6 +3146,91 @@ private constructor(
this.realTimeDecisionId = realTimeDecisionId
}
+ /**
+ * The 3DS requestor authentication indicator describes why the authentication
+ * attempt is performed, such as for a recurring transaction.
+ */
+ fun requestorAuthenticationIndicator(
+ requestorAuthenticationIndicator: RequestorAuthenticationIndicator?
+ ) =
+ requestorAuthenticationIndicator(
+ JsonField.ofNullable(requestorAuthenticationIndicator)
+ )
+
+ /**
+ * Alias for calling [Builder.requestorAuthenticationIndicator] with
+ * `requestorAuthenticationIndicator.orElse(null)`.
+ */
+ fun requestorAuthenticationIndicator(
+ requestorAuthenticationIndicator: Optional
+ ) = requestorAuthenticationIndicator(requestorAuthenticationIndicator.getOrNull())
+
+ /**
+ * Sets [Builder.requestorAuthenticationIndicator] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.requestorAuthenticationIndicator] with a
+ * well-typed [RequestorAuthenticationIndicator] value instead. This method is
+ * primarily for setting the field to an undocumented or not yet supported value.
+ */
+ fun requestorAuthenticationIndicator(
+ requestorAuthenticationIndicator: JsonField
+ ) = apply {
+ this.requestorAuthenticationIndicator = requestorAuthenticationIndicator
+ }
+
+ /** Indicates whether a challenge is requested for this transaction. */
+ fun requestorChallengeIndicator(
+ requestorChallengeIndicator: RequestorChallengeIndicator?
+ ) = requestorChallengeIndicator(JsonField.ofNullable(requestorChallengeIndicator))
+
+ /**
+ * Alias for calling [Builder.requestorChallengeIndicator] with
+ * `requestorChallengeIndicator.orElse(null)`.
+ */
+ fun requestorChallengeIndicator(
+ requestorChallengeIndicator: Optional
+ ) = requestorChallengeIndicator(requestorChallengeIndicator.getOrNull())
+
+ /**
+ * Sets [Builder.requestorChallengeIndicator] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.requestorChallengeIndicator] with a well-typed
+ * [RequestorChallengeIndicator] value instead. This method is primarily for setting
+ * the field to an undocumented or not yet supported value.
+ */
+ fun requestorChallengeIndicator(
+ requestorChallengeIndicator: JsonField
+ ) = apply { this.requestorChallengeIndicator = requestorChallengeIndicator }
+
+ /** The name of the 3DS requestor. */
+ fun requestorName(requestorName: String) =
+ requestorName(JsonField.of(requestorName))
+
+ /**
+ * Sets [Builder.requestorName] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.requestorName] with a well-typed [String] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun requestorName(requestorName: JsonField) = apply {
+ this.requestorName = requestorName
+ }
+
+ /** The URL of the 3DS requestor. */
+ fun requestorUrl(requestorUrl: String) = requestorUrl(JsonField.of(requestorUrl))
+
+ /**
+ * Sets [Builder.requestorUrl] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.requestorUrl] with a well-typed [String] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun requestorUrl(requestorUrl: JsonField) = apply {
+ this.requestorUrl = requestorUrl
+ }
+
/** The status of the card authentication. */
fun status(status: Status) = status(JsonField.of(status))
@@ -3109,6 +3312,10 @@ private constructor(
* .purchaseAmount()
* .purchaseCurrency()
* .realTimeDecisionId()
+ * .requestorAuthenticationIndicator()
+ * .requestorChallengeIndicator()
+ * .requestorName()
+ * .requestorUrl()
* .status()
* .type()
* ```
@@ -3142,6 +3349,13 @@ private constructor(
checkRequired("purchaseAmount", purchaseAmount),
checkRequired("purchaseCurrency", purchaseCurrency),
checkRequired("realTimeDecisionId", realTimeDecisionId),
+ checkRequired(
+ "requestorAuthenticationIndicator",
+ requestorAuthenticationIndicator,
+ ),
+ checkRequired("requestorChallengeIndicator", requestorChallengeIndicator),
+ checkRequired("requestorName", requestorName),
+ checkRequired("requestorUrl", requestorUrl),
checkRequired("status", status),
checkRequired("type", type),
additionalProperties.toMutableMap(),
@@ -3180,6 +3394,10 @@ private constructor(
purchaseAmount()
purchaseCurrency()
realTimeDecisionId()
+ requestorAuthenticationIndicator().ifPresent { it.validate() }
+ requestorChallengeIndicator().ifPresent { it.validate() }
+ requestorName()
+ requestorUrl()
status().validate()
type().validate()
validated = true
@@ -3226,6 +3444,10 @@ private constructor(
(if (purchaseAmount.asKnown().isPresent) 1 else 0) +
(if (purchaseCurrency.asKnown().isPresent) 1 else 0) +
(if (realTimeDecisionId.asKnown().isPresent) 1 else 0) +
+ (requestorAuthenticationIndicator.asKnown().getOrNull()?.validity() ?: 0) +
+ (requestorChallengeIndicator.asKnown().getOrNull()?.validity() ?: 0) +
+ (if (requestorName.asKnown().isPresent) 1 else 0) +
+ (if (requestorUrl.asKnown().isPresent) 1 else 0) +
(status.asKnown().getOrNull()?.validity() ?: 0) +
(type.asKnown().getOrNull()?.validity() ?: 0)
@@ -5377,6 +5599,450 @@ private constructor(
"DeviceChannel{browser=$browser, category=$category, additionalProperties=$additionalProperties}"
}
+ /**
+ * The 3DS requestor authentication indicator describes why the authentication attempt
+ * is performed, such as for a recurring transaction.
+ */
+ class RequestorAuthenticationIndicator
+ @JsonCreator
+ private constructor(private val value: JsonField) : Enum {
+
+ /**
+ * Returns this class instance's raw value.
+ *
+ * This is usually only useful if this instance was deserialized from data that
+ * doesn't match any known member, and you want to know that value. For example, if
+ * the SDK is on an older version than the API, then the API may respond with new
+ * members that the SDK is unaware of.
+ */
+ @com.fasterxml.jackson.annotation.JsonValue fun _value(): JsonField = value
+
+ companion object {
+
+ /** The authentication is for a payment transaction. */
+ @JvmField val PAYMENT_TRANSACTION = of("payment_transaction")
+
+ /** The authentication is for a recurring transaction. */
+ @JvmField val RECURRING_TRANSACTION = of("recurring_transaction")
+
+ /** The authentication is for an installment transaction. */
+ @JvmField val INSTALLMENT_TRANSACTION = of("installment_transaction")
+
+ /** The authentication is for adding a card. */
+ @JvmField val ADD_CARD = of("add_card")
+
+ /** The authentication is for maintaining a card. */
+ @JvmField val MAINTAIN_CARD = of("maintain_card")
+
+ /** The authentication is for EMV token cardholder verification. */
+ @JvmField
+ val EMV_TOKEN_CARDHOLDER_VERIFICATION = of("emv_token_cardholder_verification")
+
+ /** The authentication is for a billing agreement. */
+ @JvmField val BILLING_AGREEMENT = of("billing_agreement")
+
+ @JvmStatic
+ fun of(value: String) = RequestorAuthenticationIndicator(JsonField.of(value))
+ }
+
+ /** An enum containing [RequestorAuthenticationIndicator]'s known values. */
+ enum class Known {
+ /** The authentication is for a payment transaction. */
+ PAYMENT_TRANSACTION,
+ /** The authentication is for a recurring transaction. */
+ RECURRING_TRANSACTION,
+ /** The authentication is for an installment transaction. */
+ INSTALLMENT_TRANSACTION,
+ /** The authentication is for adding a card. */
+ ADD_CARD,
+ /** The authentication is for maintaining a card. */
+ MAINTAIN_CARD,
+ /** The authentication is for EMV token cardholder verification. */
+ EMV_TOKEN_CARDHOLDER_VERIFICATION,
+ /** The authentication is for a billing agreement. */
+ BILLING_AGREEMENT,
+ }
+
+ /**
+ * An enum containing [RequestorAuthenticationIndicator]'s known values, as well as
+ * an [_UNKNOWN] member.
+ *
+ * An instance of [RequestorAuthenticationIndicator] can contain an unknown value in
+ * a couple of cases:
+ * - It was deserialized from data that doesn't match any known member. For example,
+ * if the SDK is on an older version than the API, then the API may respond with
+ * new members that the SDK is unaware of.
+ * - It was constructed with an arbitrary value using the [of] method.
+ */
+ enum class Value {
+ /** The authentication is for a payment transaction. */
+ PAYMENT_TRANSACTION,
+ /** The authentication is for a recurring transaction. */
+ RECURRING_TRANSACTION,
+ /** The authentication is for an installment transaction. */
+ INSTALLMENT_TRANSACTION,
+ /** The authentication is for adding a card. */
+ ADD_CARD,
+ /** The authentication is for maintaining a card. */
+ MAINTAIN_CARD,
+ /** The authentication is for EMV token cardholder verification. */
+ EMV_TOKEN_CARDHOLDER_VERIFICATION,
+ /** The authentication is for a billing agreement. */
+ BILLING_AGREEMENT,
+ /**
+ * An enum member indicating that [RequestorAuthenticationIndicator] was
+ * instantiated with an unknown value.
+ */
+ _UNKNOWN,
+ }
+
+ /**
+ * Returns an enum member corresponding to this class instance's value, or
+ * [Value._UNKNOWN] if the class was instantiated with an unknown value.
+ *
+ * Use the [known] method instead if you're certain the value is always known or if
+ * you want to throw for the unknown case.
+ */
+ fun value(): Value =
+ when (this) {
+ PAYMENT_TRANSACTION -> Value.PAYMENT_TRANSACTION
+ RECURRING_TRANSACTION -> Value.RECURRING_TRANSACTION
+ INSTALLMENT_TRANSACTION -> Value.INSTALLMENT_TRANSACTION
+ ADD_CARD -> Value.ADD_CARD
+ MAINTAIN_CARD -> Value.MAINTAIN_CARD
+ EMV_TOKEN_CARDHOLDER_VERIFICATION -> Value.EMV_TOKEN_CARDHOLDER_VERIFICATION
+ BILLING_AGREEMENT -> Value.BILLING_AGREEMENT
+ else -> Value._UNKNOWN
+ }
+
+ /**
+ * Returns an enum member corresponding to this class instance's value.
+ *
+ * Use the [value] method instead if you're uncertain the value is always known and
+ * don't want to throw for the unknown case.
+ *
+ * @throws IncreaseInvalidDataException if this class instance's value is a not a
+ * known member.
+ */
+ fun known(): Known =
+ when (this) {
+ PAYMENT_TRANSACTION -> Known.PAYMENT_TRANSACTION
+ RECURRING_TRANSACTION -> Known.RECURRING_TRANSACTION
+ INSTALLMENT_TRANSACTION -> Known.INSTALLMENT_TRANSACTION
+ ADD_CARD -> Known.ADD_CARD
+ MAINTAIN_CARD -> Known.MAINTAIN_CARD
+ EMV_TOKEN_CARDHOLDER_VERIFICATION -> Known.EMV_TOKEN_CARDHOLDER_VERIFICATION
+ BILLING_AGREEMENT -> Known.BILLING_AGREEMENT
+ else ->
+ throw IncreaseInvalidDataException(
+ "Unknown RequestorAuthenticationIndicator: $value"
+ )
+ }
+
+ /**
+ * Returns this class instance's primitive wire representation.
+ *
+ * This differs from the [toString] method because that method is primarily for
+ * debugging and generally doesn't throw.
+ *
+ * @throws IncreaseInvalidDataException if this class instance's value does not have
+ * the expected primitive type.
+ */
+ fun asString(): String =
+ _value().asString().orElseThrow {
+ IncreaseInvalidDataException("Value is not a String")
+ }
+
+ private var validated: Boolean = false
+
+ fun validate(): RequestorAuthenticationIndicator = apply {
+ if (validated) {
+ return@apply
+ }
+
+ known()
+ validated = true
+ }
+
+ fun isValid(): Boolean =
+ try {
+ validate()
+ true
+ } catch (e: IncreaseInvalidDataException) {
+ false
+ }
+
+ /**
+ * Returns a score indicating how many valid values are contained in this object
+ * recursively.
+ *
+ * Used for best match union deserialization.
+ */
+ @JvmSynthetic internal fun validity(): Int = if (value() == Value._UNKNOWN) 0 else 1
+
+ override fun equals(other: Any?): Boolean {
+ if (this === other) {
+ return true
+ }
+
+ return other is RequestorAuthenticationIndicator && value == other.value
+ }
+
+ override fun hashCode() = value.hashCode()
+
+ override fun toString() = value.toString()
+ }
+
+ /** Indicates whether a challenge is requested for this transaction. */
+ class RequestorChallengeIndicator
+ @JsonCreator
+ private constructor(private val value: JsonField) : Enum {
+
+ /**
+ * Returns this class instance's raw value.
+ *
+ * This is usually only useful if this instance was deserialized from data that
+ * doesn't match any known member, and you want to know that value. For example, if
+ * the SDK is on an older version than the API, then the API may respond with new
+ * members that the SDK is unaware of.
+ */
+ @com.fasterxml.jackson.annotation.JsonValue fun _value(): JsonField = value
+
+ companion object {
+
+ /** No preference. */
+ @JvmField val NO_PREFERENCE = of("no_preference")
+
+ /** No challenge requested. */
+ @JvmField val NO_CHALLENGE_REQUESTED = of("no_challenge_requested")
+
+ /** Challenge requested, 3DS Requestor preference. */
+ @JvmField
+ val CHALLENGE_REQUESTED_3DS_REQUESTOR_PREFERENCE =
+ of("challenge_requested_3ds_requestor_preference")
+
+ /** Challenge requested, mandate. */
+ @JvmField val CHALLENGE_REQUESTED_MANDATE = of("challenge_requested_mandate")
+
+ /** No challenge requested, transactional risk analysis already performed. */
+ @JvmField
+ val NO_CHALLENGE_REQUESTED_TRANSACTIONAL_RISK_ANALYSIS_ALREADY_PERFORMED =
+ of("no_challenge_requested_transactional_risk_analysis_already_performed")
+
+ /** No challenge requested, data share only. */
+ @JvmField
+ val NO_CHALLENGE_REQUESTED_DATA_SHARE_ONLY =
+ of("no_challenge_requested_data_share_only")
+
+ /** No challenge requested, strong consumer authentication already performed. */
+ @JvmField
+ val NO_CHALLENGE_REQUESTED_STRONG_CONSUMER_AUTHENTICATION_ALREADY_PERFORMED =
+ of(
+ "no_challenge_requested_strong_consumer_authentication_already_performed"
+ )
+
+ /**
+ * No challenge requested, utilize whitelist exemption if no challenge required.
+ */
+ @JvmField
+ val NO_CHALLENGE_REQUESTED_UTILIZE_WHITELIST_EXEMPTION_IF_NO_CHALLENGE_REQUIRED =
+ of(
+ "no_challenge_requested_utilize_whitelist_exemption_if_no_challenge_required"
+ )
+
+ /** Challenge requested, whitelist prompt requested if challenge required. */
+ @JvmField
+ val CHALLENGE_REQUESTED_WHITELIST_PROMPT_REQUESTED_IF_CHALLENGE_REQUIRED =
+ of("challenge_requested_whitelist_prompt_requested_if_challenge_required")
+
+ @JvmStatic
+ fun of(value: String) = RequestorChallengeIndicator(JsonField.of(value))
+ }
+
+ /** An enum containing [RequestorChallengeIndicator]'s known values. */
+ enum class Known {
+ /** No preference. */
+ NO_PREFERENCE,
+ /** No challenge requested. */
+ NO_CHALLENGE_REQUESTED,
+ /** Challenge requested, 3DS Requestor preference. */
+ CHALLENGE_REQUESTED_3DS_REQUESTOR_PREFERENCE,
+ /** Challenge requested, mandate. */
+ CHALLENGE_REQUESTED_MANDATE,
+ /** No challenge requested, transactional risk analysis already performed. */
+ NO_CHALLENGE_REQUESTED_TRANSACTIONAL_RISK_ANALYSIS_ALREADY_PERFORMED,
+ /** No challenge requested, data share only. */
+ NO_CHALLENGE_REQUESTED_DATA_SHARE_ONLY,
+ /** No challenge requested, strong consumer authentication already performed. */
+ NO_CHALLENGE_REQUESTED_STRONG_CONSUMER_AUTHENTICATION_ALREADY_PERFORMED,
+ /**
+ * No challenge requested, utilize whitelist exemption if no challenge required.
+ */
+ NO_CHALLENGE_REQUESTED_UTILIZE_WHITELIST_EXEMPTION_IF_NO_CHALLENGE_REQUIRED,
+ /** Challenge requested, whitelist prompt requested if challenge required. */
+ CHALLENGE_REQUESTED_WHITELIST_PROMPT_REQUESTED_IF_CHALLENGE_REQUIRED,
+ }
+
+ /**
+ * An enum containing [RequestorChallengeIndicator]'s known values, as well as an
+ * [_UNKNOWN] member.
+ *
+ * An instance of [RequestorChallengeIndicator] can contain an unknown value in a
+ * couple of cases:
+ * - It was deserialized from data that doesn't match any known member. For example,
+ * if the SDK is on an older version than the API, then the API may respond with
+ * new members that the SDK is unaware of.
+ * - It was constructed with an arbitrary value using the [of] method.
+ */
+ enum class Value {
+ /** No preference. */
+ NO_PREFERENCE,
+ /** No challenge requested. */
+ NO_CHALLENGE_REQUESTED,
+ /** Challenge requested, 3DS Requestor preference. */
+ CHALLENGE_REQUESTED_3DS_REQUESTOR_PREFERENCE,
+ /** Challenge requested, mandate. */
+ CHALLENGE_REQUESTED_MANDATE,
+ /** No challenge requested, transactional risk analysis already performed. */
+ NO_CHALLENGE_REQUESTED_TRANSACTIONAL_RISK_ANALYSIS_ALREADY_PERFORMED,
+ /** No challenge requested, data share only. */
+ NO_CHALLENGE_REQUESTED_DATA_SHARE_ONLY,
+ /** No challenge requested, strong consumer authentication already performed. */
+ NO_CHALLENGE_REQUESTED_STRONG_CONSUMER_AUTHENTICATION_ALREADY_PERFORMED,
+ /**
+ * No challenge requested, utilize whitelist exemption if no challenge required.
+ */
+ NO_CHALLENGE_REQUESTED_UTILIZE_WHITELIST_EXEMPTION_IF_NO_CHALLENGE_REQUIRED,
+ /** Challenge requested, whitelist prompt requested if challenge required. */
+ CHALLENGE_REQUESTED_WHITELIST_PROMPT_REQUESTED_IF_CHALLENGE_REQUIRED,
+ /**
+ * An enum member indicating that [RequestorChallengeIndicator] was instantiated
+ * with an unknown value.
+ */
+ _UNKNOWN,
+ }
+
+ /**
+ * Returns an enum member corresponding to this class instance's value, or
+ * [Value._UNKNOWN] if the class was instantiated with an unknown value.
+ *
+ * Use the [known] method instead if you're certain the value is always known or if
+ * you want to throw for the unknown case.
+ */
+ fun value(): Value =
+ when (this) {
+ NO_PREFERENCE -> Value.NO_PREFERENCE
+ NO_CHALLENGE_REQUESTED -> Value.NO_CHALLENGE_REQUESTED
+ CHALLENGE_REQUESTED_3DS_REQUESTOR_PREFERENCE ->
+ Value.CHALLENGE_REQUESTED_3DS_REQUESTOR_PREFERENCE
+ CHALLENGE_REQUESTED_MANDATE -> Value.CHALLENGE_REQUESTED_MANDATE
+ NO_CHALLENGE_REQUESTED_TRANSACTIONAL_RISK_ANALYSIS_ALREADY_PERFORMED ->
+ Value
+ .NO_CHALLENGE_REQUESTED_TRANSACTIONAL_RISK_ANALYSIS_ALREADY_PERFORMED
+ NO_CHALLENGE_REQUESTED_DATA_SHARE_ONLY ->
+ Value.NO_CHALLENGE_REQUESTED_DATA_SHARE_ONLY
+ NO_CHALLENGE_REQUESTED_STRONG_CONSUMER_AUTHENTICATION_ALREADY_PERFORMED ->
+ Value
+ .NO_CHALLENGE_REQUESTED_STRONG_CONSUMER_AUTHENTICATION_ALREADY_PERFORMED
+ NO_CHALLENGE_REQUESTED_UTILIZE_WHITELIST_EXEMPTION_IF_NO_CHALLENGE_REQUIRED ->
+ Value
+ .NO_CHALLENGE_REQUESTED_UTILIZE_WHITELIST_EXEMPTION_IF_NO_CHALLENGE_REQUIRED
+ CHALLENGE_REQUESTED_WHITELIST_PROMPT_REQUESTED_IF_CHALLENGE_REQUIRED ->
+ Value
+ .CHALLENGE_REQUESTED_WHITELIST_PROMPT_REQUESTED_IF_CHALLENGE_REQUIRED
+ else -> Value._UNKNOWN
+ }
+
+ /**
+ * Returns an enum member corresponding to this class instance's value.
+ *
+ * Use the [value] method instead if you're uncertain the value is always known and
+ * don't want to throw for the unknown case.
+ *
+ * @throws IncreaseInvalidDataException if this class instance's value is a not a
+ * known member.
+ */
+ fun known(): Known =
+ when (this) {
+ NO_PREFERENCE -> Known.NO_PREFERENCE
+ NO_CHALLENGE_REQUESTED -> Known.NO_CHALLENGE_REQUESTED
+ CHALLENGE_REQUESTED_3DS_REQUESTOR_PREFERENCE ->
+ Known.CHALLENGE_REQUESTED_3DS_REQUESTOR_PREFERENCE
+ CHALLENGE_REQUESTED_MANDATE -> Known.CHALLENGE_REQUESTED_MANDATE
+ NO_CHALLENGE_REQUESTED_TRANSACTIONAL_RISK_ANALYSIS_ALREADY_PERFORMED ->
+ Known
+ .NO_CHALLENGE_REQUESTED_TRANSACTIONAL_RISK_ANALYSIS_ALREADY_PERFORMED
+ NO_CHALLENGE_REQUESTED_DATA_SHARE_ONLY ->
+ Known.NO_CHALLENGE_REQUESTED_DATA_SHARE_ONLY
+ NO_CHALLENGE_REQUESTED_STRONG_CONSUMER_AUTHENTICATION_ALREADY_PERFORMED ->
+ Known
+ .NO_CHALLENGE_REQUESTED_STRONG_CONSUMER_AUTHENTICATION_ALREADY_PERFORMED
+ NO_CHALLENGE_REQUESTED_UTILIZE_WHITELIST_EXEMPTION_IF_NO_CHALLENGE_REQUIRED ->
+ Known
+ .NO_CHALLENGE_REQUESTED_UTILIZE_WHITELIST_EXEMPTION_IF_NO_CHALLENGE_REQUIRED
+ CHALLENGE_REQUESTED_WHITELIST_PROMPT_REQUESTED_IF_CHALLENGE_REQUIRED ->
+ Known
+ .CHALLENGE_REQUESTED_WHITELIST_PROMPT_REQUESTED_IF_CHALLENGE_REQUIRED
+ else ->
+ throw IncreaseInvalidDataException(
+ "Unknown RequestorChallengeIndicator: $value"
+ )
+ }
+
+ /**
+ * Returns this class instance's primitive wire representation.
+ *
+ * This differs from the [toString] method because that method is primarily for
+ * debugging and generally doesn't throw.
+ *
+ * @throws IncreaseInvalidDataException if this class instance's value does not have
+ * the expected primitive type.
+ */
+ fun asString(): String =
+ _value().asString().orElseThrow {
+ IncreaseInvalidDataException("Value is not a String")
+ }
+
+ private var validated: Boolean = false
+
+ fun validate(): RequestorChallengeIndicator = apply {
+ if (validated) {
+ return@apply
+ }
+
+ known()
+ validated = true
+ }
+
+ fun isValid(): Boolean =
+ try {
+ validate()
+ true
+ } catch (e: IncreaseInvalidDataException) {
+ false
+ }
+
+ /**
+ * Returns a score indicating how many valid values are contained in this object
+ * recursively.
+ *
+ * Used for best match union deserialization.
+ */
+ @JvmSynthetic internal fun validity(): Int = if (value() == Value._UNKNOWN) 0 else 1
+
+ override fun equals(other: Any?): Boolean {
+ if (this === other) {
+ return true
+ }
+
+ return other is RequestorChallengeIndicator && value == other.value
+ }
+
+ override fun hashCode() = value.hashCode()
+
+ override fun toString() = value.toString()
+ }
+
/** The status of the card authentication. */
class Status @JsonCreator private constructor(private val value: JsonField) :
Enum {
@@ -5738,6 +6404,10 @@ private constructor(
purchaseAmount == other.purchaseAmount &&
purchaseCurrency == other.purchaseCurrency &&
realTimeDecisionId == other.realTimeDecisionId &&
+ requestorAuthenticationIndicator == other.requestorAuthenticationIndicator &&
+ requestorChallengeIndicator == other.requestorChallengeIndicator &&
+ requestorName == other.requestorName &&
+ requestorUrl == other.requestorUrl &&
status == other.status &&
type == other.type &&
additionalProperties == other.additionalProperties
@@ -5770,6 +6440,10 @@ private constructor(
purchaseAmount,
purchaseCurrency,
realTimeDecisionId,
+ requestorAuthenticationIndicator,
+ requestorChallengeIndicator,
+ requestorName,
+ requestorUrl,
status,
type,
additionalProperties,
@@ -5779,7 +6453,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "CardAuthentication{id=$id, billingAddressCity=$billingAddressCity, billingAddressCountry=$billingAddressCountry, billingAddressLine1=$billingAddressLine1, billingAddressLine2=$billingAddressLine2, billingAddressLine3=$billingAddressLine3, billingAddressPostalCode=$billingAddressPostalCode, billingAddressState=$billingAddressState, cardId=$cardId, cardPaymentId=$cardPaymentId, cardholderEmail=$cardholderEmail, cardholderName=$cardholderName, category=$category, challenge=$challenge, createdAt=$createdAt, denyReason=$denyReason, deviceChannel=$deviceChannel, merchantAcceptorId=$merchantAcceptorId, merchantCategoryCode=$merchantCategoryCode, merchantCountry=$merchantCountry, merchantName=$merchantName, priorCardAuthenticationId=$priorCardAuthenticationId, purchaseAmount=$purchaseAmount, purchaseCurrency=$purchaseCurrency, realTimeDecisionId=$realTimeDecisionId, status=$status, type=$type, additionalProperties=$additionalProperties}"
+ "CardAuthentication{id=$id, billingAddressCity=$billingAddressCity, billingAddressCountry=$billingAddressCountry, billingAddressLine1=$billingAddressLine1, billingAddressLine2=$billingAddressLine2, billingAddressLine3=$billingAddressLine3, billingAddressPostalCode=$billingAddressPostalCode, billingAddressState=$billingAddressState, cardId=$cardId, cardPaymentId=$cardPaymentId, cardholderEmail=$cardholderEmail, cardholderName=$cardholderName, category=$category, challenge=$challenge, createdAt=$createdAt, denyReason=$denyReason, deviceChannel=$deviceChannel, merchantAcceptorId=$merchantAcceptorId, merchantCategoryCode=$merchantCategoryCode, merchantCountry=$merchantCountry, merchantName=$merchantName, priorCardAuthenticationId=$priorCardAuthenticationId, purchaseAmount=$purchaseAmount, purchaseCurrency=$purchaseCurrency, realTimeDecisionId=$realTimeDecisionId, requestorAuthenticationIndicator=$requestorAuthenticationIndicator, requestorChallengeIndicator=$requestorChallengeIndicator, requestorName=$requestorName, requestorUrl=$requestorUrl, status=$status, type=$type, additionalProperties=$additionalProperties}"
}
/**
diff --git a/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentListPageResponseTest.kt b/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentListPageResponseTest.kt
index 380c9aa1d..176c611ac 100644
--- a/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentListPageResponseTest.kt
+++ b/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentListPageResponseTest.kt
@@ -121,6 +121,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -2221,6 +2233,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -4321,6 +4345,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -6421,6 +6457,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -8559,6 +8607,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -10541,6 +10601,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -12523,6 +12595,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -14505,6 +14589,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -16535,6 +16631,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -18635,6 +18743,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -20735,6 +20855,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -22835,6 +22967,18 @@ internal class CardPaymentListPageResponseTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
diff --git a/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentTest.kt b/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentTest.kt
index 8430169f4..304be8897 100644
--- a/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentTest.kt
+++ b/increase-java-core/src/test/kotlin/com/increase/api/models/cardpayments/CardPaymentTest.kt
@@ -108,6 +108,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -1968,6 +1980,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -3828,6 +3852,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -5688,6 +5724,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -7575,6 +7623,17 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication.RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status.VALIDATING_CHALLENGE
)
@@ -9245,6 +9304,17 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication.RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status.VALIDATING_CHALLENGE
)
@@ -10915,6 +10985,17 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication.RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status.VALIDATING_CHALLENGE
)
@@ -12585,6 +12666,17 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication.RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status.VALIDATING_CHALLENGE
)
@@ -14302,6 +14394,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -16162,6 +16266,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -18022,6 +18138,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE
@@ -19882,6 +20010,18 @@ internal class CardPaymentTest {
.purchaseAmount(1000L)
.purchaseCurrency("USD")
.realTimeDecisionId(null)
+ .requestorAuthenticationIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorAuthenticationIndicator
+ .PAYMENT_TRANSACTION
+ )
+ .requestorChallengeIndicator(
+ CardPayment.Element.CardAuthentication
+ .RequestorChallengeIndicator
+ .NO_PREFERENCE
+ )
+ .requestorName("Example Requestor")
+ .requestorUrl("https://example.com")
.status(
CardPayment.Element.CardAuthentication.Status
.VALIDATING_CHALLENGE