gr4vy 1.1.29__py3-none-any.whl → 1.10.9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. gr4vy/_version.py +3 -3
  2. gr4vy/account_updater.py +6 -3
  3. gr4vy/actions.py +307 -0
  4. gr4vy/all.py +4 -2
  5. gr4vy/audit_logs.py +6 -4
  6. gr4vy/balances.py +4 -2
  7. gr4vy/basesdk.py +17 -1
  8. gr4vy/buyers_gift_cards.py +4 -2
  9. gr4vy/buyers_payment_methods.py +4 -2
  10. gr4vy/buyers_sdk.py +43 -25
  11. gr4vy/buyers_shipping_details.py +26 -16
  12. gr4vy/card_scheme_definitions_sdk.py +4 -2
  13. gr4vy/checkout_sessions.py +40 -14
  14. gr4vy/digital_wallets_sdk.py +32 -20
  15. gr4vy/domains.py +14 -10
  16. gr4vy/errors/__init__.py +15 -3
  17. gr4vy/errors/apierror.py +2 -0
  18. gr4vy/errors/error400.py +4 -6
  19. gr4vy/errors/error401.py +4 -6
  20. gr4vy/errors/error403.py +4 -6
  21. gr4vy/errors/error404.py +4 -6
  22. gr4vy/errors/error405.py +4 -6
  23. gr4vy/errors/error409.py +4 -6
  24. gr4vy/errors/error425.py +4 -6
  25. gr4vy/errors/error429.py +4 -6
  26. gr4vy/errors/error500.py +4 -6
  27. gr4vy/errors/error502.py +4 -6
  28. gr4vy/errors/error504.py +4 -6
  29. gr4vy/errors/gr4vyerror.py +11 -7
  30. gr4vy/errors/httpvalidationerror.py +4 -2
  31. gr4vy/errors/no_response_error.py +5 -1
  32. gr4vy/errors/responsevalidationerror.py +2 -0
  33. gr4vy/events.py +54 -7
  34. gr4vy/executions.py +38 -8
  35. gr4vy/gift_cards_sdk.py +29 -19
  36. gr4vy/httpclient.py +0 -1
  37. gr4vy/jobs.py +4 -2
  38. gr4vy/merchant_accounts_sdk.py +30 -10
  39. gr4vy/models/__init__.py +184 -30
  40. gr4vy/models/adyenautorescuesepascenariosenum.py +3 -1
  41. gr4vy/models/adyencardoptions.py +9 -6
  42. gr4vy/models/adyensepaoptions.py +1 -6
  43. gr4vy/models/adyensplitsoptions.py +57 -0
  44. gr4vy/models/airline.py +9 -8
  45. gr4vy/models/airlineleg.py +9 -7
  46. gr4vy/models/airlinepassenger.py +9 -7
  47. gr4vy/models/antifrauddecision.py +9 -1
  48. gr4vy/models/approvaltarget.py +7 -1
  49. gr4vy/models/auditlogaction.py +9 -1
  50. gr4vy/models/auditlogentry.py +3 -3
  51. gr4vy/models/auditlogentryuser.py +3 -3
  52. gr4vy/models/{billingdetails_input.py → billingdetails.py} +2 -2
  53. gr4vy/models/braintreedynamicdatafieldsoptions.py +33 -3
  54. gr4vy/models/browserinfo.py +9 -5
  55. gr4vy/models/buyer.py +3 -3
  56. gr4vy/models/buyercreate.py +3 -3
  57. gr4vy/models/buyerupdate.py +3 -3
  58. gr4vy/models/cancel_transactionop.py +43 -0
  59. gr4vy/models/cancelstatus.py +15 -0
  60. gr4vy/models/capturestatus.py +7 -1
  61. gr4vy/models/cardtype.py +8 -1
  62. gr4vy/models/cartitem.py +53 -8
  63. gr4vy/models/chaseoptions.py +46 -0
  64. gr4vy/models/checkoutsession.py +24 -3
  65. gr4vy/models/checkoutsessioncreate.py +39 -5
  66. gr4vy/models/checkoutsessionpaymentmethod.py +3 -5
  67. gr4vy/models/checkoutsessionpaymentmethoddetails.py +2 -6
  68. gr4vy/models/create_payment_methodop.py +6 -0
  69. gr4vy/models/create_report_execution_urlop.py +16 -1
  70. gr4vy/models/createsession.py +3 -3
  71. gr4vy/models/createsessionstatus.py +7 -1
  72. gr4vy/models/cvvresponsecode.py +7 -1
  73. gr4vy/models/cybersourceoptions.py +7 -0
  74. gr4vy/models/definitionfield.py +1 -6
  75. gr4vy/models/definitionfieldformat.py +8 -1
  76. gr4vy/models/digitalwallet.py +3 -5
  77. gr4vy/models/digitalwalletcreate.py +2 -6
  78. gr4vy/models/digitalwalletprovider.py +6 -1
  79. gr4vy/models/dlocalupioptions.py +50 -0
  80. gr4vy/models/dlocalupirecurringinfooptions.py +47 -0
  81. gr4vy/models/dlocalupiwalletoptions.py +89 -0
  82. gr4vy/models/errordetail.py +2 -4
  83. gr4vy/models/errorlocation.py +8 -1
  84. gr4vy/models/flow.py +16 -0
  85. gr4vy/models/flowaction.py +16 -0
  86. gr4vy/models/forterantifraudoptions.py +8 -8
  87. gr4vy/models/forterantifraudoptionscartitembasicitemdata.py +10 -8
  88. gr4vy/models/forterantifraudoptionscartitemdeliverydetails.py +9 -7
  89. gr4vy/models/giftcardredemption.py +4 -8
  90. gr4vy/models/giftcardredemptionstatus.py +7 -1
  91. gr4vy/models/giftcardservice.py +3 -5
  92. gr4vy/models/giftcardserviceprovider.py +5 -1
  93. gr4vy/models/giftcardsummary.py +3 -5
  94. gr4vy/models/{guestbuyer_input.py → guestbuyer.py} +5 -5
  95. gr4vy/models/instrumenttype.py +1 -0
  96. gr4vy/models/integrationclient.py +16 -0
  97. gr4vy/models/internal/__init__.py +14 -1
  98. gr4vy/models/list_all_report_executionsop.py +2 -14
  99. gr4vy/models/list_audit_logsop.py +2 -10
  100. gr4vy/models/list_buyer_payment_methodsop.py +9 -4
  101. gr4vy/models/list_payment_methodsop.py +2 -14
  102. gr4vy/models/list_payment_servicesop.py +2 -8
  103. gr4vy/models/list_reportsop.py +2 -10
  104. gr4vy/models/list_transaction_actionsop.py +43 -0
  105. gr4vy/models/list_transaction_eventsop.py +12 -1
  106. gr4vy/models/list_transactionsop.py +14 -22
  107. gr4vy/models/merchantaccount.py +9 -5
  108. gr4vy/models/merchantaccountcreate.py +8 -6
  109. gr4vy/models/merchantaccountupdate.py +8 -6
  110. gr4vy/models/merchantprofilescheme.py +7 -7
  111. gr4vy/models/merchantprofileschemesummary.py +7 -7
  112. gr4vy/models/method.py +4 -0
  113. gr4vy/models/mockcardoptions.py +7 -2
  114. gr4vy/models/mode.py +1 -0
  115. gr4vy/models/monatospeioptions.py +15 -0
  116. gr4vy/models/networktoken.py +3 -3
  117. gr4vy/models/networktokenpaymentmethodcreate.py +11 -9
  118. gr4vy/models/networktokenstatus.py +7 -1
  119. gr4vy/models/nuveiidealoptions.py +49 -0
  120. gr4vy/models/nuveipseoptions.py +70 -0
  121. gr4vy/models/paymentlink.py +25 -7
  122. gr4vy/models/paymentlinkcreate.py +23 -28
  123. gr4vy/models/paymentlinkstatus.py +7 -1
  124. gr4vy/models/paymentmethod.py +7 -13
  125. gr4vy/models/paymentmethodcard.py +3 -5
  126. gr4vy/models/paymentmethoddetailscard.py +2 -6
  127. gr4vy/models/paymentmethodstatus.py +7 -1
  128. gr4vy/models/paymentmethodsummary.py +6 -12
  129. gr4vy/models/paymentoption.py +3 -3
  130. gr4vy/models/paymentservice.py +4 -6
  131. gr4vy/models/paymentserviceconfiguration.py +2 -6
  132. gr4vy/models/paymentservicedefinition.py +11 -5
  133. gr4vy/models/paymentservicestatus.py +8 -1
  134. gr4vy/models/paymentservicetoken.py +3 -3
  135. gr4vy/models/payoutcategory.py +1 -1
  136. gr4vy/models/payoutcreate.py +5 -9
  137. gr4vy/models/payoutstatus.py +7 -1
  138. gr4vy/models/payoutsummary.py +4 -6
  139. gr4vy/models/paypaloptions.py +8 -2
  140. gr4vy/models/paypalshippingoptions.py +51 -0
  141. gr4vy/models/paypalshippingoptionsitem.py +89 -0
  142. gr4vy/models/paypalshippingoptionsitemamount.py +20 -0
  143. gr4vy/models/plaidpaymentmethodcreate.py +106 -0
  144. gr4vy/models/redirectpaymentmethodcreate.py +4 -6
  145. gr4vy/models/refund.py +4 -4
  146. gr4vy/models/refundstatus.py +8 -1
  147. gr4vy/models/refundtargettype.py +5 -1
  148. gr4vy/models/report.py +4 -6
  149. gr4vy/models/reportcreate.py +2 -3
  150. gr4vy/models/reportcreatortype.py +7 -1
  151. gr4vy/models/reportexecution.py +3 -3
  152. gr4vy/models/reportexecutionstatus.py +7 -1
  153. gr4vy/models/reportexecutionsummary.py +3 -3
  154. gr4vy/models/reportexecutionurlgenerate.py +16 -0
  155. gr4vy/models/reportschedule.py +9 -1
  156. gr4vy/models/reportspec.py +2 -4
  157. gr4vy/models/reportsummary.py +3 -5
  158. gr4vy/models/settlement.py +32 -32
  159. gr4vy/models/statementdescriptor.py +7 -0
  160. gr4vy/models/stripeconnectoptions.py +7 -0
  161. gr4vy/models/taxid.py +2 -4
  162. gr4vy/models/taxidkind.py +7 -0
  163. gr4vy/models/threedsecuredatav1.py +2 -6
  164. gr4vy/models/threedsecuredatav2.py +2 -6
  165. gr4vy/models/threedsecuremethod.py +7 -1
  166. gr4vy/models/threedsecurestatus.py +7 -1
  167. gr4vy/models/transaction.py +86 -25
  168. gr4vy/models/transactionaction.py +48 -0
  169. gr4vy/models/transactionactions.py +17 -0
  170. gr4vy/models/transactionbuyer.py +3 -3
  171. gr4vy/models/transactioncancel.py +81 -0
  172. gr4vy/models/transactioncapture.py +3 -3
  173. gr4vy/models/transactionconnectionoptions.py +50 -0
  174. gr4vy/models/transactioncreate.py +76 -12
  175. gr4vy/models/transactionevent.py +10 -3
  176. gr4vy/models/transactionintent.py +7 -1
  177. gr4vy/models/transactionintentoutcome.py +6 -1
  178. gr4vy/models/transactionpaymentmethod.py +6 -12
  179. gr4vy/models/transactionpaymentservice.py +3 -3
  180. gr4vy/models/transactionpaymentsource.py +7 -1
  181. gr4vy/models/transactionrefundcreate.py +2 -6
  182. gr4vy/models/transactionsummary.py +11 -10
  183. gr4vy/models/transactionthreedsecuresummary.py +3 -9
  184. gr4vy/models/transactionvoid.py +3 -3
  185. gr4vy/models/userstatus.py +8 -1
  186. gr4vy/models/voidstatus.py +7 -1
  187. gr4vy/network_tokens_cryptogram.py +4 -2
  188. gr4vy/payment_links_sdk.py +36 -16
  189. gr4vy/payment_methods_network_tokens.py +27 -13
  190. gr4vy/payment_methods_payment_service_tokens.py +12 -6
  191. gr4vy/payment_methods_sdk.py +26 -14
  192. gr4vy/payment_options_sdk.py +4 -2
  193. gr4vy/payment_service_definitions_sdk.py +14 -8
  194. gr4vy/payment_services_sdk.py +36 -22
  195. gr4vy/payouts.py +18 -12
  196. gr4vy/refunds_sdk.py +4 -2
  197. gr4vy/report_executions_sdk.py +6 -4
  198. gr4vy/reports_sdk.py +23 -13
  199. gr4vy/sdk.py +17 -4
  200. gr4vy/sessions.py +12 -6
  201. gr4vy/transactions.py +446 -33
  202. gr4vy/transactions_refunds.py +17 -9
  203. gr4vy/transactions_settlements.py +8 -4
  204. gr4vy/types/basemodel.py +41 -3
  205. gr4vy/utils/__init__.py +15 -6
  206. gr4vy/utils/annotations.py +32 -8
  207. gr4vy/utils/enums.py +60 -0
  208. gr4vy/utils/eventstreaming.py +10 -0
  209. gr4vy/utils/forms.py +21 -10
  210. gr4vy/utils/queryparams.py +14 -2
  211. gr4vy/utils/requestbodies.py +1 -1
  212. gr4vy/utils/retries.py +69 -5
  213. gr4vy/utils/serializers.py +0 -20
  214. gr4vy/utils/unmarshal_json_response.py +15 -1
  215. {gr4vy-1.1.29.dist-info → gr4vy-1.10.9.dist-info}/METADATA +43 -41
  216. {gr4vy-1.1.29.dist-info → gr4vy-1.10.9.dist-info}/RECORD +217 -196
  217. {gr4vy-1.1.29.dist-info → gr4vy-1.10.9.dist-info}/WHEEL +1 -1
  218. gr4vy/models/billingdetails_output.py +0 -87
  219. gr4vy/models/guestbuyer_output.py +0 -80
