plaid2.model.transaction_stream module

class plaid2.model.transaction_stream.TransactionStream(*, frequency: str, stream_id: str, is_active: bool, first_date: str, account_id: str, average_amount: TransactionStreamAmount, description: str, category: List[str], transaction_ids: List[str], last_date: str, merchant_name: Optional[str] = None, last_amount: TransactionStreamAmount, status: str, category_id: str, personal_finance_category: Optional[PersonalFinanceCategory] = None)[source]

Bases: BaseModel

account_id: str

The ID of the account to which the stream belongs

average_amount: TransactionStreamAmount

Object with data pertaining to an amount on the transaction stream.

category: List[str]

//plaid.com/docs/#category-overview).

Type

A hierarchical array of the categories to which this transaction belongs. See [Categories](https

category_id: str

//plaid.com/docs/#category-overview).

Type

The ID of the category to which this transaction belongs. See [Categories](https

description: str

A description of the transaction stream.

dict(**kwargs: Any) Dict[str, Any][source]

Return a dict representation of the object. Takes same keyword arguments as pydantic.BaseModel.dict

first_date: str

The posted date of the earliest transaction in the stream.

frequency: str

Describes the frequency of the transaction stream.

WEEKLY: Assigned to a transaction stream that occurs approximately every week.

BIWEEKLY: Assigned to a transaction stream that occurs approximately every 2 weeks.

SEMI_MONTHLY: Assigned to a transaction stream that occurs approximately twice per month. This frequency is typically seen for inflow transaction streams.

MONTHLY: Assigned to a transaction stream that occurs approximately every month.

UNKNOWN: Assigned to a transaction stream that does not fit any of the pre-defined frequencies.

is_active: bool

Indicates whether the transaction stream is still live.

json(**kwargs: Any) str[source]

Return a json string representation of the object. Takes same keyword arguments as pydantic.BaseModel.json

last_amount: TransactionStreamAmount

Object with data pertaining to an amount on the transaction stream.

last_date: str

The posted date of the latest transaction in the stream.

merchant_name: Optional[str]

The merchant associated with the transaction stream.

classmethod parse_obj(data: Any) TransactionStream[source]

Parse a dict into the object. Takes same keyword arguments as pydantic.BaseModel.parse_obj

classmethod parse_raw(b: Union[bytes, str], **kwargs: Any) TransactionStream[source]

Parse a json string into the object. Takes same keyword arguments as pydantic.BaseModel.parse_raw

personal_finance_category: Optional[PersonalFinanceCategory]

Information describing the intent of the transaction. Most relevant for personal finance use cases, but not limited to such use cases.

See the [taxonomy csv file](https://plaid.com/documents/transactions-personal-finance-category-taxonomy.csv) for a full list of personal finance categories.

status: str

The current status of the transaction stream.

MATURE: A MATURE recurring stream should have at least 3 transactions and happen on a regular cadence.

EARLY_DETECTION: When a recurring transaction first appears in the transaction history and before it fulfills the requirement of a mature stream, the status will be EARLY_DETECTION.

TOMBSTONED: A stream that was previously in the EARLY_DETECTION status will move to the TOMBSTONED status when no further transactions were found at the next expected date.

UNKNOWN: A stream is assigned an UNKNOWN status when none of the other statuses are applicable.

stream_id: str

A unique id for the stream

transaction_ids: List[str]

An array of Plaid transaction IDs belonging to the stream, sorted by posted date.