lago-python-client 1.22.0__tar.gz → 1.26.0__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.
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/PKG-INFO +3 -2
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/client.py +5 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/__init__.py +4 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/customer.py +2 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/fee.py +1 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/invoice.py +1 -0
- lago_python_client-1.26.0/lago_python_client/models/payment_receipt.py +15 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/subscription.py +2 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/wallet.py +3 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/wallet_transaction.py +1 -0
- lago_python_client-1.26.0/lago_python_client/payment_receipts/clients.py +15 -0
- lago_python_client-1.26.0/lago_python_client/version.py +1 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/wallets/clients.py +12 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/PKG-INFO +3 -2
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/SOURCES.txt +8 -0
- lago_python_client-1.26.0/tests/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_customer_client.py +2 -0
- lago_python_client-1.26.0/tests/test_payment_receipt_client.py +65 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_wallet_transaction_client.py +25 -0
- lago_python_client-1.22.0/lago_python_client/version.py +0 -1
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/LICENSE +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/README.md +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/add_ons/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/add_ons/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/base_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/base_model.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/billable_metrics/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/billable_metrics/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/coupons/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/coupons/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/credit_notes/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/credit_notes/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/customers/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/customers/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/events/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/events/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/exceptions.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/fees/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/fees/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/functools_ext.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/gross_revenues/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/gross_revenues/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoice_collections/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoice_collections/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoiced_usages/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoiced_usages/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoices/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoices/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/mixins.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/add_on.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/applied_coupon.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/billable_metric.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/billing_period.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/charge.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/coupon.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/credit.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/credit_note.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/customer_usage.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/error_detail.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/event.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/gross_revenue.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/invoice_collection.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/invoice_item.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/invoiced_usage.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/lifetime_usage.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/minimum_commitment.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/mrr.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/organization.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/overdue_balance.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/payment.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/payment_request.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/plan.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/tax.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/usage_threshold.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/webhook_endpoint.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/mrrs/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/mrrs/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/organizations/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/organizations/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/overdue_balances/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/overdue_balances/clients.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/payment_requests → lago_python_client-1.26.0/lago_python_client/payment_receipts}/__init__.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/payments → lago_python_client-1.26.0/lago_python_client/payment_requests}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/payment_requests/clients.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/plans → lago_python_client-1.26.0/lago_python_client/payments}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/payments/clients.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/services → lago_python_client-1.26.0/lago_python_client/plans}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/plans/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/py.typed +0 -0
- {lago_python_client-1.22.0/lago_python_client/subscriptions → lago_python_client-1.26.0/lago_python_client/services}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/services/json.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/services/request.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/services/response.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/taxes → lago_python_client-1.26.0/lago_python_client/subscriptions}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/subscriptions/clients.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/wallets → lago_python_client-1.26.0/lago_python_client/taxes}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/taxes/clients.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/webhook_endpoints → lago_python_client-1.26.0/lago_python_client/wallets}/__init__.py +0 -0
- {lago_python_client-1.22.0/lago_python_client/webhooks → lago_python_client-1.26.0/lago_python_client/webhook_endpoints}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/webhook_endpoints/clients.py +0 -0
- {lago_python_client-1.22.0/tests → lago_python_client-1.26.0/lago_python_client/webhooks}/__init__.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/webhooks/clients.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/dependency_links.txt +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/requires.txt +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/top_level.txt +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/pyproject.toml +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/setup.cfg +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_add_on_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_applied_coupon_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_billable_metric_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_coupon_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_credit_note_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_event_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_fee_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_functools_ext.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_gross_revenue_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_invoice_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_invoice_collection_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_invoiced_usage_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_json_services.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_mrr_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_organization_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_overdue_balance_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_payment_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_payment_request_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_plan_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_request_services.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_response_services.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_subscription_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_tax_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_wallet_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_webhook_client.py +0 -0
- {lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_webhook_endpoint_client.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: lago-python-client
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.26.0
|
|
4
4
|
Summary: Lago Python API Client
|
|
5
5
|
Home-page: https://github.com/getlago/lago-python-client
|
|
6
6
|
Author: Lovro Colic
|
|
@@ -29,6 +29,7 @@ Provides-Extra: test
|
|
|
29
29
|
Requires-Dist: mypy==0.971; extra == "test"
|
|
30
30
|
Requires-Dist: pytest; extra == "test"
|
|
31
31
|
Requires-Dist: pytest_httpx; extra == "test"
|
|
32
|
+
Dynamic: license-file
|
|
32
33
|
|
|
33
34
|
# Lago Python Client
|
|
34
35
|
|
|
@@ -14,6 +14,7 @@ from .invoiced_usages.clients import InvoicedUsageClient
|
|
|
14
14
|
from .mrrs.clients import MrrClient
|
|
15
15
|
from .organizations.clients import OrganizationClient
|
|
16
16
|
from .overdue_balances.clients import OverdueBalanceClient
|
|
17
|
+
from .payment_receipts.clients import PaymentReceiptClient
|
|
17
18
|
from .payment_requests.clients import PaymentRequestClient
|
|
18
19
|
from .payments.clients import PaymentClient
|
|
19
20
|
from .invoice_collections.clients import InvoiceCollectionClient
|
|
@@ -115,6 +116,10 @@ class Client:
|
|
|
115
116
|
def overdue_balances(self) -> OverdueBalanceClient:
|
|
116
117
|
return OverdueBalanceClient(self.base_api_url, self.api_key)
|
|
117
118
|
|
|
119
|
+
@callable_cached_property
|
|
120
|
+
def payment_receipts(self) -> PaymentReceiptClient:
|
|
121
|
+
return PaymentReceiptClient(self.base_api_url, self.api_key)
|
|
122
|
+
|
|
118
123
|
@callable_cached_property
|
|
119
124
|
def payment_requests(self) -> PaymentRequestClient:
|
|
120
125
|
return PaymentRequestClient(self.base_api_url, self.api_key)
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/__init__.py
RENAMED
|
@@ -90,6 +90,10 @@ from .usage_threshold import (
|
|
|
90
90
|
UsageThresholds as UsageThresholds,
|
|
91
91
|
UsageThresholdsResponse as UsageThresholdsResponse,
|
|
92
92
|
)
|
|
93
|
+
from .payment_receipt import (
|
|
94
|
+
PaymentReceiptResponse as PaymentReceiptResponse,
|
|
95
|
+
PaymentReceiptsResponse as PaymentReceiptsResponse,
|
|
96
|
+
)
|
|
93
97
|
from .payment_request import PaymentRequest as PaymentRequest
|
|
94
98
|
from .payment import Payment as Payment
|
|
95
99
|
from .lifetime_usage import LifetimeUsageResponse as LifetimeUsageResponse
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/customer.py
RENAMED
|
@@ -120,6 +120,7 @@ class Customer(BaseModel):
|
|
|
120
120
|
tax_codes: Optional[List[str]]
|
|
121
121
|
skip_invoice_custom_sections: Optional[bool]
|
|
122
122
|
invoice_custom_section_codes: Optional[List[str]]
|
|
123
|
+
billing_entity_code: Optional[str]
|
|
123
124
|
|
|
124
125
|
|
|
125
126
|
class CustomerResponse(BaseResponseModel):
|
|
@@ -156,3 +157,4 @@ class CustomerResponse(BaseResponseModel):
|
|
|
156
157
|
taxes: Optional[TaxesResponse]
|
|
157
158
|
skip_invoice_custom_sections: Optional[bool]
|
|
158
159
|
applicable_invoice_custom_sections: Optional[InvoiceCustomSectionsResponseList]
|
|
160
|
+
billing_entity_code: Optional[str]
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/invoice.py
RENAMED
|
@@ -139,3 +139,4 @@ class InvoiceResponse(BaseResponseModel):
|
|
|
139
139
|
applied_invoice_custom_sections: Optional[InvoiceAppliedInvoiceCustomSections]
|
|
140
140
|
applied_usage_thresholds: Optional[InvoiceAppliedUsageThresholds]
|
|
141
141
|
error_details: Optional[ErrorDetailsResponse]
|
|
142
|
+
billing_entity_code: Optional[str]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from typing import List
|
|
2
|
+
|
|
3
|
+
from ..base_model import BaseResponseModel
|
|
4
|
+
from .payment import PaymentResponse
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class PaymentReceiptResponse(BaseResponseModel):
|
|
8
|
+
lago_id: str
|
|
9
|
+
number: str
|
|
10
|
+
payment: PaymentResponse
|
|
11
|
+
created_at: str
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class PaymentReceiptsResponse(BaseResponseModel):
|
|
15
|
+
__root__: List[PaymentReceiptResponse]
|
|
@@ -14,6 +14,7 @@ class RecurringTransactionRule(BaseModel):
|
|
|
14
14
|
paid_credits: Optional[str]
|
|
15
15
|
granted_credits: Optional[str]
|
|
16
16
|
started_at: Optional[str]
|
|
17
|
+
expiration_at: Optional[str]
|
|
17
18
|
target_ongoing_balance: Optional[str]
|
|
18
19
|
transaction_metadata: Optional[List[Dict[str, str]]]
|
|
19
20
|
|
|
@@ -27,6 +28,8 @@ class RecurringTransactionRuleResponse(BaseModel):
|
|
|
27
28
|
paid_credits: Optional[str]
|
|
28
29
|
granted_credits: Optional[str]
|
|
29
30
|
started_at: Optional[str]
|
|
31
|
+
expiration_at: Optional[str]
|
|
32
|
+
status: Optional[str]
|
|
30
33
|
target_ongoing_balance: Optional[str]
|
|
31
34
|
created_at: Optional[str]
|
|
32
35
|
transaction_metadata: Optional[List[Dict[str, str]]]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from typing import ClassVar, Type
|
|
2
|
+
|
|
3
|
+
from ..base_client import BaseClient
|
|
4
|
+
from ..mixins import FindAllCommandMixin, FindCommandMixin
|
|
5
|
+
from ..models.payment_receipt import PaymentReceiptResponse
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class PaymentReceiptClient(
|
|
9
|
+
FindAllCommandMixin[PaymentReceiptResponse],
|
|
10
|
+
FindCommandMixin[PaymentReceiptResponse],
|
|
11
|
+
BaseClient,
|
|
12
|
+
):
|
|
13
|
+
API_RESOURCE: ClassVar[str] = "payment_receipts"
|
|
14
|
+
RESPONSE_MODEL: ClassVar[Type[PaymentReceiptResponse]] = PaymentReceiptResponse
|
|
15
|
+
ROOT_NAME: ClassVar[str] = "payment_receipt"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
LAGO_VERSION = "1.26.0"
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/wallets/clients.py
RENAMED
|
@@ -77,3 +77,15 @@ class WalletTransactionClient(BaseClient):
|
|
|
77
77
|
response_model=self.RESPONSE_MODEL,
|
|
78
78
|
data=get_response_data(response=api_response),
|
|
79
79
|
)
|
|
80
|
+
|
|
81
|
+
def payment_url(self, resource_id: str) -> str:
|
|
82
|
+
api_response: Response = send_post_request(
|
|
83
|
+
url=make_url(
|
|
84
|
+
origin=self.base_url,
|
|
85
|
+
path_parts=(self.API_RESOURCE, resource_id, "payment_url"),
|
|
86
|
+
),
|
|
87
|
+
headers=make_headers(api_key=self.api_key),
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
response_data = get_response_data(response=api_response, key="wallet_transaction_payment_details")
|
|
91
|
+
return response_data.get("payment_url", "") if isinstance(response_data, Mapping) else ""
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: lago-python-client
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.26.0
|
|
4
4
|
Summary: Lago Python API Client
|
|
5
5
|
Home-page: https://github.com/getlago/lago-python-client
|
|
6
6
|
Author: Lovro Colic
|
|
@@ -29,6 +29,7 @@ Provides-Extra: test
|
|
|
29
29
|
Requires-Dist: mypy==0.971; extra == "test"
|
|
30
30
|
Requires-Dist: pytest; extra == "test"
|
|
31
31
|
Requires-Dist: pytest_httpx; extra == "test"
|
|
32
|
+
Dynamic: license-file
|
|
32
33
|
|
|
33
34
|
# Lago Python Client
|
|
34
35
|
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/SOURCES.txt
RENAMED
|
@@ -58,6 +58,7 @@ setup.cfg
|
|
|
58
58
|
./lago_python_client/models/organization.py
|
|
59
59
|
./lago_python_client/models/overdue_balance.py
|
|
60
60
|
./lago_python_client/models/payment.py
|
|
61
|
+
./lago_python_client/models/payment_receipt.py
|
|
61
62
|
./lago_python_client/models/payment_request.py
|
|
62
63
|
./lago_python_client/models/plan.py
|
|
63
64
|
./lago_python_client/models/subscription.py
|
|
@@ -72,6 +73,8 @@ setup.cfg
|
|
|
72
73
|
./lago_python_client/organizations/clients.py
|
|
73
74
|
./lago_python_client/overdue_balances/__init__.py
|
|
74
75
|
./lago_python_client/overdue_balances/clients.py
|
|
76
|
+
./lago_python_client/payment_receipts/__init__.py
|
|
77
|
+
./lago_python_client/payment_receipts/clients.py
|
|
75
78
|
./lago_python_client/payment_requests/__init__.py
|
|
76
79
|
./lago_python_client/payment_requests/clients.py
|
|
77
80
|
./lago_python_client/payments/__init__.py
|
|
@@ -112,6 +115,7 @@ setup.cfg
|
|
|
112
115
|
./tests/test_organization_client.py
|
|
113
116
|
./tests/test_overdue_balance_client.py
|
|
114
117
|
./tests/test_payment_client.py
|
|
118
|
+
./tests/test_payment_receipt_client.py
|
|
115
119
|
./tests/test_payment_request_client.py
|
|
116
120
|
./tests/test_plan_client.py
|
|
117
121
|
./tests/test_request_services.py
|
|
@@ -183,6 +187,7 @@ lago_python_client/models/mrr.py
|
|
|
183
187
|
lago_python_client/models/organization.py
|
|
184
188
|
lago_python_client/models/overdue_balance.py
|
|
185
189
|
lago_python_client/models/payment.py
|
|
190
|
+
lago_python_client/models/payment_receipt.py
|
|
186
191
|
lago_python_client/models/payment_request.py
|
|
187
192
|
lago_python_client/models/plan.py
|
|
188
193
|
lago_python_client/models/subscription.py
|
|
@@ -197,6 +202,8 @@ lago_python_client/organizations/__init__.py
|
|
|
197
202
|
lago_python_client/organizations/clients.py
|
|
198
203
|
lago_python_client/overdue_balances/__init__.py
|
|
199
204
|
lago_python_client/overdue_balances/clients.py
|
|
205
|
+
lago_python_client/payment_receipts/__init__.py
|
|
206
|
+
lago_python_client/payment_receipts/clients.py
|
|
200
207
|
lago_python_client/payment_requests/__init__.py
|
|
201
208
|
lago_python_client/payment_requests/clients.py
|
|
202
209
|
lago_python_client/payments/__init__.py
|
|
@@ -237,6 +244,7 @@ tests/test_mrr_client.py
|
|
|
237
244
|
tests/test_organization_client.py
|
|
238
245
|
tests/test_overdue_balance_client.py
|
|
239
246
|
tests/test_payment_client.py
|
|
247
|
+
tests/test_payment_receipt_client.py
|
|
240
248
|
tests/test_payment_request_client.py
|
|
241
249
|
tests/test_plan_client.py
|
|
242
250
|
tests/test_request_services.py
|
|
File without changes
|
|
@@ -30,6 +30,7 @@ def create_customer():
|
|
|
30
30
|
|
|
31
31
|
return Customer(
|
|
32
32
|
external_id="5eb02857-a71e-4ea2-bcf9-57d3a41bc6ba",
|
|
33
|
+
billing_entity_code="test-company",
|
|
33
34
|
name="Gavin Belson",
|
|
34
35
|
currency="EUR",
|
|
35
36
|
tax_identification_number="EU123456789",
|
|
@@ -74,6 +75,7 @@ def test_valid_create_customers_request(httpx_mock: HTTPXMock):
|
|
|
74
75
|
response = client.customers.create(create_customer())
|
|
75
76
|
|
|
76
77
|
assert response.external_id == "5eb02857-a71e-4ea2-bcf9-57d3a41bc6ba"
|
|
78
|
+
assert response.billing_entity_code == "test-company"
|
|
77
79
|
assert response.name == "Gavin Belson"
|
|
78
80
|
assert response.email == "dinesh@piedpiper.test"
|
|
79
81
|
assert response.currency == "EUR"
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import os
|
|
2
|
+
|
|
3
|
+
import pytest
|
|
4
|
+
from pytest_httpx import HTTPXMock
|
|
5
|
+
|
|
6
|
+
from lago_python_client.client import Client
|
|
7
|
+
from lago_python_client.exceptions import LagoApiError
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def mock_response():
|
|
11
|
+
this_dir = os.path.dirname(os.path.abspath(__file__))
|
|
12
|
+
data_path = os.path.join(this_dir, "fixtures/payment_receipt.json")
|
|
13
|
+
|
|
14
|
+
with open(data_path, "rb") as payment_receipt_response:
|
|
15
|
+
return payment_receipt_response.read()
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def mock_collection_response():
|
|
19
|
+
current_dir = os.path.dirname(os.path.abspath(__file__))
|
|
20
|
+
data_path = os.path.join(current_dir, "fixtures/payment_receipt_index.json")
|
|
21
|
+
|
|
22
|
+
with open(data_path, "rb") as payment_receipts_response:
|
|
23
|
+
return payment_receipts_response.read()
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def test_valid_find_all_payment_receipts_request(httpx_mock: HTTPXMock):
|
|
27
|
+
client = Client(api_key="886fe239-927d-4072-ab72-6dd345e8dd0d")
|
|
28
|
+
|
|
29
|
+
httpx_mock.add_response(
|
|
30
|
+
method="GET",
|
|
31
|
+
url="https://api.getlago.com/api/v1/payment_receipts",
|
|
32
|
+
content=mock_collection_response(),
|
|
33
|
+
)
|
|
34
|
+
response = client.payment_receipts.find_all()
|
|
35
|
+
|
|
36
|
+
assert response["payment_receipts"][0].lago_id == "89b6b61e-4dbc-4307-ac96-4abcfa9e3e2d"
|
|
37
|
+
assert response["meta"]["current_page"] == 1
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def test_valid_find_all_payment_receipts_request_with_options(httpx_mock: HTTPXMock):
|
|
41
|
+
client = Client(api_key="886fe239-927d-4072-ab72-6dd345e8dd0d")
|
|
42
|
+
|
|
43
|
+
httpx_mock.add_response(
|
|
44
|
+
method="GET",
|
|
45
|
+
url="https://api.getlago.com/api/v1/payment_receipts?per_page=2&page=1",
|
|
46
|
+
content=mock_collection_response(),
|
|
47
|
+
)
|
|
48
|
+
response = client.payment_receipts.find_all({"per_page": 2, "page": 1})
|
|
49
|
+
|
|
50
|
+
assert response["payment_receipts"][0].lago_id == "89b6b61e-4dbc-4307-ac96-4abcfa9e3e2d"
|
|
51
|
+
assert response["meta"]["current_page"] == 1
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
def test_invalid_find_all_payment_receipts_request(httpx_mock: HTTPXMock):
|
|
55
|
+
client = Client(api_key="invalid")
|
|
56
|
+
|
|
57
|
+
httpx_mock.add_response(
|
|
58
|
+
method="GET",
|
|
59
|
+
url="https://api.getlago.com/api/v1/payment_receipts",
|
|
60
|
+
status_code=404,
|
|
61
|
+
content=b"",
|
|
62
|
+
)
|
|
63
|
+
|
|
64
|
+
with pytest.raises(LagoApiError):
|
|
65
|
+
client.payment_receipts.find_all()
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_wallet_transaction_client.py
RENAMED
|
@@ -28,6 +28,14 @@ def mock_collection_response():
|
|
|
28
28
|
return wallet_transaction_index_response.read()
|
|
29
29
|
|
|
30
30
|
|
|
31
|
+
def mock_payment_url_response():
|
|
32
|
+
this_dir = os.path.dirname(os.path.abspath(__file__))
|
|
33
|
+
data_path = os.path.join(this_dir, "fixtures/wallet_transaction_payment_url.json")
|
|
34
|
+
|
|
35
|
+
with open(data_path, "rb") as payment_url_response:
|
|
36
|
+
return payment_url_response.read()
|
|
37
|
+
|
|
38
|
+
|
|
31
39
|
def test_valid_create_wallet_transaction_request(httpx_mock: HTTPXMock):
|
|
32
40
|
client = Client(api_key="886fe239-927d-4072-ab72-6dd345e8dd0d")
|
|
33
41
|
|
|
@@ -40,6 +48,10 @@ def test_valid_create_wallet_transaction_request(httpx_mock: HTTPXMock):
|
|
|
40
48
|
|
|
41
49
|
assert response["wallet_transactions"][0].lago_id == "b7ab2926-1de8-4428-9bcd-779314ac1111"
|
|
42
50
|
assert response["wallet_transactions"][1].lago_id == "b7ab2926-1de8-4428-9bcd-779314ac1222"
|
|
51
|
+
assert response["wallet_transactions"][2].lago_id == "b7ab2926-1de8-4428-9bcd-779314ac1333"
|
|
52
|
+
assert response["wallet_transactions"][0].status == "settled"
|
|
53
|
+
assert response["wallet_transactions"][2].status == "failed"
|
|
54
|
+
assert response["wallet_transactions"][2].failed_at == "2022-04-29T08:59:51Z"
|
|
43
55
|
|
|
44
56
|
|
|
45
57
|
def test_invalid_create_wallet_transaction_request(httpx_mock: HTTPXMock):
|
|
@@ -68,3 +80,16 @@ def test_valid_find_all_wallet_transactions_request(httpx_mock: HTTPXMock):
|
|
|
68
80
|
|
|
69
81
|
assert response["wallet_transactions"][0].lago_id == "b7ab2926-1de8-4428-9bcd-779314ac1111"
|
|
70
82
|
assert response["meta"]["current_page"] == 1
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def test_valid_payment_url_request(httpx_mock: HTTPXMock):
|
|
86
|
+
client = Client(api_key="886fe239-927d-4072-ab72-6dd345e8dd0d")
|
|
87
|
+
|
|
88
|
+
httpx_mock.add_response(
|
|
89
|
+
method="POST",
|
|
90
|
+
url="https://api.getlago.com/api/v1/wallet_transactions/5eb02857-a71e-4ea2-bcf9-57d3a41bc6ba/payment_url",
|
|
91
|
+
content=mock_payment_url_response(),
|
|
92
|
+
)
|
|
93
|
+
response = client.wallet_transactions.payment_url("5eb02857-a71e-4ea2-bcf9-57d3a41bc6ba")
|
|
94
|
+
|
|
95
|
+
assert response == "https://checkout.stripe.com/c/pay/cs_test_a1cuqFkXvH"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
LAGO_VERSION = "1.22.0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/add_ons/__init__.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/add_ons/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/coupons/__init__.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/coupons/clients.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/credit_notes/__init__.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/credit_notes/clients.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/customers/__init__.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/customers/clients.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/events/__init__.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/events/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/gross_revenues/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoices/__init__.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/invoices/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/applied_coupon.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/billable_metric.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/billing_period.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/credit_note.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/customer_usage.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/error_detail.py
RENAMED
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/gross_revenue.py
RENAMED
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/invoice_item.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/invoiced_usage.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/lifetime_usage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/organization.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/overdue_balance.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/payment.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/payment_request.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/models/usage_threshold.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/organizations/__init__.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/organizations/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/payments/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/services/request.py
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/services/response.py
RENAMED
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/subscriptions/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client/webhooks/clients.py
RENAMED
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/requires.txt
RENAMED
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/lago_python_client.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_billable_metric_client.py
RENAMED
|
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
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_invoice_collection_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_overdue_balance_client.py
RENAMED
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_payment_request_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lago_python_client-1.22.0 → lago_python_client-1.26.0}/tests/test_webhook_endpoint_client.py
RENAMED
|
File without changes
|