@@ -19,10 +19,10 @@ from .transactionpaymentservice import (
19
19
  from .transactionstatus import TransactionStatus
20
20
  from datetime import datetime
21
21
  from gr4vy.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
22
- from gr4vy.utils import validate_const, validate_open_enum
22
+ from gr4vy.utils import validate_const
23
23
  import pydantic
24
24
  from pydantic import model_serializer
25
- from pydantic.functional_validators import AfterValidator, PlainValidator
25
+ from pydantic.functional_validators import AfterValidator
26
26
  from typing import List, Literal, Optional
27
27
  from typing_extensions import Annotated, NotRequired, TypedDict
28
28
 
@@ -58,6 +58,8 @@ class TransactionSummaryTypedDict(TypedDict):
58
58
  r"""The date and time when the transaction was created, in ISO 8601 format."""
59
59
  updated_at: datetime
60
60
  r"""The date and time when the transaction was last updated, in ISO 8601 format."""
61
+ disputed: bool
62
+ r"""Indicates whether this transaction has been disputed."""
61
63
  type: Literal["transaction"]
62
64
  r"""Always `transaction`."""
63
65
  settled_currency: NotRequired[Nullable[str]]
@@ -110,7 +112,7 @@ class TransactionSummary(BaseModel):
110
112
  amount: int
111
113
  r"""The total amount for this transaction across all funding sources including gift cards."""
112
114
 
113
- status: Annotated[TransactionStatus, PlainValidator(validate_open_enum(False))]
115
+ status: TransactionStatus
114
116
 
115
117
  authorized_amount: int
116
118
  r"""The amount for this transaction that has been authorized for the `payment_method`. This can be less than the `amount` if gift cards were used."""
@@ -127,7 +129,7 @@ class TransactionSummary(BaseModel):
127
129
  settled: bool
128
130
  r"""Indicates whether this transaction has been settled."""
129
131
 
130
- intent: Annotated[TransactionIntent, PlainValidator(validate_open_enum(False))]
132
+ intent: TransactionIntent
131
133
 
132
134
  gift_card_redemptions: List[GiftCardRedemption]
133
135
  r"""The gift cards redeemed for this transaction."""
@@ -138,6 +140,9 @@ class TransactionSummary(BaseModel):
138
140
  updated_at: datetime
139
141
  r"""The date and time when the transaction was last updated, in ISO 8601 format."""
140
142
 
143
+ disputed: bool
144
+ r"""Indicates whether this transaction has been disputed."""
145
+
141
146
  TYPE: Annotated[
142
147
  Annotated[
143
148
  Optional[Literal["transaction"]],
@@ -159,14 +164,10 @@ class TransactionSummary(BaseModel):
159
164
  payment_method: OptionalNullable[TransactionPaymentMethod] = UNSET
160
165
  r"""The payment method used for this transaction."""
161
166
 
162
- method: Annotated[
163
- OptionalNullable[Method], PlainValidator(validate_open_enum(False))
164
- ] = UNSET
167
+ method: OptionalNullable[Method] = UNSET
165
168
  r"""The method used for the transaction."""
166
169
 
167
- instrument_type: Annotated[
168
- OptionalNullable[InstrumentType], PlainValidator(validate_open_enum(False))
169
- ] = UNSET
170
+ instrument_type: OptionalNullable[InstrumentType] = UNSET
170
171
  r"""The name of the instrument used to process the transaction."""
171
172
 
172
173
  error_code: OptionalNullable[str] = UNSET
@@ -7,11 +7,9 @@ from .threedsecuremethod import ThreeDSecureMethod
7
7
  from .threedsecurestatus import ThreeDSecureStatus
8
8
  from .threedsecurev2 import ThreeDSecureV2, ThreeDSecureV2TypedDict
9
9
  from gr4vy.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
10
- from gr4vy.utils import validate_open_enum
11
10
  from pydantic import model_serializer
12
- from pydantic.functional_validators import PlainValidator
13
11
  from typing import Union
14
- from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
12
+ from typing_extensions import NotRequired, TypeAliasType, TypedDict
15
13
 
16
14
 
17
15
  ResponseDataTypedDict = TypeAliasType(
@@ -41,14 +39,10 @@ class TransactionThreeDSecureSummary(BaseModel):
41
39
  version: OptionalNullable[str] = UNSET
42
40
  r"""The version of 3DS used for this transaction."""
43
41
 
44
- status: Annotated[
45
- OptionalNullable[ThreeDSecureStatus], PlainValidator(validate_open_enum(False))
46
- ] = UNSET
42
+ status: OptionalNullable[ThreeDSecureStatus] = UNSET
47
43
  r"""The status of the 3DS challenge for this transaction."""
48
44
 
49
- method: Annotated[
50
- OptionalNullable[ThreeDSecureMethod], PlainValidator(validate_open_enum(False))
51
- ] = UNSET
45
+ method: OptionalNullable[ThreeDSecureMethod] = UNSET
52
46
  r"""The method used for 3DS authentication for this transaction."""
53
47
 
54
48
  response_data: OptionalNullable[ResponseData] = UNSET
@@ -4,10 +4,10 @@ from __future__ import annotations
4
4
  from .transaction import Transaction, TransactionTypedDict
5
5
  from .voidstatus import VoidStatus
6
6
  from gr4vy.types import BaseModel, Nullable, UNSET_SENTINEL
7
- from gr4vy.utils import validate_const, validate_open_enum
7
+ from gr4vy.utils import validate_const
8
8
  import pydantic
9
9
  from pydantic import model_serializer
10
- from pydantic.functional_validators import AfterValidator, PlainValidator
10
+ from pydantic.functional_validators import AfterValidator
11
11
  from typing import Literal, Optional
12
12
  from typing_extensions import Annotated, TypedDict
13
13
 
@@ -27,7 +27,7 @@ class TransactionVoidTypedDict(TypedDict):
27
27
 
28
28
 
29
29
  class TransactionVoid(BaseModel):
30
- status: Annotated[VoidStatus, PlainValidator(validate_open_enum(False))]
30
+ status: VoidStatus
31
31
 
32
32
  code: Nullable[str]
33
33
  r"""The standardized error code set by Gr4vy."""
@@ -5,4 +5,11 @@ from gr4vy.types import UnrecognizedStr
5
5
  from typing import Literal, Union
6
6
 
7
7
 
8
- UserStatus = Union[Literal["active", "pending", "deleted"], UnrecognizedStr]
8
+ UserStatus = Union[
9
+ Literal[
10
+ "active",
11
+ "pending",
12
+ "deleted",
13
+ ],
14
+ UnrecognizedStr,
15
+ ]
@@ -6,5 +6,11 @@ from typing import Literal, Union
6
6
 
7
7
 
8
8
  VoidStatus = Union[
9
- Literal["succeeded", "pending", "declined", "failed"], UnrecognizedStr
9
+ Literal[
10
+ "succeeded",
11
+ "pending",
12
+ "declined",
13
+ "failed",
14
+ ],
15
+ UnrecognizedStr,
10
16
  ]
@@ -73,6 +73,7 @@ class NetworkTokensCryptogram(BaseSDK):
73
73
  get_serialized_body=lambda: utils.serialize_request_body(
74
74
  request.cryptogram_create, False, False, "json", models.CryptogramCreate
75
75
  ),
76
+ allow_empty_value=None,
76
77
  timeout_ms=timeout_ms,
77
78
  )
78
79
 
@@ -89,7 +90,7 @@ class NetworkTokensCryptogram(BaseSDK):
89
90
  config=self.sdk_configuration,
90
91
  base_url=base_url or "",
91
92
  operation_id="create_payment_method_network_token_cryptogram",
92
- oauth2_scopes=[],
93
+ oauth2_scopes=None,
93
94
  security_source=get_security_from_env(
94
95
  self.sdk_configuration.security, models.Security
95
96
  ),
@@ -227,6 +228,7 @@ class NetworkTokensCryptogram(BaseSDK):
227
228
  get_serialized_body=lambda: utils.serialize_request_body(
228
229
  request.cryptogram_create, False, False, "json", models.CryptogramCreate
229
230
  ),
231
+ allow_empty_value=None,
230
232
  timeout_ms=timeout_ms,
231
233
  )
232
234
 
@@ -243,7 +245,7 @@ class NetworkTokensCryptogram(BaseSDK):
243
245
  config=self.sdk_configuration,
244
246
  base_url=base_url or "",
245
247
  operation_id="create_payment_method_network_token_cryptogram",
246
- oauth2_scopes=[],
248
+ oauth2_scopes=None,
247
249
  security_source=get_security_from_env(
248
250
  self.sdk_configuration.security, models.Security
249
251
  ),
@@ -20,7 +20,7 @@ class PaymentLinksSDK(BaseSDK):
20
20
  currency: str,
21
21
  merchant_account_id: Optional[str] = None,
22
22
  buyer: OptionalNullable[
23
- Union[models.GuestBuyerInput, models.GuestBuyerInputTypedDict]
23
+ Union[models.GuestBuyer, models.GuestBuyerTypedDict]
24
24
  ] = UNSET,
25
25
  expires_at: OptionalNullable[datetime] = UNSET,
26
26
  connection_options: OptionalNullable[
@@ -33,7 +33,7 @@ class PaymentLinksSDK(BaseSDK):
33
33
  statement_descriptor: OptionalNullable[
34
34
  Union[models.StatementDescriptor, models.StatementDescriptorTypedDict]
35
35
  ] = UNSET,
36
- locale: OptionalNullable[models.Locale] = UNSET,
36
+ locale: OptionalNullable[str] = UNSET,
37
37
  merchant_name: OptionalNullable[str] = UNSET,
38
38
  merchant_url: OptionalNullable[str] = UNSET,
39
39
  merchant_banner_url: OptionalNullable[str] = UNSET,
@@ -48,6 +48,8 @@ class PaymentLinksSDK(BaseSDK):
48
48
  ] = UNSET,
49
49
  metadata: OptionalNullable[Dict[str, Any]] = UNSET,
50
50
  payment_source: Optional[models.TransactionPaymentSource] = None,
51
+ store: Optional[bool] = False,
52
+ buyer_id: OptionalNullable[str] = UNSET,
51
53
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
52
54
  server_url: Optional[str] = None,
53
55
  timeout_ms: Optional[int] = None,
@@ -79,6 +81,8 @@ class PaymentLinksSDK(BaseSDK):
79
81
  :param cart_items: The cart items for the payment link.
80
82
  :param metadata: Arbitrary metadata for the payment link.
81
83
  :param payment_source: The way payment method information made it to this transaction.
84
+ :param store: Whether to store the payment method for future use.
85
+ :param buyer_id: The ID of the buyer to associate the payment method with. Note: When `buyer_id` is provided, the payment link should be treated as a secret as it will allow the user to manage payment methods for the associated buyer.
82
86
  :param retries: Override the default retry configuration for this method
83
87
  :param server_url: Override the default server URL for this method
84
88
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -98,7 +102,7 @@ class PaymentLinksSDK(BaseSDK):
98
102
  merchant_account_id=merchant_account_id,
99
103
  payment_link_create=models.PaymentLinkCreate(
100
104
  buyer=utils.get_pydantic_model(
101
- buyer, OptionalNullable[models.GuestBuyerInput]
105
+ buyer, OptionalNullable[models.GuestBuyer]
102
106
  ),
103
107
  expires_at=expires_at,
104
108
  connection_options=utils.get_pydantic_model(
@@ -127,6 +131,8 @@ class PaymentLinksSDK(BaseSDK):
127
131
  ),
128
132
  metadata=metadata,
129
133
  payment_source=payment_source,
134
+ store=store,
135
+ buyer_id=buyer_id,
130
136
  ),
131
137
  )
132
138
 
@@ -153,6 +159,7 @@ class PaymentLinksSDK(BaseSDK):
153
159
  "json",
154
160
  models.PaymentLinkCreate,
155
161
  ),
