cuenca 2.1.2.dev1__tar.gz → 2.1.3.dev0__tar.gz

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 (113) hide show
  1. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/PKG-INFO +1 -1
  2. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/identities.py +2 -0
  3. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/user_lists_validation.py +12 -0
  4. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/users.py +8 -0
  5. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/version.py +1 -1
  6. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca.egg-info/PKG-INFO +1 -1
  7. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca.egg-info/SOURCES.txt +0 -2
  8. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_user_lists_validation.py +14 -0
  9. cuenca-2.1.2.dev1/cuenca/resources/terms_of_services.py +0 -18
  10. cuenca-2.1.2.dev1/cuenca/resources/user_tos_agreements.py +0 -21
  11. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/LICENSE +0 -0
  12. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/README.md +0 -0
  13. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/__init__.py +0 -0
  14. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/exc.py +0 -0
  15. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/http/__init__.py +0 -0
  16. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/http/client.py +0 -0
  17. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/jwt.py +0 -0
  18. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/py.typed +0 -0
  19. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/__init__.py +0 -0
  20. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/accounts.py +0 -0
  21. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/api_keys.py +0 -0
  22. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/arpc.py +0 -0
  23. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/balance_entries.py +0 -0
  24. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/base.py +0 -0
  25. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/bill_payments.py +0 -0
  26. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/card_activations.py +0 -0
  27. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/card_transactions.py +0 -0
  28. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/card_validations.py +0 -0
  29. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/cards.py +0 -0
  30. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/cash_references.py +0 -0
  31. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/clabes.py +0 -0
  32. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/commissions.py +0 -0
  33. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/curp_validations.py +0 -0
  34. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/deposits.py +0 -0
  35. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/endpoints.py +0 -0
  36. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/file_batches.py +0 -0
  37. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/files.py +0 -0
  38. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/identity_events.py +0 -0
  39. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/jwt_tokens.py +0 -0
  40. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/kyc_validations.py +0 -0
  41. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/kyc_verifications.py +0 -0
  42. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/limited_wallets.py +0 -0
  43. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/login_tokens.py +0 -0
  44. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/otps.py +0 -0
  45. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/platforms.py +0 -0
  46. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/questionnaires.py +0 -0
  47. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/resources.py +0 -0
  48. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/savings.py +0 -0
  49. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/service_providers.py +0 -0
  50. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/sessions.py +0 -0
  51. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/statements.py +0 -0
  52. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/transfers.py +0 -0
  53. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/user_credentials.py +0 -0
  54. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/user_events.py +0 -0
  55. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/user_logins.py +0 -0
  56. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/verifications.py +0 -0
  57. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/wallet_transactions.py +0 -0
  58. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/webhooks.py +0 -0
  59. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca/resources/whatsapp_transfers.py +0 -0
  60. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca.egg-info/dependency_links.txt +0 -0
  61. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca.egg-info/requires.txt +0 -0
  62. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/cuenca.egg-info/top_level.txt +0 -0
  63. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/setup.cfg +0 -0
  64. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/setup.py +0 -0
  65. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/__init__.py +0 -0
  66. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/conftest.py +0 -0
  67. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/http/__init__.py +0 -0
  68. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/http/conftest.py +0 -0
  69. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/http/test_client.py +0 -0
  70. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/__init__.py +0 -0
  71. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_accounts.py +0 -0
  72. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_api_keys.py +0 -0
  73. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_arpc.py +0 -0
  74. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_balance_entries.py +0 -0
  75. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_bill_payments.py +0 -0
  76. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_card_activations.py +0 -0
  77. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_card_transactions.py +0 -0
  78. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_card_validations.py +0 -0
  79. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_cards.py +0 -0
  80. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_cash_references.py +0 -0
  81. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_clabes.py +0 -0
  82. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_commissions.py +0 -0
  83. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_curp_validations.py +0 -0
  84. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_deposits.py +0 -0
  85. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_endpoints.py +0 -0
  86. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_file_batches.py +0 -0
  87. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_files.py +0 -0
  88. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_identities.py +0 -0
  89. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_identity_events.py +0 -0
  90. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_jwt_tokens.py +0 -0
  91. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_kyc_validations.py +0 -0
  92. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_kyc_verifications.py +0 -0
  93. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_limited_wallets.py +0 -0
  94. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_login_tokens.py +0 -0
  95. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_otps.py +0 -0
  96. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_platforms.py +0 -0
  97. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_questionnaires.py +0 -0
  98. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_resources.py +0 -0
  99. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_savings.py +0 -0
  100. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_service_providers.py +0 -0
  101. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_sessions.py +0 -0
  102. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_statements.py +0 -0
  103. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_transfers.py +0 -0
  104. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_user_credentials.py +0 -0
  105. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_user_events.py +0 -0
  106. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_user_logins.py +0 -0
  107. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_users.py +0 -0
  108. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_verifications.py +0 -0
  109. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_wallet_transactions.py +0 -0
  110. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_webhooks.py +0 -0
  111. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/resources/test_whatsapp_transfers.py +0 -0
  112. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/test_cuenca.py +0 -0
  113. {cuenca-2.1.2.dev1 → cuenca-2.1.3.dev0}/tests/test_jwt.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: cuenca
