99 "CardAuthentication" ,
1010 "CardAuthenticationChallenge" ,
1111 "CardAuthorization" ,
12+ "CardAuthorizationApproval" ,
13+ "CardAuthorizationApprovalCardholderAddressVerificationResult" ,
14+ "CardAuthorizationDecline" ,
1215 "DigitalWalletAuthentication" ,
1316 "DigitalWalletAuthenticationSuccess" ,
1417 "DigitalWalletToken" ,
@@ -73,6 +76,73 @@ class CardAuthenticationChallenge(TypedDict, total=False):
7376 """
7477
7578
79+ class CardAuthorizationApprovalCardholderAddressVerificationResult (TypedDict , total = False ):
80+ line1 : Required [Literal ["match" , "no_match" ]]
81+ """Your decision on the address line of the provided address.
82+
83+ - `match` - The cardholder address verification result matches the address
84+ provided by the merchant.
85+ - `no_match` - The cardholder address verification result does not match the
86+ address provided by the merchant.
87+ """
88+
89+ postal_code : Required [Literal ["match" , "no_match" ]]
90+ """Your decision on the postal code of the provided address.
91+
92+ - `match` - The cardholder address verification result matches the address
93+ provided by the merchant.
94+ - `no_match` - The cardholder address verification result does not match the
95+ address provided by the merchant.
96+ """
97+
98+
99+ class CardAuthorizationApproval (TypedDict , total = False ):
100+ cardholder_address_verification_result : CardAuthorizationApprovalCardholderAddressVerificationResult
101+ """Your decisions on whether or not each provided address component is a match.
102+
103+ Your response here is evaluated against the customer's provided `postal_code`
104+ and `line1`, and an appropriate network response is generated. For example, if
105+ you would like to approve all transactions for a given card, you can submit
106+ `match` for both `postal_code` and `line1` and Increase will generate an
107+ approval with an Address Verification System (AVS) code that will match all of
108+ the available address information, or will report that no check was performed if
109+ no address information is available. If you do not provide a response, the
110+ address verification result will be calculated by Increase using the available
111+ address information available on the card. If none is available, Increase will
112+ report that no check was performed.
113+ """
114+
115+
116+ class CardAuthorizationDecline (TypedDict , total = False ):
117+ reason : Required [
118+ Literal [
119+ "insufficient_funds" ,
120+ "transaction_never_allowed" ,
121+ "exceeds_approval_limit" ,
122+ "card_temporarily_disabled" ,
123+ "suspected_fraud" ,
124+ "other" ,
125+ ]
126+ ]
127+ """The reason the card authorization was declined.
128+
129+ This translates to a specific decline code that is sent to the card network.
130+
131+ - `insufficient_funds` - The cardholder does not have sufficient funds to cover
132+ the transaction. The merchant may attempt to process the transaction again.
133+ - `transaction_never_allowed` - This type of transaction is not allowed for this
134+ card. This transaction should not be retried.
135+ - `exceeds_approval_limit` - The transaction amount exceeds the cardholder's
136+ approval limit. The merchant may attempt to process the transaction again.
137+ - `card_temporarily_disabled` - The card has been temporarily disabled or not
138+ yet activated. The merchant may attempt to process the transaction again.
139+ - `suspected_fraud` - The transaction is suspected to be fraudulent. The
140+ merchant may attempt to process the transaction again.
141+ - `other` - The transaction was declined for another reason. The merchant may
142+ attempt to process the transaction again. This should be used sparingly.
143+ """
144+
145+
76146class CardAuthorization (TypedDict , total = False ):
77147 decision : Required [Literal ["approve" , "decline" ]]
78148 """Whether the card authorization should be approved or declined.
@@ -81,6 +151,20 @@ class CardAuthorization(TypedDict, total=False):
81151 - `decline` - Decline the authorization.
82152 """
83153
154+ approval : CardAuthorizationApproval
155+ """
156+ If your application approves the authorization, this contains metadata about
157+ your decision to approve. Your response here is advisory to the acquiring bank.
158+ The bank may choose to reverse the authorization if you approve the transaction
159+ but indicate the address does not match.
160+ """
161+
162+ decline : CardAuthorizationDecline
163+ """
164+ If your application declines the authorization, this contains details about the
165+ decline.
166+ """
167+
84168 decline_reason : Literal [
85169 "insufficient_funds" ,
86170 "transaction_never_allowed" ,
@@ -92,6 +176,8 @@ class CardAuthorization(TypedDict, total=False):
92176 """The reason the card authorization was declined.
93177
94178 This translates to a specific decline code that is sent to the card network.
179+ This field is deprecated, please transition to using the `decline` object as
180+ this field will be removed in a future release.
95181
96182 - `insufficient_funds` - The cardholder does not have sufficient funds to cover
97183 the transaction. The merchant may attempt to process the transaction again.
@@ -130,6 +216,10 @@ class DigitalWalletAuthentication(TypedDict, total=False):
130216 """
131217
132218 success : DigitalWalletAuthenticationSuccess
219+ """
220+ If your application was able to deliver the one-time passcode, this contains
221+ metadata about the delivery. Exactly one of `phone` or `email` must be provided.
222+ """
133223
134224
135225class DigitalWalletTokenApproval (TypedDict , total = False ):
0 commit comments