162
+ allow_empty_value=None,
156
163
  timeout_ms=timeout_ms,
157
164
  )
158
165
 
@@ -169,7 +176,7 @@ class PaymentLinksSDK(BaseSDK):
169
176
  config=self.sdk_configuration,
170
177
  base_url=base_url or "",
171
178
  operation_id="add_payment_link",
172
- oauth2_scopes=[],
179
+ oauth2_scopes=None,
173
180
  security_source=get_security_from_env(
174
181
  self.sdk_configuration.security, models.Security
175
182
  ),
@@ -252,7 +259,7 @@ class PaymentLinksSDK(BaseSDK):
252
259
  currency: str,
253
260
  merchant_account_id: Optional[str] = None,
254
261
  buyer: OptionalNullable[
255
- Union[models.GuestBuyerInput, models.GuestBuyerInputTypedDict]
262
+ Union[models.GuestBuyer, models.GuestBuyerTypedDict]
256
263
  ] = UNSET,
257
264
  expires_at: OptionalNullable[datetime] = UNSET,
258
265
  connection_options: OptionalNullable[
@@ -265,7 +272,7 @@ class PaymentLinksSDK(BaseSDK):
265
272
  statement_descriptor: OptionalNullable[
266
273
  Union[models.StatementDescriptor, models.StatementDescriptorTypedDict]
267
274
  ] = UNSET,
268
- locale: OptionalNullable[models.Locale] = UNSET,
275
+ locale: OptionalNullable[str] = UNSET,
269
276
  merchant_name: OptionalNullable[str] = UNSET,
270
277
  merchant_url: OptionalNullable[str] = UNSET,
271
278
  merchant_banner_url: OptionalNullable[str] = UNSET,
@@ -280,6 +287,8 @@ class PaymentLinksSDK(BaseSDK):
280
287
  ] = UNSET,