3
- Version: 2.1.2.dev1
3
+ Version: 2.1.3.dev0
4
4
  Summary: Cuenca API Client
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-python
6
6
  Author: Cuenca
@@ -7,6 +7,7 @@ from cuenca_validations.types import (
7
7
  IdentityQuery,
8
8
  KYCFile,
9
9
  State,
10
+ TOSAgreement,
10
11
  UserStatus,
11
12
  VerificationStatus,
12
13
  )
@@ -30,6 +31,7 @@ class Identity(Retrievable, Queryable):
30
31
  state_of_birth: Optional[State] = None
31
32
  country_of_birth: Optional[str] = None
32
33
  status: Optional[UserStatus] = None
34
+ tos_agreement: Optional[TOSAgreement] = None
33
35
  blacklist_validation_status: Optional[VerificationStatus] = None
34
36
  address: Optional[Address] = None
35
37
  govt_id: Optional[KYCFile] = None
@@ -17,6 +17,18 @@ class UserListsValidation(Creatable, Retrievable):
17
17
  curp: Optional[Curp] = None
18
18
  account_number: Optional[str] = None
19
19
  status: Optional[VerificationStatus] = None
20
+ response: Optional[dict] = None
21
+
22
+ @property
23
+ def ppe_matches(self) -> list[dict]:
24
+ if not self.response or 'persons' not in self.response:
25
+ return []
26
+
27
+ return [
28
+ person
29
+ for person in self.response['persons']
30
+ if person.get('lista') == 'PPE'
31
+ ]
20
32
 
21
33
  @classmethod
