cuenca 2.1.11__tar.gz → 2.1.12__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 (118) hide show
  1. {cuenca-2.1.11 → cuenca-2.1.12}/PKG-INFO +1 -1
  2. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/sessions.py +0 -4
  3. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/user_events.py +1 -1
  4. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/users.py +11 -7
  5. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/version.py +1 -1
  6. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca.egg-info/PKG-INFO +1 -1
  7. {cuenca-2.1.11 → cuenca-2.1.12}/tests/conftest.py +1 -24
  8. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_sessions.py +2 -35
  9. {cuenca-2.1.11 → cuenca-2.1.12}/LICENSE +0 -0
  10. {cuenca-2.1.11 → cuenca-2.1.12}/README.md +0 -0
  11. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/__init__.py +0 -0
  12. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/exc.py +0 -0
  13. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/http/__init__.py +0 -0
  14. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/http/client.py +0 -0
  15. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/jwt.py +0 -0
  16. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/py.typed +0 -0
  17. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/__init__.py +0 -0
  18. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/accounts.py +0 -0
  19. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/api_keys.py +0 -0
  20. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/arpc.py +0 -0
  21. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/balance_entries.py +0 -0
  22. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/base.py +0 -0
  23. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/bill_payments.py +0 -0
  24. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/card_activations.py +0 -0
  25. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/card_transactions.py +0 -0
  26. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/card_validations.py +0 -0
  27. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/cards.py +0 -0
  28. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/cash_references.py +0 -0
  29. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/clabes.py +0 -0
  30. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/commissions.py +0 -0
  31. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/curp_validations.py +0 -0
  32. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/deposits.py +0 -0
  33. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/endpoints.py +0 -0
  34. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/exist_phones.py +0 -0
  35. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/file_batches.py +0 -0
  36. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/files.py +0 -0
  37. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/identities.py +0 -0
  38. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/identity_events.py +0 -0
  39. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/jwt_tokens.py +0 -0
  40. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/kyc_validations.py +0 -0
  41. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/limited_wallets.py +0 -0
  42. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/login_tokens.py +0 -0
  43. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/otps.py +0 -0
  44. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/phone_verification_associations.py +0 -0
  45. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/platforms.py +0 -0
  46. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/postal_codes.py +0 -0
  47. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/questionnaires.py +0 -0
  48. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/resources.py +0 -0
  49. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/savings.py +0 -0
  50. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/service_providers.py +0 -0
  51. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/statements.py +0 -0
  52. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/terms_of_service.py +0 -0
  53. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/transfers.py +0 -0
  54. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/user_credentials.py +0 -0
  55. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/user_lists_validation.py +0 -0
  56. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/user_logins.py +0 -0
  57. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/users_tos_agreements.py +0 -0
  58. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/verifications.py +0 -0
  59. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/wallet_transactions.py +0 -0
  60. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/webhooks.py +0 -0
  61. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca/resources/whatsapp_transfers.py +0 -0
  62. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca.egg-info/SOURCES.txt +0 -0
  63. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca.egg-info/dependency_links.txt +0 -0
  64. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca.egg-info/requires.txt +0 -0
  65. {cuenca-2.1.11 → cuenca-2.1.12}/cuenca.egg-info/top_level.txt +0 -0
  66. {cuenca-2.1.11 → cuenca-2.1.12}/setup.cfg +0 -0
  67. {cuenca-2.1.11 → cuenca-2.1.12}/setup.py +0 -0
  68. {cuenca-2.1.11 → cuenca-2.1.12}/tests/__init__.py +0 -0
  69. {cuenca-2.1.11 → cuenca-2.1.12}/tests/http/__init__.py +0 -0
  70. {cuenca-2.1.11 → cuenca-2.1.12}/tests/http/conftest.py +0 -0
  71. {cuenca-2.1.11 → cuenca-2.1.12}/tests/http/test_client.py +0 -0
  72. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/__init__.py +0 -0
  73. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_accounts.py +0 -0
  74. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_api_keys.py +0 -0
  75. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_arpc.py +0 -0
  76. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_balance_entries.py +0 -0
  77. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_bill_payments.py +0 -0
  78. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_card_activations.py +0 -0
  79. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_card_transactions.py +0 -0
  80. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_card_validations.py +0 -0
  81. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_cards.py +0 -0
  82. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_cash_references.py +0 -0
  83. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_clabes.py +0 -0
  84. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_commissions.py +0 -0
  85. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_curp_validations.py +0 -0
  86. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_deposits.py +0 -0
  87. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_endpoints.py +0 -0
  88. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_exist_phone.py +0 -0
  89. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_file_batches.py +0 -0
  90. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_files.py +0 -0
  91. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_identities.py +0 -0
  92. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_identity_events.py +0 -0
  93. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_jwt_tokens.py +0 -0
  94. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_kyc_validations.py +0 -0
  95. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_limited_wallets.py +0 -0
  96. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_login_tokens.py +0 -0
  97. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_otps.py +0 -0
  98. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_phone_verification_association.py +0 -0
  99. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_platforms.py +0 -0
  100. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_postal_codes.py +0 -0
  101. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_questionnaires.py +0 -0
  102. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_resources.py +0 -0
  103. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_savings.py +0 -0
  104. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_service_providers.py +0 -0
  105. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_statements.py +0 -0
  106. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_transfers.py +0 -0
  107. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_user_credentials.py +0 -0
  108. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_user_events.py +0 -0
  109. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_user_lists_validation.py +0 -0
  110. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_user_logins.py +0 -0
  111. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_users.py +0 -0
  112. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_users_tos_agreements.py +0 -0
  113. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_verifications.py +0 -0
  114. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_wallet_transactions.py +0 -0
  115. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_webhooks.py +0 -0
  116. {cuenca-2.1.11 → cuenca-2.1.12}/tests/resources/test_whatsapp_transfers.py +0 -0
  117. {cuenca-2.1.11 → cuenca-2.1.12}/tests/test_cuenca.py +0 -0
  118. {cuenca-2.1.11 → cuenca-2.1.12}/tests/test_jwt.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cuenca