281
288
  metadata: OptionalNullable[Dict[str, Any]] = UNSET,
282
289
  payment_source: Optional[models.TransactionPaymentSource] = None,
290
+ store: Optional[bool] = False,
291
+ buyer_id: OptionalNullable[str] = UNSET,
283
292
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
284
293
  server_url: Optional[str] = None,
285
294
  timeout_ms: Optional[int] = None,
@@ -311,6 +320,8 @@ class PaymentLinksSDK(BaseSDK):
311
320
  :param cart_items: The cart items for the payment link.
312
321
  :param metadata: Arbitrary metadata for the payment link.
313
322
  :param payment_source: The way payment method information made it to this transaction.
323
+ :param store: Whether to store the payment method for future use.
324
+ :param buyer_id: The ID of the buyer to associate the payment method with. Note: When `buyer_id` is provided, the payment link should be treated as a secret as it will allow the user to manage payment methods for the associated buyer.
314
325
  :param retries: Override the default retry configuration for this method
315
326
  :param server_url: Override the default server URL for this method
316
327
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -330,7 +341,7 @@ class PaymentLinksSDK(BaseSDK):
330
341
  merchant_account_id=merchant_account_id,
331
342
  payment_link_create=models.PaymentLinkCreate(
332
343
  buyer=utils.get_pydantic_model(
333
- buyer, OptionalNullable[models.GuestBuyerInput]
344
+ buyer, OptionalNullable[models.GuestBuyer]
334
345
  ),
335
346
  expires_at=expires_at,
336
347
  connection_options=utils.get_pydantic_model(
@@ -359,6 +370,8 @@ class PaymentLinksSDK(BaseSDK):
359
370
  ),
360
371
  metadata=metadata,
361
372
  payment_source=payment_source,
373
+ store=store,
374
+ buyer_id=buyer_id,
362
375
  ),
