88use Increase \CardPayments \CardPayment \Element \CardAuthentication \Challenge ;
99use Increase \CardPayments \CardPayment \Element \CardAuthentication \DenyReason ;
1010use Increase \CardPayments \CardPayment \Element \CardAuthentication \DeviceChannel ;
11+ use Increase \CardPayments \CardPayment \Element \CardAuthentication \RequestorAuthenticationIndicator ;
12+ use Increase \CardPayments \CardPayment \Element \CardAuthentication \RequestorChallengeIndicator ;
1113use Increase \CardPayments \CardPayment \Element \CardAuthentication \Status ;
1214use Increase \CardPayments \CardPayment \Element \CardAuthentication \Type ;
1315use Increase \Core \Attributes \Required ;
4648 * purchaseAmount: int|null,
4749 * purchaseCurrency: string|null,
4850 * realTimeDecisionID: string|null,
51+ * requestorAuthenticationIndicator: null|RequestorAuthenticationIndicator|value-of<RequestorAuthenticationIndicator>,
52+ * requestorChallengeIndicator: null|RequestorChallengeIndicator|value-of<RequestorChallengeIndicator>,
53+ * requestorName: string,
54+ * requestorURL: string,
4955 * status: Status|value-of<Status>,
5056 * type: Type|value-of<Type>,
5157 * }
@@ -211,6 +217,40 @@ enum: Category::class,
211217 #[Required('real_time_decision_id ' )]
212218 public ?string $ realTimeDecisionID ;
213219
220+ /**
221+ * The 3DS requestor authentication indicator describes why the authentication attempt is performed, such as for a recurring transaction.
222+ *
223+ * @var value-of<RequestorAuthenticationIndicator>|null $requestorAuthenticationIndicator
224+ */
225+ #[Required(
226+ 'requestor_authentication_indicator ' ,
227+ enum: RequestorAuthenticationIndicator::class,
228+ )]
229+ public ?string $ requestorAuthenticationIndicator ;
230+
231+ /**
232+ * Indicates whether a challenge is requested for this transaction.
233+ *
234+ * @var value-of<RequestorChallengeIndicator>|null $requestorChallengeIndicator
235+ */
236+ #[Required(
237+ 'requestor_challenge_indicator ' ,
238+ enum: RequestorChallengeIndicator::class
239+ )]
240+ public ?string $ requestorChallengeIndicator ;
241+
242+ /**
243+ * The name of the 3DS requestor.
244+ */
245+ #[Required('requestor_name ' )]
246+ public string $ requestorName ;
247+
248+ /**
249+ * The URL of the 3DS requestor.
250+ */
251+ #[Required('requestor_url ' )]
252+ public string $ requestorURL ;
253+
214254 /**
215255 * The status of the card authentication.
216256 *
@@ -258,6 +298,10 @@ enum: Category::class,
258298 * purchaseAmount: ...,
259299 * purchaseCurrency: ...,
260300 * realTimeDecisionID: ...,
301+ * requestorAuthenticationIndicator: ...,
302+ * requestorChallengeIndicator: ...,
303+ * requestorName: ...,
304+ * requestorURL: ...,
261305 * status: ...,
262306 * type: ...,
263307 * )
@@ -292,6 +336,10 @@ enum: Category::class,
292336 * ->withPurchaseAmount(...)
293337 * ->withPurchaseCurrency(...)
294338 * ->withRealTimeDecisionID(...)
339+ * ->withRequestorAuthenticationIndicator(...)
340+ * ->withRequestorChallengeIndicator(...)
341+ * ->withRequestorName(...)
342+ * ->withRequestorURL(...)
295343 * ->withStatus(...)
296344 * ->withType(...)
297345 * ```
@@ -310,6 +358,8 @@ public function __construct()
310358 * @param Challenge|ChallengeShape|null $challenge
311359 * @param DenyReason|value-of<DenyReason>|null $denyReason
312360 * @param DeviceChannel|DeviceChannelShape $deviceChannel
361+ * @param RequestorAuthenticationIndicator|value-of<RequestorAuthenticationIndicator>|null $requestorAuthenticationIndicator
362+ * @param RequestorChallengeIndicator|value-of<RequestorChallengeIndicator>|null $requestorChallengeIndicator
313363 * @param Status|value-of<Status> $status
314364 * @param Type|value-of<Type> $type
315365 */
@@ -339,6 +389,10 @@ public static function with(
339389 ?int $ purchaseAmount ,
340390 ?string $ purchaseCurrency ,
341391 ?string $ realTimeDecisionID ,
392+ RequestorAuthenticationIndicator |string |null $ requestorAuthenticationIndicator ,
393+ RequestorChallengeIndicator |string |null $ requestorChallengeIndicator ,
394+ string $ requestorName ,
395+ string $ requestorURL ,
342396 Status |string $ status ,
343397 Type |string $ type ,
344398 ): self {
@@ -369,6 +423,10 @@ public static function with(
369423 $ self ['purchaseAmount ' ] = $ purchaseAmount ;
370424 $ self ['purchaseCurrency ' ] = $ purchaseCurrency ;
371425 $ self ['realTimeDecisionID ' ] = $ realTimeDecisionID ;
426+ $ self ['requestorAuthenticationIndicator ' ] = $ requestorAuthenticationIndicator ;
427+ $ self ['requestorChallengeIndicator ' ] = $ requestorChallengeIndicator ;
428+ $ self ['requestorName ' ] = $ requestorName ;
429+ $ self ['requestorURL ' ] = $ requestorURL ;
372430 $ self ['status ' ] = $ status ;
373431 $ self ['type ' ] = $ type ;
374432
@@ -662,6 +720,56 @@ public function withRealTimeDecisionID(?string $realTimeDecisionID): self
662720 return $ self ;
663721 }
664722
723+ /**
724+ * The 3DS requestor authentication indicator describes why the authentication attempt is performed, such as for a recurring transaction.
725+ *
726+ * @param RequestorAuthenticationIndicator|value-of<RequestorAuthenticationIndicator>|null $requestorAuthenticationIndicator
727+ */
728+ public function withRequestorAuthenticationIndicator (
729+ RequestorAuthenticationIndicator |string |null $ requestorAuthenticationIndicator ,
730+ ): self {
731+ $ self = clone $ this ;
732+ $ self ['requestorAuthenticationIndicator ' ] = $ requestorAuthenticationIndicator ;
733+
734+ return $ self ;
735+ }
736+
737+ /**
738+ * Indicates whether a challenge is requested for this transaction.
739+ *
740+ * @param RequestorChallengeIndicator|value-of<RequestorChallengeIndicator>|null $requestorChallengeIndicator
741+ */
742+ public function withRequestorChallengeIndicator (
743+ RequestorChallengeIndicator |string |null $ requestorChallengeIndicator
744+ ): self {
745+ $ self = clone $ this ;
746+ $ self ['requestorChallengeIndicator ' ] = $ requestorChallengeIndicator ;
747+
748+ return $ self ;
749+ }
750+
751+ /**
752+ * The name of the 3DS requestor.
753+ */
754+ public function withRequestorName (string $ requestorName ): self
755+ {
756+ $ self = clone $ this ;
757+ $ self ['requestorName ' ] = $ requestorName ;
758+
759+ return $ self ;
760+ }
761+
762+ /**
763+ * The URL of the 3DS requestor.
764+ */
765+ public function withRequestorURL (string $ requestorURL ): self
766+ {
767+ $ self = clone $ this ;
768+ $ self ['requestorURL ' ] = $ requestorURL ;
769+
770+ return $ self ;
771+ }
772+
665773 /**
666774 * The status of the card authentication.
667775 *
0 commit comments