3
- Version: 2.1.11
3
+ Version: 2.1.12
4
4
  Summary: Cuenca API Client
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-python
6
6
  Author: Cuenca
@@ -20,7 +20,6 @@ class Session(Creatable, Retrievable, Queryable):
20
20
  success_url: Optional[SerializableAnyUrl] = None
21
21
  failure_url: Optional[SerializableAnyUrl] = None
22
22
  type: Optional[SessionType] = None
23
- resource_id: Optional[str] = None
24
23
 
25
24
  model_config = ConfigDict(
26
25
  json_schema_extra={
@@ -33,7 +32,6 @@ class Session(Creatable, Retrievable, Queryable):
33
32
  'success_url': 'http://example_success.com',
34
33
  'failure_url': 'http://example_failure.com',
35
34
  'type': 'session.registration',
36
- 'resource_id': 'some_resource_id',
37
35
  }
38
36
  }
39
37
  )
@@ -45,7 +43,6 @@ class Session(Creatable, Retrievable, Queryable):
45
43
  type: SessionType,
46
44
  success_url: Optional[str] = None,
47
45
  failure_url: Optional[str] = None,
48
- resource_id: Optional[str] = None,
49
46
  *,
50
47
  session: http.Session = http.session,
51
48
  ) -> 'Session':
@@ -54,6 +51,5 @@ class Session(Creatable, Retrievable, Queryable):
54
51
  type=type,
55
52
  success_url=success_url,
56
53
  failure_url=failure_url,
57
- resource_id=resource_id,
58
54
  )
59
55
  return cls._create(session=session, **req.model_dump())
@@ -21,7 +21,7 @@ class UserEvent(IdentityEvent):
21
21
  'type': 'created',