363
376
  )
364
377
 
@@ -385,6 +398,7 @@ class PaymentLinksSDK(BaseSDK):
385
398
  "json",
386
399
  models.PaymentLinkCreate,
387
400
  ),
401
+ allow_empty_value=None,
388
402
  timeout_ms=timeout_ms,
389
403
  )
390
404
 
@@ -401,7 +415,7 @@ class PaymentLinksSDK(BaseSDK):
401
415
  config=self.sdk_configuration,
402
416
  base_url=base_url or "",
403
417
  operation_id="add_payment_link",
404
- oauth2_scopes=[],
418
+ oauth2_scopes=None,
405
419
  security_source=get_security_from_env(
406
420
  self.sdk_configuration.security, models.Security
407
421
  ),
@@ -534,6 +548,7 @@ class PaymentLinksSDK(BaseSDK):
534
548
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
535
549
  ),
536
550
  security=self.sdk_configuration.security,
551
+ allow_empty_value=None,
537
552
  timeout_ms=timeout_ms,
538
553
  )
539
554
 
@@ -554,7 +569,7 @@ class PaymentLinksSDK(BaseSDK):
554
569
  config=self.sdk_configuration,
555
570
  base_url=base_url or "",
556
571
  operation_id="list_payment_links",
557
- oauth2_scopes=[],
572
+ oauth2_scopes=None,
558
573
  security_source=get_security_from_env(
559
574
  self.sdk_configuration.security, models.Security
560
575
  ),
