Receipts API¶
API для работы с фискальными чеками.
- class aioyookassa.core.api.receipts.ReceiptsAPI(client: BaseAPIClient)[source]¶
Bases:
BaseAPI[CreateReceiptParams,FiscalReceipt]YooKassa receipts API client.
Provides methods for creating, retrieving, and listing receipt registrations.
Initialize base API client.
- Parameters:
client – Base API client instance.
- async create_receipt(params: CreateReceiptParams) FiscalReceipt[source]¶
Create a new receipt registration.
- Parameters:
params (CreateReceiptParams) – Receipt creation parameters (CreateReceiptParams).
- Returns:
FiscalReceipt object.
- Return type:
FiscalReceipt
- Seealso:
- Example:
>>> from aioyookassa.types.params import CreateReceiptParams >>> from aioyookassa.types.enum import ReceiptType >>> params = CreateReceiptParams( ... type=ReceiptType.PAYMENT, ... customer=Customer(...), ... items=[...], ... settlements=[...] ... ) >>> receipt = await client.receipts.create_receipt(params)
- async get_receipts(params: GetReceiptsParams | None = None, **kwargs: Any) FiscalReceiptsList[source]¶
Retrieve a list of receipt registrations with optional filtering.
- Parameters:
params (Optional[GetReceiptsParams]) – Filter parameters (GetReceiptsParams).
kwargs – Additional parameters (merged with params).
- Returns:
FiscalReceiptsList object.
- Return type:
FiscalReceiptsList
- Seealso:
- Example:
>>> from aioyookassa.types.params import GetReceiptsParams >>> from aioyookassa.types.enum import ReceiptStatus >>> params = GetReceiptsParams(status=ReceiptStatus.SUCCEEDED, limit=10) >>> receipts = await client.receipts.get_receipts(params)
Методы¶
create_receipt¶
Создание нового чека.
from aioyookassa.types.params import CreateReceiptParams
from aioyookassa.types.enum import ReceiptType, Currency
from aioyookassa.types.payment import PaymentItem, PaymentAmount, PaymentSubject, PaymentMode
from aioyookassa.types.payment import Settlement
params = CreateReceiptParams(
type=ReceiptType.PAYMENT,
payment_id="payment_id",
items=[
PaymentItem(
description="Товар",
quantity=1,
amount=PaymentAmount(value=100.00, currency=Currency.RUB),
vat_code=1,
payment_subject=PaymentSubject.COMMODITY,
payment_mode=PaymentMode.FULL_PAYMENT
)
],
settlements=[
Settlement(
type="prepayment",
amount=PaymentAmount(value=100.00, currency=Currency.RUB)
)
],
tax_system_code=1
)
receipt = await client.receipts.create_receipt(params)
get_receipts¶
Получение списка чеков с возможностью фильтрации.
from aioyookassa.types.params import GetReceiptsParams
from aioyookassa.types.enum import ReceiptStatus
params = GetReceiptsParams(
payment_id="payment_id",
status=ReceiptStatus.SUCCEEDED,
limit=10
)
receipts = await client.receipts.get_receipts(params)
get_receipt¶
Получение информации о конкретном чеке.
receipt = await client.receipts.get_receipt("receipt_id")