22
22
  'user_id': 'USWqY5cvkISJOxHyEKjAKf8w',
23
23
  'platform_id': 'PT8UEv02zBTcymd4Kd3MO6pg',
24
- 'new_model': User.schema().get('example'),
24
+ 'new_model': User.model_json_schema().get('example'),
25
25
  }
26
26
  }
27
27
  )
@@ -5,6 +5,7 @@ from clabe import Clabe
5
5
  from cuenca_validations.types import (
6
6
  Address,
7
7
  Beneficiary,
8
+ BeneficiaryRequest,
8
9
  KYCFile,
9
10
  PhoneNumber,
10
11
  SATRegimeCode,
@@ -101,14 +102,16 @@ class User(Creatable, Retrievable, Updateable, Queryable):
101
102
  'phone_number': '+525511223344',
102
103
  'email_address': 'user@example.com',
103
104
  'profession': 'engineer',
104
- 'terms_of_service': TOSAgreement.schema().get('example'),
105
+ 'terms_of_service': TOSAgreement.model_json_schema().get(
106
+ 'example'
107
+ ),
105
108
  'status': 'active',
106
- 'address': Address.schema().get('example'),
107
- 'govt_id': KYCFile.schema().get('example'),
109
+ 'address': Address.model_json_schema().get('example'),
110
+ 'govt_id': KYCFile.model_json_schema().get('example'),
108
111
  'proof_of_address': None,
109
112
  'proof_of_life': None,
110
113
  'beneficiaries': [
111
- Beneficiary.schema().get('example'),
114
+ Beneficiary.model_json_schema().get('example'),
112
115
  ],
113
116
  'platform_id': 'PT8UEv02zBTcymd4Kd3MO6pg',
114
117
  }
@@ -139,6 +142,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
139
142
  account_use_type=account_use_type,
140
143
  monthly_spending_type=monthly_spending_type,
141
144
  monthly_movements_type=monthly_movements_type,
145
+ income_type=income_type,
142
146
  )
143
147
  return cls._create(session=session, **req.model_dump())
144
148
 
@@ -148,14 +152,14 @@ class User(Creatable, Retrievable, Updateable, Queryable):
148
152
  user_id: str,
149
153
  profession: Optional[str] = None,
150
154
  address: Optional[AddressRequest] = None,
151
- beneficiaries: Optional[list[Beneficiary]] = None,
155
+ beneficiaries: Optional[list[BeneficiaryRequest]] = None,
152
156
  govt_id: Optional[KYCFile] = None,
153
157
  proof_of_address: Optional[KYCFile] = None,
154
158
  proof_of_life: Optional[KYCFile] = None,
155
159
  status: Optional[UserStatus] = None,
156
160
  email_verification_id: Optional[str] = None,
157
161
  phone_verification_id: Optional[str] = None,
158
- curp_document: Optional[SerializableHttpUrl] = None,
162
+ curp_document_uri: Optional[SerializableHttpUrl] = None,
159
163
  fiscal_regime_code: Optional[SATRegimeCode] = None,
160
164
  fiscal_address: Optional[AddressRequest] = None,
161
165
  account_use_type: Optional[AccountUseType] = None,
@@ -176,7 +180,7 @@ class User(Creatable, Retrievable, Updateable, Queryable):
176
180
  status=status,
177
181
  email_verification_id=email_verification_id,
178
182
  phone_verification_id=phone_verification_id,
179
- curp_document=curp_document,
183
+ curp_document_uri=curp_document_uri,
180
184
  fiscal_regime_code=fiscal_regime_code,
181
185
  fiscal_address=fiscal_address,
182
186
  account_use_type=account_use_type,
@@ -1,3 +1,3 @@
1
- __version__ = '2.1.11'
1
+ __version__ = '2.1.12'
2
2
  CLIENT_VERSION = __version__
3
3
  API_VERSION = '2020-03-19'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cuenca