@@ -587,7 +602,7 @@ class PaymentLinksSDK(BaseSDK):
587
602
  return None
588
603
 
589
604
  next_cursor = next_cursor[0]
590
- if next_cursor is None:
605
+ if next_cursor is None or str(next_cursor).strip() == "":
591
606
  return None
592
607
 
593
608
  return self.list(
@@ -709,6 +724,7 @@ class PaymentLinksSDK(BaseSDK):
709
724
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
710
725
  ),
711
726
  security=self.sdk_configuration.security,
727
+ allow_empty_value=None,
712
728
  timeout_ms=timeout_ms,
713
729
  )
714
730
 
@@ -729,7 +745,7 @@ class PaymentLinksSDK(BaseSDK):
729
745
  config=self.sdk_configuration,
730
746
  base_url=base_url or "",
731
747
  operation_id="list_payment_links",
732
- oauth2_scopes=[],
748
+ oauth2_scopes=None,
733
749
  security_source=get_security_from_env(
734
750
  self.sdk_configuration.security, models.Security
735
751
  ),
@@ -762,7 +778,7 @@ class PaymentLinksSDK(BaseSDK):
762
778
  return None
763
779
 
764
780
  next_cursor = next_cursor[0]
765
- if next_cursor is None:
781
+ if next_cursor is None or str(next_cursor).strip() == "":
766
782
  return None
