pluggy-sdk 1.0.0.post43__py3-none-any.whl → 1.0.0.post48__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.
- pluggy_sdk/__init__.py +190 -172
- pluggy_sdk/api/__init__.py +1 -0
- pluggy_sdk/api/automatic_pix_api.py +1965 -0
- pluggy_sdk/api/payment_customer_api.py +68 -0
- pluggy_sdk/api/payment_recipient_api.py +52 -1
- pluggy_sdk/api/payment_request_api.py +123 -276
- pluggy_sdk/api/payment_schedule_api.py +3 -3
- pluggy_sdk/api_client.py +5 -1
- pluggy_sdk/configuration.py +1 -1
- pluggy_sdk/models/__init__.py +9 -1
- pluggy_sdk/models/additional_card.py +88 -0
- pluggy_sdk/models/automatic_pix_first_payment.py +93 -0
- pluggy_sdk/models/automatic_pix_payment.py +112 -0
- pluggy_sdk/models/create_automatic_pix_payment_request.py +128 -0
- pluggy_sdk/models/create_payment_recipient.py +4 -4
- pluggy_sdk/models/credit_data.py +22 -2
- pluggy_sdk/models/disaggregated_credit_limit.py +110 -0
- pluggy_sdk/models/payment_intent.py +2 -2
- pluggy_sdk/models/payment_intent_automatic_pix.py +114 -0
- pluggy_sdk/models/payment_intent_parameter.py +4 -2
- pluggy_sdk/models/payment_request.py +10 -4
- pluggy_sdk/models/payment_request_get_automatic_pix_schedules200_response.py +102 -0
- pluggy_sdk/models/retry_automatic_pix_payment_request.py +89 -0
- pluggy_sdk/models/schedule_automatic_pix_payment_request.py +93 -0
- pluggy_sdk/models/schedule_payment.py +3 -1
- pluggy_sdk/models/update_payment_recipient.py +4 -4
- {pluggy_sdk-1.0.0.post43.dist-info → pluggy_sdk-1.0.0.post48.dist-info}/METADATA +25 -16
- {pluggy_sdk-1.0.0.post43.dist-info → pluggy_sdk-1.0.0.post48.dist-info}/RECORD +30 -20
- {pluggy_sdk-1.0.0.post43.dist-info → pluggy_sdk-1.0.0.post48.dist-info}/WHEEL +1 -1
- {pluggy_sdk-1.0.0.post43.dist-info → pluggy_sdk-1.0.0.post48.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,114 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
Pluggy API
|
5
|
+
|
6
|
+
Pluggy's main API to review data and execute connectors
|
7
|
+
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
9
|
+
Contact: hello@pluggy.ai
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
|
+
|
12
|
+
Do not edit the class manually.
|
13
|
+
""" # noqa: E501
|
14
|
+
|
15
|
+
|
16
|
+
from __future__ import annotations
|
17
|
+
import pprint
|
18
|
+
import re # noqa: F401
|
19
|
+
import json
|
20
|
+
|
21
|
+
from datetime import datetime
|
22
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt, StrictStr, field_validator
|
23
|
+
from typing import Any, ClassVar, Dict, List, Optional, Union
|
24
|
+
from pluggy_sdk.models.automatic_pix_first_payment import AutomaticPixFirstPayment
|
25
|
+
from typing import Optional, Set
|
26
|
+
from typing_extensions import Self
|
27
|
+
|
28
|
+
class PaymentIntentAutomaticPix(BaseModel):
|
29
|
+
"""
|
30
|
+
Automatic PIX data
|
31
|
+
""" # noqa: E501
|
32
|
+
fixed_amount: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Fixed charge amount; if filled in, it represents consent for payments of fixed amounts, not subject to change during the validity of the consent. If it's sent, minimumVariableAmount and maximumVariableAmount cannot be provided.", alias="fixedAmount")
|
33
|
+
minimum_variable_amount: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Minimum amount allowed per charge; if filled in, it represents consent for payments of variable amounts. If it's sent, fixedAmount cannot be provided.", alias="minimumVariableAmount")
|
34
|
+
maximum_variable_amount: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Maximum amount allowed per charge; if filled in, it represents consent for payments of variable amounts. If it's sent, fixedAmount cannot be provided.", alias="maximumVariableAmount")
|
35
|
+
start_date: datetime = Field(description="Represents the expected date for the first occurrence of a payment associated with the recurrence.", alias="startDate")
|
36
|
+
expires_at: Optional[datetime] = Field(default=None, description="Expiration date for the automatic pix authorization", alias="expiresAt")
|
37
|
+
is_retry_accepted: Optional[StrictBool] = Field(default=None, description="Indicates whether the receiving customer is allowed to make payment attempts, according to the rules established in the Pix arrangement.", alias="isRetryAccepted")
|
38
|
+
first_payment: Optional[AutomaticPixFirstPayment] = Field(default=None, alias="firstPayment")
|
39
|
+
interval: StrictStr = Field(description="Defines the permitted frequency for carrying out transactions.")
|
40
|
+
__properties: ClassVar[List[str]] = ["fixedAmount", "minimumVariableAmount", "maximumVariableAmount", "startDate", "expiresAt", "isRetryAccepted", "firstPayment", "interval"]
|
41
|
+
|
42
|
+
@field_validator('interval')
|
43
|
+
def interval_validate_enum(cls, value):
|
44
|
+
"""Validates the enum"""
|
45
|
+
if value not in set(['WEEKLY', 'MONTHLY', 'QUARTERLY', 'SEMESTER', 'YEARLY']):
|
46
|
+
raise ValueError("must be one of enum values ('WEEKLY', 'MONTHLY', 'QUARTERLY', 'SEMESTER', 'YEARLY')")
|
47
|
+
return value
|
48
|
+
|
49
|
+
model_config = ConfigDict(
|
50
|
+
populate_by_name=True,
|
51
|
+
validate_assignment=True,
|
52
|
+
protected_namespaces=(),
|
53
|
+
)
|
54
|
+
|
55
|
+
|
56
|
+
def to_str(self) -> str:
|
57
|
+
"""Returns the string representation of the model using alias"""
|
58
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
59
|
+
|
60
|
+
def to_json(self) -> str:
|
61
|
+
"""Returns the JSON representation of the model using alias"""
|
62
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
63
|
+
return json.dumps(self.to_dict())
|
64
|
+
|
65
|
+
@classmethod
|
66
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
67
|
+
"""Create an instance of PaymentIntentAutomaticPix from a JSON string"""
|
68
|
+
return cls.from_dict(json.loads(json_str))
|
69
|
+
|
70
|
+
def to_dict(self) -> Dict[str, Any]:
|
71
|
+
"""Return the dictionary representation of the model using alias.
|
72
|
+
|
73
|
+
This has the following differences from calling pydantic's
|
74
|
+
`self.model_dump(by_alias=True)`:
|
75
|
+
|
76
|
+
* `None` is only added to the output dict for nullable fields that
|
77
|
+
were set at model initialization. Other fields with value `None`
|
78
|
+
are ignored.
|
79
|
+
"""
|
80
|
+
excluded_fields: Set[str] = set([
|
81
|
+
])
|
82
|
+
|
83
|
+
_dict = self.model_dump(
|
84
|
+
by_alias=True,
|
85
|
+
exclude=excluded_fields,
|
86
|
+
exclude_none=True,
|
87
|
+
)
|
88
|
+
# override the default output from pydantic by calling `to_dict()` of first_payment
|
89
|
+
if self.first_payment:
|
90
|
+
_dict['firstPayment'] = self.first_payment.to_dict()
|
91
|
+
return _dict
|
92
|
+
|
93
|
+
@classmethod
|
94
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
95
|
+
"""Create an instance of PaymentIntentAutomaticPix from a dict"""
|
96
|
+
if obj is None:
|
97
|
+
return None
|
98
|
+
|
99
|
+
if not isinstance(obj, dict):
|
100
|
+
return cls.model_validate(obj)
|
101
|
+
|
102
|
+
_obj = cls.model_validate({
|
103
|
+
"fixedAmount": obj.get("fixedAmount"),
|
104
|
+
"minimumVariableAmount": obj.get("minimumVariableAmount"),
|
105
|
+
"maximumVariableAmount": obj.get("maximumVariableAmount"),
|
106
|
+
"startDate": obj.get("startDate"),
|
107
|
+
"expiresAt": obj.get("expiresAt"),
|
108
|
+
"isRetryAccepted": obj.get("isRetryAccepted"),
|
109
|
+
"firstPayment": AutomaticPixFirstPayment.from_dict(obj["firstPayment"]) if obj.get("firstPayment") is not None else None,
|
110
|
+
"interval": obj.get("interval")
|
111
|
+
})
|
112
|
+
return _obj
|
113
|
+
|
114
|
+
|
@@ -29,7 +29,8 @@ class PaymentIntentParameter(BaseModel):
|
|
29
29
|
""" # noqa: E501
|
30
30
|
cpf: StrictStr = Field(description="CPF of the payer")
|
31
31
|
cnpj: Optional[StrictStr] = Field(default=None, description="CNPJ of the payer")
|
32
|
-
|
32
|
+
name: Optional[StrictStr] = Field(default=None, description="Name of the payer. Only required for automatic pix payment requests.")
|
33
|
+
__properties: ClassVar[List[str]] = ["cpf", "cnpj", "name"]
|
33
34
|
|
34
35
|
model_config = ConfigDict(
|
35
36
|
populate_by_name=True,
|
@@ -83,7 +84,8 @@ class PaymentIntentParameter(BaseModel):
|
|
83
84
|
|
84
85
|
_obj = cls.model_validate({
|
85
86
|
"cpf": obj.get("cpf"),
|
86
|
-
"cnpj": obj.get("cnpj")
|
87
|
+
"cnpj": obj.get("cnpj"),
|
88
|
+
"name": obj.get("name")
|
87
89
|
})
|
88
90
|
return _obj
|
89
91
|
|
@@ -22,6 +22,7 @@ from datetime import datetime
|
|
22
22
|
from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr, field_validator
|
23
23
|
from typing import Any, ClassVar, Dict, List, Optional, Union
|
24
24
|
from pluggy_sdk.models.boleto import Boleto
|
25
|
+
from pluggy_sdk.models.payment_intent_automatic_pix import PaymentIntentAutomaticPix
|
25
26
|
from pluggy_sdk.models.payment_request_callback_urls import PaymentRequestCallbackUrls
|
26
27
|
from pluggy_sdk.models.payment_request_error_detail import PaymentRequestErrorDetail
|
27
28
|
from pluggy_sdk.models.payment_request_schedule import PaymentRequestSchedule
|
@@ -33,7 +34,7 @@ class PaymentRequest(BaseModel):
|
|
33
34
|
Response with information related to a payment request
|
34
35
|
""" # noqa: E501
|
35
36
|
id: StrictStr = Field(description="Primary identifier")
|
36
|
-
amount: Union[StrictFloat, StrictInt] = Field(description="Requested amount")
|
37
|
+
amount: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Requested amount. For automatic pix it won't be returned")
|
37
38
|
fees: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Fees charged for the payment request. This includes both Pluggy's fees and any customer-specific fees. Fees are calculated based on the payment method (PIX or Boleto) and the client's pricing configuration. For sandbox accounts, fees are set to 0.")
|
38
39
|
description: Optional[StrictStr] = Field(default=None, description="Payment description")
|
39
40
|
status: StrictStr = Field(description="Payment request status")
|
@@ -45,15 +46,16 @@ class PaymentRequest(BaseModel):
|
|
45
46
|
payment_url: StrictStr = Field(description="URL to begin the payment intent creation flow for this payment request", alias="paymentUrl")
|
46
47
|
pix_qr_code: Optional[StrictStr] = Field(default=None, description="Pix QR code generated by the payment receiver", alias="pixQrCode")
|
47
48
|
boleto: Optional[Boleto] = None
|
49
|
+
automatic_pix: Optional[PaymentIntentAutomaticPix] = Field(default=None, alias="automaticPix")
|
48
50
|
schedule: Optional[PaymentRequestSchedule] = None
|
49
51
|
error_detail: Optional[PaymentRequestErrorDetail] = Field(default=None, alias="errorDetail")
|
50
|
-
__properties: ClassVar[List[str]] = ["id", "amount", "fees", "description", "status", "clientPaymentId", "createdAt", "updatedAt", "callbackUrls", "recipientId", "paymentUrl", "pixQrCode", "boleto", "schedule", "errorDetail"]
|
52
|
+
__properties: ClassVar[List[str]] = ["id", "amount", "fees", "description", "status", "clientPaymentId", "createdAt", "updatedAt", "callbackUrls", "recipientId", "paymentUrl", "pixQrCode", "boleto", "automaticPix", "schedule", "errorDetail"]
|
51
53
|
|
52
54
|
@field_validator('status')
|
53
55
|
def status_validate_enum(cls, value):
|
54
56
|
"""Validates the enum"""
|
55
|
-
if value not in set(['CREATED', 'IN_PROGRESS', 'COMPLETED', 'SCHEDULED', 'WAITING_PAYER_AUTHORIZATION', 'ERROR', 'REFUND_IN_PROGRESS', 'REFUNDED', 'REFUND_ERROR']):
|
56
|
-
raise ValueError("must be one of enum values ('CREATED', 'IN_PROGRESS', 'COMPLETED', 'SCHEDULED', 'WAITING_PAYER_AUTHORIZATION', 'ERROR', 'REFUND_IN_PROGRESS', 'REFUNDED', 'REFUND_ERROR')")
|
57
|
+
if value not in set(['CREATED', 'IN_PROGRESS', 'COMPLETED', 'SCHEDULED', 'WAITING_PAYER_AUTHORIZATION', 'ERROR', 'REFUND_IN_PROGRESS', 'REFUNDED', 'REFUND_ERROR', 'CANCELED']):
|
58
|
+
raise ValueError("must be one of enum values ('CREATED', 'IN_PROGRESS', 'COMPLETED', 'SCHEDULED', 'WAITING_PAYER_AUTHORIZATION', 'ERROR', 'REFUND_IN_PROGRESS', 'REFUNDED', 'REFUND_ERROR', 'CANCELED')")
|
57
59
|
return value
|
58
60
|
|
59
61
|
model_config = ConfigDict(
|
@@ -101,6 +103,9 @@ class PaymentRequest(BaseModel):
|
|
101
103
|
# override the default output from pydantic by calling `to_dict()` of boleto
|
102
104
|
if self.boleto:
|
103
105
|
_dict['boleto'] = self.boleto.to_dict()
|
106
|
+
# override the default output from pydantic by calling `to_dict()` of automatic_pix
|
107
|
+
if self.automatic_pix:
|
108
|
+
_dict['automaticPix'] = self.automatic_pix.to_dict()
|
104
109
|
# override the default output from pydantic by calling `to_dict()` of schedule
|
105
110
|
if self.schedule:
|
106
111
|
_dict['schedule'] = self.schedule.to_dict()
|
@@ -132,6 +137,7 @@ class PaymentRequest(BaseModel):
|
|
132
137
|
"paymentUrl": obj.get("paymentUrl"),
|
133
138
|
"pixQrCode": obj.get("pixQrCode"),
|
134
139
|
"boleto": Boleto.from_dict(obj["boleto"]) if obj.get("boleto") is not None else None,
|
140
|
+
"automaticPix": PaymentIntentAutomaticPix.from_dict(obj["automaticPix"]) if obj.get("automaticPix") is not None else None,
|
135
141
|
"schedule": PaymentRequestSchedule.from_dict(obj["schedule"]) if obj.get("schedule") is not None else None,
|
136
142
|
"errorDetail": PaymentRequestErrorDetail.from_dict(obj["errorDetail"]) if obj.get("errorDetail") is not None else None
|
137
143
|
})
|
@@ -0,0 +1,102 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
Pluggy API
|
5
|
+
|
6
|
+
Pluggy's main API to review data and execute connectors
|
7
|
+
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
9
|
+
Contact: hello@pluggy.ai
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
|
+
|
12
|
+
Do not edit the class manually.
|
13
|
+
""" # noqa: E501
|
14
|
+
|
15
|
+
|
16
|
+
from __future__ import annotations
|
17
|
+
import pprint
|
18
|
+
import re # noqa: F401
|
19
|
+
import json
|
20
|
+
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional, Union
|
23
|
+
from pluggy_sdk.models.automatic_pix_payment import AutomaticPixPayment
|
24
|
+
from typing import Optional, Set
|
25
|
+
from typing_extensions import Self
|
26
|
+
|
27
|
+
class PaymentRequestGetAutomaticPixSchedules200Response(BaseModel):
|
28
|
+
"""
|
29
|
+
PaymentRequestGetAutomaticPixSchedules200Response
|
30
|
+
""" # noqa: E501
|
31
|
+
page: Optional[Union[StrictFloat, StrictInt]] = None
|
32
|
+
total: Optional[Union[StrictFloat, StrictInt]] = None
|
33
|
+
total_pages: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="totalPages")
|
34
|
+
results: Optional[List[AutomaticPixPayment]] = Field(default=None, description="List of automatic PIX payments")
|
35
|
+
__properties: ClassVar[List[str]] = ["page", "total", "totalPages", "results"]
|
36
|
+
|
37
|
+
model_config = ConfigDict(
|
38
|
+
populate_by_name=True,
|
39
|
+
validate_assignment=True,
|
40
|
+
protected_namespaces=(),
|
41
|
+
)
|
42
|
+
|
43
|
+
|
44
|
+
def to_str(self) -> str:
|
45
|
+
"""Returns the string representation of the model using alias"""
|
46
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
47
|
+
|
48
|
+
def to_json(self) -> str:
|
49
|
+
"""Returns the JSON representation of the model using alias"""
|
50
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
51
|
+
return json.dumps(self.to_dict())
|
52
|
+
|
53
|
+
@classmethod
|
54
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
55
|
+
"""Create an instance of PaymentRequestGetAutomaticPixSchedules200Response from a JSON string"""
|
56
|
+
return cls.from_dict(json.loads(json_str))
|
57
|
+
|
58
|
+
def to_dict(self) -> Dict[str, Any]:
|
59
|
+
"""Return the dictionary representation of the model using alias.
|
60
|
+
|
61
|
+
This has the following differences from calling pydantic's
|
62
|
+
`self.model_dump(by_alias=True)`:
|
63
|
+
|
64
|
+
* `None` is only added to the output dict for nullable fields that
|
65
|
+
were set at model initialization. Other fields with value `None`
|
66
|
+
are ignored.
|
67
|
+
"""
|
68
|
+
excluded_fields: Set[str] = set([
|
69
|
+
])
|
70
|
+
|
71
|
+
_dict = self.model_dump(
|
72
|
+
by_alias=True,
|
73
|
+
exclude=excluded_fields,
|
74
|
+
exclude_none=True,
|
75
|
+
)
|
76
|
+
# override the default output from pydantic by calling `to_dict()` of each item in results (list)
|
77
|
+
_items = []
|
78
|
+
if self.results:
|
79
|
+
for _item_results in self.results:
|
80
|
+
if _item_results:
|
81
|
+
_items.append(_item_results.to_dict())
|
82
|
+
_dict['results'] = _items
|
83
|
+
return _dict
|
84
|
+
|
85
|
+
@classmethod
|
86
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
87
|
+
"""Create an instance of PaymentRequestGetAutomaticPixSchedules200Response from a dict"""
|
88
|
+
if obj is None:
|
89
|
+
return None
|
90
|
+
|
91
|
+
if not isinstance(obj, dict):
|
92
|
+
return cls.model_validate(obj)
|
93
|
+
|
94
|
+
_obj = cls.model_validate({
|
95
|
+
"page": obj.get("page"),
|
96
|
+
"total": obj.get("total"),
|
97
|
+
"totalPages": obj.get("totalPages"),
|
98
|
+
"results": [AutomaticPixPayment.from_dict(_item) for _item in obj["results"]] if obj.get("results") is not None else None
|
99
|
+
})
|
100
|
+
return _obj
|
101
|
+
|
102
|
+
|
@@ -0,0 +1,89 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
Pluggy API
|
5
|
+
|
6
|
+
Pluggy's main API to review data and execute connectors
|
7
|
+
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
9
|
+
Contact: hello@pluggy.ai
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
|
+
|
12
|
+
Do not edit the class manually.
|
13
|
+
""" # noqa: E501
|
14
|
+
|
15
|
+
|
16
|
+
from __future__ import annotations
|
17
|
+
import pprint
|
18
|
+
import re # noqa: F401
|
19
|
+
import json
|
20
|
+
|
21
|
+
from datetime import date
|
22
|
+
from pydantic import BaseModel, ConfigDict, Field
|
23
|
+
from typing import Any, ClassVar, Dict, List
|
24
|
+
from typing import Optional, Set
|
25
|
+
from typing_extensions import Self
|
26
|
+
|
27
|
+
class RetryAutomaticPixPaymentRequest(BaseModel):
|
28
|
+
"""
|
29
|
+
Request to retry an automatic PIX payment
|
30
|
+
""" # noqa: E501
|
31
|
+
var_date: date = Field(description="The date to retry the payment within a 7-day window. Date format must be YYYY-MM-DD (for example: 2025-06-16)", alias="date")
|
32
|
+
__properties: ClassVar[List[str]] = ["date"]
|
33
|
+
|
34
|
+
model_config = ConfigDict(
|
35
|
+
populate_by_name=True,
|
36
|
+
validate_assignment=True,
|
37
|
+
protected_namespaces=(),
|
38
|
+
)
|
39
|
+
|
40
|
+
|
41
|
+
def to_str(self) -> str:
|
42
|
+
"""Returns the string representation of the model using alias"""
|
43
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
44
|
+
|
45
|
+
def to_json(self) -> str:
|
46
|
+
"""Returns the JSON representation of the model using alias"""
|
47
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
48
|
+
return json.dumps(self.to_dict())
|
49
|
+
|
50
|
+
@classmethod
|
51
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
52
|
+
"""Create an instance of RetryAutomaticPixPaymentRequest from a JSON string"""
|
53
|
+
return cls.from_dict(json.loads(json_str))
|
54
|
+
|
55
|
+
def to_dict(self) -> Dict[str, Any]:
|
56
|
+
"""Return the dictionary representation of the model using alias.
|
57
|
+
|
58
|
+
This has the following differences from calling pydantic's
|
59
|
+
`self.model_dump(by_alias=True)`:
|
60
|
+
|
61
|
+
* `None` is only added to the output dict for nullable fields that
|
62
|
+
were set at model initialization. Other fields with value `None`
|
63
|
+
are ignored.
|
64
|
+
"""
|
65
|
+
excluded_fields: Set[str] = set([
|
66
|
+
])
|
67
|
+
|
68
|
+
_dict = self.model_dump(
|
69
|
+
by_alias=True,
|
70
|
+
exclude=excluded_fields,
|
71
|
+
exclude_none=True,
|
72
|
+
)
|
73
|
+
return _dict
|
74
|
+
|
75
|
+
@classmethod
|
76
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
77
|
+
"""Create an instance of RetryAutomaticPixPaymentRequest from a dict"""
|
78
|
+
if obj is None:
|
79
|
+
return None
|
80
|
+
|
81
|
+
if not isinstance(obj, dict):
|
82
|
+
return cls.model_validate(obj)
|
83
|
+
|
84
|
+
_obj = cls.model_validate({
|
85
|
+
"date": obj.get("date")
|
86
|
+
})
|
87
|
+
return _obj
|
88
|
+
|
89
|
+
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
Pluggy API
|
5
|
+
|
6
|
+
Pluggy's main API to review data and execute connectors
|
7
|
+
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
9
|
+
Contact: hello@pluggy.ai
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
11
|
+
|
12
|
+
Do not edit the class manually.
|
13
|
+
""" # noqa: E501
|
14
|
+
|
15
|
+
|
16
|
+
from __future__ import annotations
|
17
|
+
import pprint
|
18
|
+
import re # noqa: F401
|
19
|
+
import json
|
20
|
+
|
21
|
+
from datetime import date
|
22
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
|
23
|
+
from typing import Any, ClassVar, Dict, List, Optional, Union
|
24
|
+
from typing import Optional, Set
|
25
|
+
from typing_extensions import Self
|
26
|
+
|
27
|
+
class ScheduleAutomaticPixPaymentRequest(BaseModel):
|
28
|
+
"""
|
29
|
+
Request to schedule an Automatic PIX payment
|
30
|
+
""" # noqa: E501
|
31
|
+
amount: Union[StrictFloat, StrictInt] = Field(description="Transaction value")
|
32
|
+
description: Optional[StrictStr] = Field(default=None, description="Transaction description")
|
33
|
+
var_date: date = Field(description="The payment date, which must fall between D+2 and D+10. Date format must be YYYY-MM-DD (for example: 2025-06-16)", alias="date")
|
34
|
+
__properties: ClassVar[List[str]] = ["amount", "description", "date"]
|
35
|
+
|
36
|
+
model_config = ConfigDict(
|
37
|
+
populate_by_name=True,
|
38
|
+
validate_assignment=True,
|
39
|
+
protected_namespaces=(),
|
40
|
+
)
|
41
|
+
|
42
|
+
|
43
|
+
def to_str(self) -> str:
|
44
|
+
"""Returns the string representation of the model using alias"""
|
45
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
46
|
+
|
47
|
+
def to_json(self) -> str:
|
48
|
+
"""Returns the JSON representation of the model using alias"""
|
49
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
50
|
+
return json.dumps(self.to_dict())
|
51
|
+
|
52
|
+
@classmethod
|
53
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
54
|
+
"""Create an instance of ScheduleAutomaticPixPaymentRequest from a JSON string"""
|
55
|
+
return cls.from_dict(json.loads(json_str))
|
56
|
+
|
57
|
+
def to_dict(self) -> Dict[str, Any]:
|
58
|
+
"""Return the dictionary representation of the model using alias.
|
59
|
+
|
60
|
+
This has the following differences from calling pydantic's
|
61
|
+
`self.model_dump(by_alias=True)`:
|
62
|
+
|
63
|
+
* `None` is only added to the output dict for nullable fields that
|
64
|
+
were set at model initialization. Other fields with value `None`
|
65
|
+
are ignored.
|
66
|
+
"""
|
67
|
+
excluded_fields: Set[str] = set([
|
68
|
+
])
|
69
|
+
|
70
|
+
_dict = self.model_dump(
|
71
|
+
by_alias=True,
|
72
|
+
exclude=excluded_fields,
|
73
|
+
exclude_none=True,
|
74
|
+
)
|
75
|
+
return _dict
|
76
|
+
|
77
|
+
@classmethod
|
78
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
79
|
+
"""Create an instance of ScheduleAutomaticPixPaymentRequest from a dict"""
|
80
|
+
if obj is None:
|
81
|
+
return None
|
82
|
+
|
83
|
+
if not isinstance(obj, dict):
|
84
|
+
return cls.model_validate(obj)
|
85
|
+
|
86
|
+
_obj = cls.model_validate({
|
87
|
+
"amount": obj.get("amount"),
|
88
|
+
"description": obj.get("description"),
|
89
|
+
"date": obj.get("date")
|
90
|
+
})
|
91
|
+
return _obj
|
92
|
+
|
93
|
+
|
@@ -33,8 +33,9 @@ class SchedulePayment(BaseModel):
|
|
33
33
|
description: StrictStr = Field(description="Scheduled payment description")
|
34
34
|
status: StrictStr = Field(description="Scheduled payment status")
|
35
35
|
scheduled_date: date = Field(description="Date when the payment is scheduled", alias="scheduledDate")
|
36
|
+
end_to_end_id: Optional[StrictStr] = Field(default=None, description="Identifier for the payment, used to link the scheduled payment with the corresponding payment received", alias="endToEndId")
|
36
37
|
error_detail: Optional[SchedulePaymentErrorDetail] = Field(default=None, alias="errorDetail")
|
37
|
-
__properties: ClassVar[List[str]] = ["id", "description", "status", "scheduledDate", "errorDetail"]
|
38
|
+
__properties: ClassVar[List[str]] = ["id", "description", "status", "scheduledDate", "endToEndId", "errorDetail"]
|
38
39
|
|
39
40
|
@field_validator('status')
|
40
41
|
def status_validate_enum(cls, value):
|
@@ -101,6 +102,7 @@ class SchedulePayment(BaseModel):
|
|
101
102
|
"description": obj.get("description"),
|
102
103
|
"status": obj.get("status"),
|
103
104
|
"scheduledDate": obj.get("scheduledDate"),
|
105
|
+
"endToEndId": obj.get("endToEndId"),
|
104
106
|
"errorDetail": SchedulePaymentErrorDetail.from_dict(obj["errorDetail"]) if obj.get("errorDetail") is not None else None
|
105
107
|
})
|
106
108
|
return _obj
|
@@ -28,12 +28,12 @@ class UpdatePaymentRecipient(BaseModel):
|
|
28
28
|
"""
|
29
29
|
Request with information to update a payment recipient
|
30
30
|
""" # noqa: E501
|
31
|
+
pix_key: Optional[StrictStr] = Field(default=None, description="Pix key associated with the payment recipient.", alias="pixKey")
|
31
32
|
tax_number: Optional[StrictStr] = Field(default=None, description="Account owner tax number. Can be CPF or CNPJ (only numbers). Send only if the recipient doesn't have a pixKey.", alias="taxNumber")
|
32
33
|
name: Optional[StrictStr] = Field(default=None, description="Account owner name. Send only if the recipient doesn't have a pixKey.")
|
33
34
|
payment_institution_id: Optional[StrictStr] = Field(default=None, description="Primary identifier of the institution associated to the payment recipient. Send only if the recipient doesn't have a pixKey.", alias="paymentInstitutionId")
|
34
35
|
account: Optional[PaymentRecipientAccount] = Field(default=None, description="Recipient's bank account destination. Send only if the recipient doesn't have a pixKey.")
|
35
|
-
|
36
|
-
__properties: ClassVar[List[str]] = ["taxNumber", "name", "paymentInstitutionId", "account", "pixKey"]
|
36
|
+
__properties: ClassVar[List[str]] = ["pixKey", "taxNumber", "name", "paymentInstitutionId", "account"]
|
37
37
|
|
38
38
|
model_config = ConfigDict(
|
39
39
|
populate_by_name=True,
|
@@ -89,11 +89,11 @@ class UpdatePaymentRecipient(BaseModel):
|
|
89
89
|
return cls.model_validate(obj)
|
90
90
|
|
91
91
|
_obj = cls.model_validate({
|
92
|
+
"pixKey": obj.get("pixKey"),
|
92
93
|
"taxNumber": obj.get("taxNumber"),
|
93
94
|
"name": obj.get("name"),
|
94
95
|
"paymentInstitutionId": obj.get("paymentInstitutionId"),
|
95
|
-
"account": PaymentRecipientAccount.from_dict(obj["account"]) if obj.get("account") is not None else None
|
96
|
-
"pixKey": obj.get("pixKey")
|
96
|
+
"account": PaymentRecipientAccount.from_dict(obj["account"]) if obj.get("account") is not None else None
|
97
97
|
})
|
98
98
|
return _obj
|
99
99
|
|
@@ -1,26 +1,21 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
|
-
Name:
|
3
|
-
Version: 1.0.0.
|
2
|
+
Name: pluggy_sdk
|
3
|
+
Version: 1.0.0.post48
|
4
4
|
Summary: Pluggy API
|
5
5
|
Home-page: https://github.com/diraol/pluggy-python
|
6
6
|
Author: Pluggy
|
7
|
-
Author-email: hello@pluggy.ai
|
8
|
-
License: MIT
|
7
|
+
Author-email: Pluggy <hello@pluggy.ai>
|
8
|
+
License-Expression: MIT
|
9
|
+
Project-URL: Repository, https://github.com/GIT_USER_ID/GIT_REPO_ID
|
9
10
|
Keywords: OpenAPI,OpenAPI-Generator,Pluggy API
|
11
|
+
Requires-Python: >=3.9
|
10
12
|
Description-Content-Type: text/markdown
|
11
13
|
Requires-Dist: urllib3<3.0.0,>=2.1.0
|
12
14
|
Requires-Dist: python-dateutil>=2.8.2
|
13
15
|
Requires-Dist: pydantic>=2
|
14
16
|
Requires-Dist: typing-extensions>=4.7.1
|
15
17
|
Dynamic: author
|
16
|
-
Dynamic: author-email
|
17
|
-
Dynamic: description
|
18
|
-
Dynamic: description-content-type
|
19
18
|
Dynamic: home-page
|
20
|
-
Dynamic: keywords
|
21
|
-
Dynamic: license
|
22
|
-
Dynamic: requires-dist
|
23
|
-
Dynamic: summary
|
24
19
|
|
25
20
|
# pluggy-sdk
|
26
21
|
Pluggy's main API to review data and execute connectors
|
@@ -28,8 +23,8 @@ Pluggy's main API to review data and execute connectors
|
|
28
23
|
This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
29
24
|
|
30
25
|
- API version: 1.0.0
|
31
|
-
- Package version: 1.0.0.
|
32
|
-
- Generator version: 7.14.0
|
26
|
+
- Package version: 1.0.0.post48
|
27
|
+
- Generator version: 7.14.0
|
33
28
|
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
|
34
29
|
For more information, please visit [https://pluggy.ai](https://pluggy.ai)
|
35
30
|
|
@@ -125,6 +120,13 @@ Class | Method | HTTP request | Description
|
|
125
120
|
*AccountApi* | [**accounts_retrieve**](docs/AccountApi.md#accounts_retrieve) | **GET** /accounts/{id} | Retrieve
|
126
121
|
*AuthApi* | [**auth_create**](docs/AuthApi.md#auth_create) | **POST** /auth | Create API Key
|
127
122
|
*AuthApi* | [**connect_token_create**](docs/AuthApi.md#connect_token_create) | **POST** /connect_token | Create Connect Token
|
123
|
+
*AutomaticPIXApi* | [**cancel_automatic_pix_schedule**](docs/AutomaticPIXApi.md#cancel_automatic_pix_schedule) | **POST** /payments/requests/{id}/automatic-pix/schedules/{scheduleId}/cancel | Cancel an Automatic PIX schedule
|
124
|
+
*AutomaticPIXApi* | [**payment_request_cancel_automatic_pix_consent**](docs/AutomaticPIXApi.md#payment_request_cancel_automatic_pix_consent) | **POST** /payments/requests/{id}/automatic-pix/cancel | Cancel an automatic PIX consent
|
125
|
+
*AutomaticPIXApi* | [**payment_request_create_automatic_pix**](docs/AutomaticPIXApi.md#payment_request_create_automatic_pix) | **POST** /payments/requests/automatic-pix | Create Automatic PIX payment request
|
126
|
+
*AutomaticPIXApi* | [**payment_request_create_automatic_pix_schedule**](docs/AutomaticPIXApi.md#payment_request_create_automatic_pix_schedule) | **POST** /payments/requests/{id}/automatic-pix/schedule | Schedule Automatic PIX payment
|
127
|
+
*AutomaticPIXApi* | [**payment_request_get_automatic_pix_schedule**](docs/AutomaticPIXApi.md#payment_request_get_automatic_pix_schedule) | **GET** /payments/requests/{requestId}/automatic-pix/schedules/{paymentId} | Get an automatic PIX scheduled payment
|
128
|
+
*AutomaticPIXApi* | [**payment_request_get_automatic_pix_schedules**](docs/AutomaticPIXApi.md#payment_request_get_automatic_pix_schedules) | **GET** /payments/requests/{id}/automatic-pix/schedules | List Automatic PIX scheduled payments
|
129
|
+
*AutomaticPIXApi* | [**retry_automatic_pix_schedule**](docs/AutomaticPIXApi.md#retry_automatic_pix_schedule) | **POST** /payments/requests/{id}/automatic-pix/schedules/{scheduleId}/retry | Retry an Automatic PIX schedule
|
128
130
|
*BillApi* | [**bills_list**](docs/BillApi.md#bills_list) | **GET** /bills | List
|
129
131
|
*BillApi* | [**bills_retrieve**](docs/BillApi.md#bills_retrieve) | **GET** /bills/{id} | Retrieve
|
130
132
|
*BoletoManagementApi* | [**boleto_cancel**](docs/BoletoManagementApi.md#boleto_cancel) | **POST** /boletos/{id}/cancel | Cancel Boleto
|
@@ -170,14 +172,13 @@ Class | Method | HTTP request | Description
|
|
170
172
|
*PaymentRecipientApi* | [**payment_recipients_institution_list**](docs/PaymentRecipientApi.md#payment_recipients_institution_list) | **GET** /payments/recipients/institutions | List Institutions
|
171
173
|
*PaymentRecipientApi* | [**payment_recipients_list**](docs/PaymentRecipientApi.md#payment_recipients_list) | **GET** /payments/recipients | List
|
172
174
|
*PaymentRequestApi* | [**payment_request_create**](docs/PaymentRequestApi.md#payment_request_create) | **POST** /payments/requests | Create
|
173
|
-
*PaymentRequestApi* | [**payment_request_create_boleto**](docs/PaymentRequestApi.md#payment_request_create_boleto) | **POST** /payments/requests/boleto | Create boleto payment request
|
174
175
|
*PaymentRequestApi* | [**payment_request_create_pix_qr**](docs/PaymentRequestApi.md#payment_request_create_pix_qr) | **POST** /payments/requests/pix-qr | Create PIX QR payment request
|
175
176
|
*PaymentRequestApi* | [**payment_request_delete**](docs/PaymentRequestApi.md#payment_request_delete) | **DELETE** /payments/requests/{id} | Delete
|
176
177
|
*PaymentRequestApi* | [**payment_request_retrieve**](docs/PaymentRequestApi.md#payment_request_retrieve) | **GET** /payments/requests/{id} | Retrieve
|
177
178
|
*PaymentRequestApi* | [**payment_request_update**](docs/PaymentRequestApi.md#payment_request_update) | **PATCH** /payments/requests/{id} | Update
|
178
179
|
*PaymentRequestApi* | [**payment_requests_list**](docs/PaymentRequestApi.md#payment_requests_list) | **GET** /payments/requests | List
|
179
180
|
*PaymentScheduleApi* | [**payment_schedules_cancel**](docs/PaymentScheduleApi.md#payment_schedules_cancel) | **POST** /payments/requests/{id}/schedules/cancel | Cancel Payment Schedule Authorization
|
180
|
-
*PaymentScheduleApi* | [**payment_schedules_cancel_specific**](docs/PaymentScheduleApi.md#payment_schedules_cancel_specific) | **POST** /payments/requests/{id}/schedules/{scheduleId}/cancel | Cancel Payment Schedule
|
181
|
+
*PaymentScheduleApi* | [**payment_schedules_cancel_specific**](docs/PaymentScheduleApi.md#payment_schedules_cancel_specific) | **POST** /payments/requests/{id}/schedules/{scheduleId}/cancel | Cancel Payment Schedule
|
181
182
|
*PaymentScheduleApi* | [**payment_schedules_list**](docs/PaymentScheduleApi.md#payment_schedules_list) | **GET** /payments/requests/{id}/schedules | List Schedules
|
182
183
|
*SmartTransferApi* | [**smart_tranfers_preauthorizations_list**](docs/SmartTransferApi.md#smart_tranfers_preauthorizations_list) | **GET** /smart-transfers/preauthorizations | List preauthorizations
|
183
184
|
*SmartTransferApi* | [**smart_transfer_payment_create**](docs/SmartTransferApi.md#smart_transfer_payment_create) | **POST** /smart-transfers/payments | Create payment
|
@@ -198,9 +199,12 @@ Class | Method | HTTP request | Description
|
|
198
199
|
|
199
200
|
- [Account](docs/Account.md)
|
200
201
|
- [AccountsList200Response](docs/AccountsList200Response.md)
|
202
|
+
- [AdditionalCard](docs/AdditionalCard.md)
|
201
203
|
- [Address](docs/Address.md)
|
202
204
|
- [AuthRequest](docs/AuthRequest.md)
|
203
205
|
- [AuthResponse](docs/AuthResponse.md)
|
206
|
+
- [AutomaticPixFirstPayment](docs/AutomaticPixFirstPayment.md)
|
207
|
+
- [AutomaticPixPayment](docs/AutomaticPixPayment.md)
|
204
208
|
- [BankData](docs/BankData.md)
|
205
209
|
- [Bill](docs/Bill.md)
|
206
210
|
- [BillFinanceCharge](docs/BillFinanceCharge.md)
|
@@ -222,6 +226,7 @@ Class | Method | HTTP request | Description
|
|
222
226
|
- [ConnectorListResponse](docs/ConnectorListResponse.md)
|
223
227
|
- [ConnectorUserAction](docs/ConnectorUserAction.md)
|
224
228
|
- [Consent](docs/Consent.md)
|
229
|
+
- [CreateAutomaticPixPaymentRequest](docs/CreateAutomaticPixPaymentRequest.md)
|
225
230
|
- [CreateBoleto](docs/CreateBoleto.md)
|
226
231
|
- [CreateBoletoBoleto](docs/CreateBoletoBoleto.md)
|
227
232
|
- [CreateBoletoBoletoFine](docs/CreateBoletoBoletoFine.md)
|
@@ -229,7 +234,6 @@ Class | Method | HTTP request | Description
|
|
229
234
|
- [CreateBoletoBoletoPayer](docs/CreateBoletoBoletoPayer.md)
|
230
235
|
- [CreateBoletoConnection](docs/CreateBoletoConnection.md)
|
231
236
|
- [CreateBoletoConnectionFromItem](docs/CreateBoletoConnectionFromItem.md)
|
232
|
-
- [CreateBoletoPaymentRequest](docs/CreateBoletoPaymentRequest.md)
|
233
237
|
- [CreateClientCategoryRule](docs/CreateClientCategoryRule.md)
|
234
238
|
- [CreateItem](docs/CreateItem.md)
|
235
239
|
- [CreateItemParameters](docs/CreateItemParameters.md)
|
@@ -247,6 +251,7 @@ Class | Method | HTTP request | Description
|
|
247
251
|
- [CreditCardMetadata](docs/CreditCardMetadata.md)
|
248
252
|
- [CreditData](docs/CreditData.md)
|
249
253
|
- [DAILY](docs/DAILY.md)
|
254
|
+
- [DisaggregatedCreditLimit](docs/DisaggregatedCreditLimit.md)
|
250
255
|
- [Document](docs/Document.md)
|
251
256
|
- [Email](docs/Email.md)
|
252
257
|
- [GlobalErrorResponse](docs/GlobalErrorResponse.md)
|
@@ -302,6 +307,7 @@ Class | Method | HTTP request | Description
|
|
302
307
|
- [PaymentDataParticipant](docs/PaymentDataParticipant.md)
|
303
308
|
- [PaymentInstitution](docs/PaymentInstitution.md)
|
304
309
|
- [PaymentIntent](docs/PaymentIntent.md)
|
310
|
+
- [PaymentIntentAutomaticPix](docs/PaymentIntentAutomaticPix.md)
|
305
311
|
- [PaymentIntentErrorDetail](docs/PaymentIntentErrorDetail.md)
|
306
312
|
- [PaymentIntentParameter](docs/PaymentIntentParameter.md)
|
307
313
|
- [PaymentIntentsList200Response](docs/PaymentIntentsList200Response.md)
|
@@ -312,12 +318,15 @@ Class | Method | HTTP request | Description
|
|
312
318
|
- [PaymentRequest](docs/PaymentRequest.md)
|
313
319
|
- [PaymentRequestCallbackUrls](docs/PaymentRequestCallbackUrls.md)
|
314
320
|
- [PaymentRequestErrorDetail](docs/PaymentRequestErrorDetail.md)
|
321
|
+
- [PaymentRequestGetAutomaticPixSchedules200Response](docs/PaymentRequestGetAutomaticPixSchedules200Response.md)
|
315
322
|
- [PaymentRequestSchedule](docs/PaymentRequestSchedule.md)
|
316
323
|
- [PaymentRequestsList200Response](docs/PaymentRequestsList200Response.md)
|
317
324
|
- [PaymentSchedulesList200Response](docs/PaymentSchedulesList200Response.md)
|
318
325
|
- [PhoneNumber](docs/PhoneNumber.md)
|
319
326
|
- [PixData](docs/PixData.md)
|
327
|
+
- [RetryAutomaticPixPaymentRequest](docs/RetryAutomaticPixPaymentRequest.md)
|
320
328
|
- [SINGLE](docs/SINGLE.md)
|
329
|
+
- [ScheduleAutomaticPixPaymentRequest](docs/ScheduleAutomaticPixPaymentRequest.md)
|
321
330
|
- [SchedulePayment](docs/SchedulePayment.md)
|
322
331
|
- [SchedulePaymentErrorDetail](docs/SchedulePaymentErrorDetail.md)
|
323
332
|
- [SmartTranfersPreauthorizationsList200Response](docs/SmartTranfersPreauthorizationsList200Response.md)
|