Invoices API¶
API для работы со счетами на оплату.
- class aioyookassa.core.api.invoices.InvoicesAPI(client: BaseAPIClient)[source]¶
Bases:
BaseAPI[CreateInvoiceParams,Invoice]YooKassa invoices API client.
Provides methods for creating and retrieving invoice information. Note: YooKassa API does not support listing all invoices.
Initialize base API client.
- Parameters:
client – Base API client instance.
- async create_invoice(params: CreateInvoiceParams) Invoice[source]¶
Create a new invoice in YooKassa.
- Parameters:
params (CreateInvoiceParams) – Invoice creation parameters (CreateInvoiceParams).
- Returns:
Invoice object.
- Return type:
Invoice
- Seealso:
- Example:
>>> from aioyookassa.types.params import CreateInvoiceParams >>> from aioyookassa.types.invoice import InvoicePaymentData, InvoiceCartItem >>> params = CreateInvoiceParams( ... payment_data=InvoicePaymentData(...), ... cart=[InvoiceCartItem(...)], ... expires_at="2024-12-31T23:59:59Z" ... ) >>> invoice = await client.invoices.create_invoice(params)
Методы¶
create_invoice¶
Создание нового счета.
from datetime import datetime, timedelta
from aioyookassa.types.params import CreateInvoiceParams
from aioyookassa.types.payment import PaymentAmount
from aioyookassa.types.enum import Currency
from aioyookassa.types.invoice import InvoicePaymentData, InvoiceCartItem
params = CreateInvoiceParams(
payment_data=InvoicePaymentData(
type="bank_card",
account_id="123456789"
),
cart=[
InvoiceCartItem(
description="Услуга",
quantity=1,
amount=PaymentAmount(value=1000.00, currency=Currency.RUB),
vat_code=1
)
],
expires_at=datetime.now() + timedelta(days=7),
description="Счет на оплату"
)
invoice = await client.invoices.create_invoice(params)
get_invoice¶
Получение информации о конкретном счете.
invoice = await client.invoices.get_invoice("invoice_id")