767
783
 
768
784
  return self.list(
@@ -878,6 +894,7 @@ class PaymentLinksSDK(BaseSDK):
878
894
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
879
895
  ),
880
896
  security=self.sdk_configuration.security,
897
+ allow_empty_value=None,
881
898
  timeout_ms=timeout_ms,
882
899
  )
883
900
 
@@ -894,7 +911,7 @@ class PaymentLinksSDK(BaseSDK):
894
911
  config=self.sdk_configuration,
895
912
  base_url=base_url or "",
896
913
  operation_id="expire_payment_link",
897
- oauth2_scopes=[],
914
+ oauth2_scopes=None,
898
915
  security_source=get_security_from_env(
899
916
  self.sdk_configuration.security, models.Security
900
917
  ),
@@ -1021,6 +1038,7 @@ class PaymentLinksSDK(BaseSDK):
1021
1038
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
1022
1039
  ),
1023
1040
  security=self.sdk_configuration.security,
1041
+ allow_empty_value=None,
1024
1042
  timeout_ms=timeout_ms,
1025
1043
  )
1026
1044
 
@@ -1037,7 +1055,7 @@ class PaymentLinksSDK(BaseSDK):
1037
1055
  config=self.sdk_configuration,
1038
1056
  base_url=base_url or "",
1039
1057
  operation_id="expire_payment_link",
1040
- oauth2_scopes=[],
1058
+ oauth2_scopes=None,
1041
1059
  security_source=get_security_from_env(
1042
1060
  self.sdk_configuration.security, models.Security
1043
1061
  ),
@@ -1164,6 +1182,7 @@ class PaymentLinksSDK(BaseSDK):
1164
1182
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
1165
1183
  ),
1166
1184
  security=self.sdk_configuration.security,
1185
+ allow_empty_value=None,
1167
1186
  timeout_ms=timeout_ms,
1168
1187
  )
1169
1188
 
@@ -1184,7 +1203,7 @@ class PaymentLinksSDK(BaseSDK):
1184
1203
  config=self.sdk_configuration,
1185
1204
  base_url=base_url or "",
1186
1205
  operation_id="get_payment_link",
1187
- oauth2_scopes=[],
1206
+ oauth2_scopes=None,
1188
1207
  security_source=get_security_from_env(
1189
1208
  self.sdk_configuration.security, models.Security
1190
1209
  ),
@@ -1311,6 +1330,7 @@ class PaymentLinksSDK(BaseSDK):
1311
1330
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
1312
1331
  ),
1313
1332
  security=self.sdk_configuration.security,
1333
+ allow_empty_value=None,
1314
1334
  timeout_ms=timeout_ms,
1315
1335
  )
1316
1336
 
@@ -1331,7 +1351,7 @@ class PaymentLinksSDK(BaseSDK):
1331
1351
  config=self.sdk_configuration,
1332
1352
  base_url=base_url or "",
1333
1353
  operation_id="get_payment_link",
1334
- oauth2_scopes=[],
1354
+ oauth2_scopes=None,
1335
1355
  security_source=get_security_from_env(
1336
1356
  self.sdk_configuration.security, models.Security
1337
1357
  ),
@@ -14,13 +14,17 @@ from typing import Any, Mapping, Optional
14
14
  class PaymentMethodsNetworkTokens(BaseSDK):
15
15
  cryptogram: NetworkTokensCryptogram
16
16
 
17
- def __init__(self, sdk_config: SDKConfiguration) -> None:
18
- BaseSDK.__init__(self, sdk_config)
17
+ def __init__(
18
+ self, sdk_config: SDKConfiguration, parent_ref: Optional[object] = None
19
+ ) -> None:
20
+ BaseSDK.__init__(self, sdk_config, parent_ref=parent_ref)
19
21
  self.sdk_configuration = sdk_config
20
22
  self._init_sdks()
21
23
 
22
24
  def _init_sdks(self):
23
- self.cryptogram = NetworkTokensCryptogram(self.sdk_configuration)
25
+ self.cryptogram = NetworkTokensCryptogram(
26
+ self.sdk_configuration, parent_ref=self.parent_ref
27
+ )
24
28
 
25
29
  def list(
26
30
  self,
@@ -74,6 +78,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
74
78
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
75
79
  ),
76
80
  security=self.sdk_configuration.security,
81
+ allow_empty_value=None,
77
82
  timeout_ms=timeout_ms,
78
83
  )
79
84
 
@@ -94,7 +99,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
94
99
  config=self.sdk_configuration,
95
100
  base_url=base_url or "",
96
101
  operation_id="list_payment_method_network_tokens",
97
- oauth2_scopes=[],
102
+ oauth2_scopes=None,
98
103
  security_source=get_security_from_env(
99
104
  self.sdk_configuration.security, models.Security
100
105
  ),
@@ -221,6 +226,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
221
226
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
222
227
  ),
223
228
  security=self.sdk_configuration.security,
229
+ allow_empty_value=None,
224
230
  timeout_ms=timeout_ms,
225
231
  )
226
232
 
@@ -241,7 +247,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
241
247
  config=self.sdk_configuration,
242
248
  base_url=base_url or "",
243
249
  operation_id="list_payment_method_network_tokens",