3
- Version: 2.1.11
3
+ Version: 2.1.12
4
4
  Summary: Cuenca API Client
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-python
6
6
  Author: Cuenca
@@ -1,14 +1,11 @@
1
1
  import datetime as dt
2
2
  from io import BytesIO
3
- from typing import Generator
4
3
 
5
4
  import pytest
6
- from cuenca_validations.types import Country, Gender, SessionType, State
5
+ from cuenca_validations.types import Country, Gender, State
7
6
  from cuenca_validations.types.enums import Profession
8
7
 
9
8
  import cuenca
10
- from cuenca.http import Session as ClientSession
11
- from cuenca.resources.sessions import Session
12
9
 
13
10
  cuenca.configure(sandbox=True)
14
11
 
@@ -79,23 +76,3 @@ def user_lists_request() -> dict:
79
76
  def file() -> BytesIO:
80
77
  with open('tests/data/test_file.jpeg', 'rb') as image_file:
81
78
  return BytesIO(image_file.read())
82
-
83
-
84
- @pytest.fixture
85
- def session_with_resource_id() -> Generator[Session]:
86
- session = Session.create(
87
- 'USPR4JxMuwSG60u2h4gBpB6Q',
88
- SessionType.onboarding_verification,
89
- resource_id='68b887f60c33abad1ea841d3',
90
- )
91
- yield session
92
-
93
-
94
- @pytest.fixture
95
- def client_authed_with_session(
96
- session_with_resource_id: Session,
97
- ) -> Generator[ClientSession]:
98
- client = ClientSession()
99
- client.configure(session_token=session_with_resource_id.id, sandbox=True)
100
- client.basic_auth = ('', '')
101
- yield client
@@ -2,8 +2,7 @@ import pytest
2
2
  from cuenca_validations.types import Profession, SessionType
3
3
  from pydantic import ValidationError
4
4
 
5
- from cuenca.exc import CuencaResponseException
6
- from cuenca.http import Session as ClientSession
5
+ import cuenca
7
6
  from cuenca.resources import CurpValidation, Session, User
8
7
 
9
8
 
@@ -34,40 +33,8 @@ def test_session_create(curp_validation_request: dict, user_request: dict):
34
33
  assert user_session.user_id == user.id
35
34
  assert user_session.type == SessionType.registration
36
35
 
37
- ephimeral_cuenca_session = ClientSession()
36
+ ephimeral_cuenca_session = cuenca.http.Session()
38
37
  ephimeral_cuenca_session.configure(session_token=user_session.id)
39
38
 
40
39
  user = User.update(user.id, profession=Profession.comercio)
41
40
  assert user.profession == Profession.comercio
42
-
43
-
44
- @pytest.mark.vcr
45
- def test_session_create_with_resource_id(
46
- session_with_resource_id: Session,
47
- ) -> None:
48
- assert session_with_resource_id.user_id == 'USPR4JxMuwSG60u2h4gBpB6Q'
49
- assert session_with_resource_id.resource_id == '68b887f60c33abad1ea841d3'
50
-
51
-
52
- @pytest.mark.vcr
53
- def test_session_with_resource_id_authorized(
54
- client_authed_with_session: ClientSession,
55
- ) -> None:
56
- resource_id = '68b887f60c33abad1ea841d3'
57
- response = client_authed_with_session.get(
58
- f'onboarding_verifications/{resource_id}'
59
- )
60
-
61
- assert response['gov_id_document_number'] == '267202610'
62
-
63
-
64
- @pytest.mark.vcr
65
- def test_session_with_resource_id_unauthorized(
66
- client_authed_with_session: ClientSession,
67
- ) -> None:
68
- resource_id = '68b887f60c33abad1ea841d4'
69
- with pytest.raises(CuencaResponseException) as e:
70
- client_authed_with_session.get(
71
- f'onboarding_verifications/{resource_id}'
72
- )
73
- assert e.value.json['error'] == 'User has not enough permissions'
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes