"""Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT."""

from __future__ import annotations
import dataclasses
from dataclasses_json import Undefined, dataclass_json
from datetime import date
from orb import utils
from typing import Optional


@dataclass_json(undefined=Undefined.EXCLUDE)

@dataclasses.dataclass
class MarkAsPaidRequestParams:
    external_id: Optional[str] = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('external_id') }})
    r"""An optional external ID to associate with the payment."""
    notes: Optional[str] = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('notes') }})
    r"""An optional note to associate with the payment."""
    payment_received_date: date = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('payment_received_date'), 'encoder': utils.dateisoformat(False), 'decoder': utils.datefromisoformat }})
    r"""A date string to specify the date of the payment."""
    