244
- oauth2_scopes=[],
250
+ oauth2_scopes=None,
245
251
  security_source=get_security_from_env(
246
252
  self.sdk_configuration.security, models.Security
247
253
  ),
@@ -386,6 +392,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
386
392
  "json",
387
393
  models.NetworkTokenCreate,
388
394
  ),
395
+ allow_empty_value=None,
389
396
  timeout_ms=timeout_ms,
390
397
  )
391
398
 
@@ -402,7 +409,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
402
409
  config=self.sdk_configuration,
403
410
  base_url=base_url or "",
404
411
  operation_id="create_payment_method_network_token",
405
- oauth2_scopes=[],
412
+ oauth2_scopes=None,
406
413
  security_source=get_security_from_env(
407
414
  self.sdk_configuration.security, models.Security
408
415
  ),
@@ -547,6 +554,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
547
554
  "json",
548
555
  models.NetworkTokenCreate,
549
556
  ),
557
+ allow_empty_value=None,
550
558
  timeout_ms=timeout_ms,
551
559
  )
552
560
 
@@ -563,7 +571,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
563
571
  config=self.sdk_configuration,
564
572
  base_url=base_url or "",
565
573
  operation_id="create_payment_method_network_token",
566
- oauth2_scopes=[],
574
+ oauth2_scopes=None,
567
575
  security_source=get_security_from_env(
568
576
  self.sdk_configuration.security, models.Security
569
577
  ),
@@ -693,6 +701,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
693
701
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
694
702
  ),
695
703
  security=self.sdk_configuration.security,
704
+ allow_empty_value=None,
696
705
  timeout_ms=timeout_ms,
697
706
  )
698
707
 
@@ -709,7 +718,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
709
718
  config=self.sdk_configuration,
710
719
  base_url=base_url or "",
711
720
  operation_id="suspend_payment_method_network_token",
712
- oauth2_scopes=[],
721
+ oauth2_scopes=None,
713
722
  security_source=get_security_from_env(
714
723
  self.sdk_configuration.security, models.Security
715
724
  ),
@@ -839,6 +848,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
839
848
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
840
849
  ),
841
850
  security=self.sdk_configuration.security,
851
+ allow_empty_value=None,
842
852
  timeout_ms=timeout_ms,
843
853
  )
844
854
 
@@ -855,7 +865,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
855
865
  config=self.sdk_configuration,
856
866
  base_url=base_url or "",
857
867
  operation_id="suspend_payment_method_network_token",
858
- oauth2_scopes=[],
868
+ oauth2_scopes=None,
859
869
  security_source=get_security_from_env(
860
870
  self.sdk_configuration.security, models.Security
861
871
  ),
@@ -985,6 +995,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
985
995
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
986
996
  ),
987
997
  security=self.sdk_configuration.security,
998
+ allow_empty_value=None,
988
999
  timeout_ms=timeout_ms,
989
1000
  )
990
1001
 
@@ -1001,7 +1012,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
1001
1012
  config=self.sdk_configuration,
1002
1013
  base_url=base_url or "",
1003
1014
  operation_id="resume_payment_method_network_token",
1004
- oauth2_scopes=[],
1015
+ oauth2_scopes=None,
1005
1016
  security_source=get_security_from_env(
1006
1017
  self.sdk_configuration.security, models.Security
1007
1018
  ),
@@ -1131,6 +1142,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
1131
1142
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
1132
1143
  ),
1133
1144
  security=self.sdk_configuration.security,
1145
+ allow_empty_value=None,
1134
1146
  timeout_ms=timeout_ms,
1135
1147
  )
1136
1148
 
@@ -1147,7 +1159,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
1147
1159
  config=self.sdk_configuration,
1148
1160
  base_url=base_url or "",
1149
1161
  operation_id="resume_payment_method_network_token",
1150
- oauth2_scopes=[],
1162
+ oauth2_scopes=None,
1151
1163
  security_source=get_security_from_env(
1152
1164
  self.sdk_configuration.security, models.Security
1153
1165
  ),
@@ -1277,6 +1289,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
1277
1289
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
1278
1290
  ),
1279
1291
  security=self.sdk_configuration.security,
1292
+ allow_empty_value=None,
1280
1293
  timeout_ms=timeout_ms,
1281
1294
  )
1282
1295
 
@@ -1293,7 +1306,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
1293
1306
  config=self.sdk_configuration,
1294
1307
  base_url=base_url or "",
1295
1308
  operation_id="delete_payment_method_network_token",
1296
- oauth2_scopes=[],
1309
+ oauth2_scopes=None,
1297
1310
  security_source=get_security_from_env(
1298
1311
  self.sdk_configuration.security, models.Security
1299
1312
  ),
@@ -1423,6 +1436,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
1423
1436
  merchant_account_id=self.sdk_configuration.globals.merchant_account_id,
1424
1437
  ),
1425
1438
  security=self.sdk_configuration.security,
1439
+ allow_empty_value=None,
1426
1440
  timeout_ms=timeout_ms,
1427
1441
  )
1428
1442
 
@@ -1439,7 +1453,7 @@ class PaymentMethodsNetworkTokens(BaseSDK):
1439
1453
  config=self.sdk_configuration,
1440
1454
  base_url=base_url or "",
1441
1455
  operation_id="delete_payment_method_network_token",
1442
- oauth2_scopes=[],
1456
+ oauth2_scopes=None,
1443
1457
  security_source=get_security_from_env(
1444
1458
  self.sdk_configuration.security, models.Security
1445
1459
  ),