22
34
  def create(
@@ -7,6 +7,8 @@ from cuenca_validations.types import (
7
7
  Beneficiary,
8
8
  KYCFile,
9
9
  PhoneNumber,
10
+ TOSAgreement,
11
+ TOSRequest,
10
12
  UserQuery,
11
13
  UserRequest,
12
14
  UserStatus,
@@ -39,6 +41,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
39
41
  phone_number: Optional[PhoneNumber] = None
40
42
  email_address: Optional[EmailStr] = None
41
43
  profession: Optional[str] = None
44
+ terms_of_service: Optional[TOSAgreement] = None
42
45
  status: Optional[UserStatus] = None
43
46
  address: Optional[Address] = None
44
47
  govt_id: Optional[KYCFile] = Field(
@@ -84,6 +87,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
84
87
  'phone_number': '+525511223344',
85
88
  'email_address': 'user@example.com',
86
89
  'profession': 'engineer',
90
+ 'terms_of_service': TOSAgreement.schema().get('example'),
87
91
  'status': 'active',
88
92
  'address': Address.schema().get('example'),
89
93
  'govt_id': KYCFile.schema().get('example'),
@@ -109,6 +113,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
109
113
  phone_verification_id: Optional[str] = None,
110
114
  status: Optional[UserStatus] = None,
111
115
  required_level: Optional[int] = None,
116
+ terms_of_service: Optional[TOSRequest] = None,
112
117
  *,
113
118
  session: Session = global_session,
114
119
  ) -> 'User':
@@ -122,6 +127,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
122
127
  phone_verification_id=phone_verification_id,
123
128
  required_level=required_level,
124
129
  status=status,
130
+ terms_of_service=terms_of_service,
125
131
  )
126
132
  return cls._create(session=session, **req.model_dump())
127
133
 
@@ -137,6 +143,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
137
143
  govt_id: Optional[KYCFile] = None,
138
144
  proof_of_address: Optional[KYCFile] = None,
139
145
  proof_of_life: Optional[KYCFile] = None,
146
+ terms_of_service: Optional[TOSRequest] = None,
140
147
  verification_id: Optional[str] = None,
141
148
  status: Optional[UserStatus] = None,
142
149
  email_verification_id: Optional[str] = None,
@@ -154,6 +161,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
154
161
  govt_id=govt_id,
155
162
  proof_of_address=proof_of_address,
156
163
  proof_of_life=proof_of_life,
164
+ terms_of_service=terms_of_service,
157
165
  verification_id=verification_id,
158
166
  email_verification_id=email_verification_id,
159
167
  phone_verification_id=phone_verification_id,
@@ -1,3 +1,3 @@
1
- __version__ = '2.1.2.dev1'
1
+ __version__ = '2.1.3.dev0'
2
2
  CLIENT_VERSION = __version__
3
3
  API_VERSION = '2020-03-19'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: cuenca
3
- Version: 2.1.2.dev1
3
+ Version: 2.1.3.dev0
4
4
  Summary: Cuenca API Client
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-python
6
6
  Author: Cuenca
@@ -48,13 +48,11 @@ cuenca/resources/savings.py
48
48
  cuenca/resources/service_providers.py
49
49
  cuenca/resources/sessions.py
50
50
  cuenca/resources/statements.py
51
- cuenca/resources/terms_of_services.py
52
51
  cuenca/resources/transfers.py
53
52
  cuenca/resources/user_credentials.py
54
53
  cuenca/resources/user_events.py
55
54
  cuenca/resources/user_lists_validation.py
56
55
  cuenca/resources/user_logins.py
57
- cuenca/resources/user_tos_agreements.py
58
56
  cuenca/resources/users.py
59
57
  cuenca/resources/verifications.py
60
58
  cuenca/resources/wallet_transactions.py
@@ -5,10 +5,24 @@ from cuenca.exc import CuencaResponseException
5
5
  from cuenca.resources import UserListsValidation
6
6
 
7
7
 
8
+ @pytest.mark.vcr
9
+ def test_create_user_validation_with_response():
10
+ user_validation = UserListsValidation.create(
11
+ curp='LOBR810330HTCPLM05',
12
+ names='José Ramón',
13
+ first_surname='López',
14
+ second_surname='Beltrán',
15
+ )
16
+ assert user_validation.status == VerificationStatus.rejected
17
+ assert len(user_validation.ppe_matches) == 1
18
+ assert user_validation.ppe_matches[0]['parentesco'] == 'HIJO'
19
+
20
+
8
21
  @pytest.mark.vcr
9
22
  def test_create_user_validation(user_lists_request):
10
23
  user_validation = UserListsValidation.create(**user_lists_request)
11
24
  assert user_validation.status == VerificationStatus.succeeded
25
+ assert len(user_validation.ppe_matches) == 0
12
26
  assert user_validation.id
13
27
 
14
28
 
@@ -1,18 +0,0 @@
1
- import datetime as dt
2
- from typing import ClassVar
3
-
4
- from cuenca_validations.types import TermsOfService as TermsOfServiceEnum
5
- from cuenca_validations.types.general import SerializableHttpUrl
6
-
7
- from .base import Queryable, Retrievable
8
-
9
-
10
- class TermsOfService(Retrievable, Queryable):
11
- _resource: ClassVar = 'terms_of_services'
12
-
13
- id: str
14
- is_active: bool
15
- created_at: dt.datetime
16
- type: TermsOfServiceEnum
17
- version: str
18
- uri: SerializableHttpUrl
@@ -1,21 +0,0 @@
1
- import datetime as dt
2
- from typing import ClassVar
3
-
4
- from cuenca_validations.types import TermsOfService
5
- from cuenca_validations.types.general import SerializableHttpUrl
6
-
7
- from .base import Creatable, Queryable, Retrievable
8
-
9
-
10
- class UserTOSAgreement(Creatable, Retrievable, Queryable):
11
- _resource: ClassVar = 'user_tos_agreements'
12
-
13
- id: str
14
- created_at: dt.datetime
15
- user_id: str
16
- type: TermsOfService
17
- version: str
18
- ip: str
19
- location: str
20
- hash: str
21
- url: SerializableHttpUrl
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes