Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.126.0"
".": "0.127.0"
}
6 changes: 3 additions & 3 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 213
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-a4afc884f86f30a87445552888031ac1ca18aed0476d7120da555bf457627e65.yml
openapi_spec_hash: ce8d0830986c702f0c7a693b1c3cc5a2
config_hash: 4b618a1df59e555cebe6aa13e8c0218f
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-8e691d2dedaea1906ebbe28b28c978855d5e4fe5fe595a8d23917df851123400.yml
openapi_spec_hash: c33e82abb4d7c979d05386ca230464d3
config_hash: 5bb913c05ebeb301ec925b16e75bb251
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.127.0 (2026-06-19)

Full Changelog: [v0.126.0...v0.127.0](https://github.com/lithic-com/lithic-python/compare/v0.126.0...v0.127.0)

### Features

* **api:** add ACH_PAYMENT_UPDATE event stream, actions, and result types to auth_rules ([27f6d31](https://github.com/lithic-com/lithic-python/commit/27f6d315469a1388b17a644456e8df6515daa95f))

## 0.126.0 (2026-06-16)

Full Changelog: [v0.125.0...v0.126.0](https://github.com/lithic-com/lithic-python/compare/v0.125.0...v0.126.0)
Expand Down
2 changes: 2 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,13 +101,15 @@ Types:

```python
from lithic.types.auth_rules import (
ACHPaymentUpdateAction,
AuthRule,
AuthRuleCondition,
AuthRuleVersion,
BacktestStats,
CardTransactionUpdateAction,
Conditional3DSActionParameters,
ConditionalACHActionParameters,
ConditionalACHPaymentUpdateActionParameters,
ConditionalAttribute,
ConditionalAuthorizationActionParameters,
ConditionalAuthorizationAdjustmentParameters,
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "lithic"
version = "0.126.0"
version = "0.127.0"
description = "The official Python library for the lithic API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion src/lithic/_version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

__title__ = "lithic"
__version__ = "0.126.0" # x-release-please-version
__version__ = "0.127.0" # x-release-please-version
48 changes: 24 additions & 24 deletions src/lithic/resources/auth_rules/v2/v2.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,11 +101,11 @@ def create(
- `VELOCITY_LIMIT`: AUTHORIZATION event stream.
- `MERCHANT_LOCK`: AUTHORIZATION event stream.
- `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
- `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.

account_tokens: Account tokens to which the Auth Rule applies.

Expand Down Expand Up @@ -159,11 +159,11 @@ def create(
- `VELOCITY_LIMIT`: AUTHORIZATION event stream.
- `MERCHANT_LOCK`: AUTHORIZATION event stream.
- `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
- `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.

event_stream: The event stream during which the rule will be evaluated.

Expand Down Expand Up @@ -216,11 +216,11 @@ def create(
- `VELOCITY_LIMIT`: AUTHORIZATION event stream.
- `MERCHANT_LOCK`: AUTHORIZATION event stream.
- `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
- `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.

event_stream: The event stream during which the rule will be evaluated.

Expand Down Expand Up @@ -985,11 +985,11 @@ async def create(
- `VELOCITY_LIMIT`: AUTHORIZATION event stream.
- `MERCHANT_LOCK`: AUTHORIZATION event stream.
- `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
- `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.

account_tokens: Account tokens to which the Auth Rule applies.

Expand Down Expand Up @@ -1043,11 +1043,11 @@ async def create(
- `VELOCITY_LIMIT`: AUTHORIZATION event stream.
- `MERCHANT_LOCK`: AUTHORIZATION event stream.
- `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
- `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.

event_stream: The event stream during which the rule will be evaluated.

Expand Down Expand Up @@ -1100,11 +1100,11 @@ async def create(
- `VELOCITY_LIMIT`: AUTHORIZATION event stream.
- `MERCHANT_LOCK`: AUTHORIZATION event stream.
- `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
- `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.

event_stream: The event stream during which the rule will be evaluated.

Expand Down
8 changes: 8 additions & 0 deletions src/lithic/types/auth_rules/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
from .conditional_value_param import ConditionalValueParam as ConditionalValueParam
from .merchant_lock_parameters import MerchantLockParameters as MerchantLockParameters
from .v2_list_results_response import V2ListResultsResponse as V2ListResultsResponse
from .ach_payment_update_action import ACHPaymentUpdateAction as ACHPaymentUpdateAction
from .auth_rule_condition_param import AuthRuleConditionParam as AuthRuleConditionParam
from .v2_list_versions_response import V2ListVersionsResponse as V2ListVersionsResponse
from .v2_retrieve_report_params import V2RetrieveReportParams as V2RetrieveReportParams
Expand All @@ -39,6 +40,7 @@
from .v2_retrieve_features_response import V2RetrieveFeaturesResponse as V2RetrieveFeaturesResponse
from .card_transaction_update_action import CardTransactionUpdateAction as CardTransactionUpdateAction
from .merchant_lock_parameters_param import MerchantLockParametersParam as MerchantLockParametersParam
from .ach_payment_update_action_param import ACHPaymentUpdateActionParam as ACHPaymentUpdateActionParam
from .typescript_code_parameters_param import TypescriptCodeParametersParam as TypescriptCodeParametersParam
from .conditional_3ds_action_parameters import Conditional3DSActionParameters as Conditional3DSActionParameters
from .conditional_ach_action_parameters import ConditionalACHActionParameters as ConditionalACHActionParameters
Expand All @@ -59,6 +61,9 @@
from .conditional_authorization_adjustment_parameters import (
ConditionalAuthorizationAdjustmentParameters as ConditionalAuthorizationAdjustmentParameters,
)
from .conditional_ach_payment_update_action_parameters import (
ConditionalACHPaymentUpdateActionParameters as ConditionalACHPaymentUpdateActionParameters,
)
from .conditional_tokenization_action_parameters_param import (
ConditionalTokenizationActionParametersParam as ConditionalTokenizationActionParametersParam,
)
Expand All @@ -71,6 +76,9 @@
from .conditional_card_transaction_update_action_parameters import (
ConditionalCardTransactionUpdateActionParameters as ConditionalCardTransactionUpdateActionParameters,
)
from .conditional_ach_payment_update_action_parameters_param import (
ConditionalACHPaymentUpdateActionParametersParam as ConditionalACHPaymentUpdateActionParametersParam,
)
from .conditional_card_transaction_update_action_parameters_param import (
ConditionalCardTransactionUpdateActionParametersParam as ConditionalCardTransactionUpdateActionParametersParam,
)
33 changes: 33 additions & 0 deletions src/lithic/types/auth_rules/ach_payment_update_action.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from typing import Union
from typing_extensions import Literal, TypeAlias

from ..._models import BaseModel

__all__ = ["ACHPaymentUpdateAction", "TagAction", "CreateCaseAction"]


class TagAction(BaseModel):
key: str
"""The key of the tag to apply to the payment"""

type: Literal["TAG"]
"""Tag the payment with key-value metadata"""

value: str
"""The value of the tag to apply to the payment"""


class CreateCaseAction(BaseModel):
queue_token: str
"""The token of the queue to create the case in"""

scope: Literal["FINANCIAL_ACCOUNT"]
"""The scope of the case to create"""

type: Literal["CREATE_CASE"]
"""Create a case for the payment"""


ACHPaymentUpdateAction: TypeAlias = Union[TagAction, CreateCaseAction]
33 changes: 33 additions & 0 deletions src/lithic/types/auth_rules/ach_payment_update_action_param.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from __future__ import annotations

from typing import Union
from typing_extensions import Literal, Required, TypeAlias, TypedDict

__all__ = ["ACHPaymentUpdateActionParam", "TagAction", "CreateCaseAction"]


class TagAction(TypedDict, total=False):
key: Required[str]
"""The key of the tag to apply to the payment"""

type: Required[Literal["TAG"]]
"""Tag the payment with key-value metadata"""

value: Required[str]
"""The value of the tag to apply to the payment"""


class CreateCaseAction(TypedDict, total=False):
queue_token: Required[str]
"""The token of the queue to create the case in"""

scope: Required[Literal["FINANCIAL_ACCOUNT"]]
"""The scope of the case to create"""

type: Required[Literal["CREATE_CASE"]]
"""Create a case for the payment"""


ACHPaymentUpdateActionParam: TypeAlias = Union[TagAction, CreateCaseAction]
11 changes: 7 additions & 4 deletions src/lithic/types/auth_rules/auth_rule.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from .conditional_tokenization_action_parameters import ConditionalTokenizationActionParameters
from .conditional_authorization_action_parameters import ConditionalAuthorizationActionParameters
from .conditional_authorization_adjustment_parameters import ConditionalAuthorizationAdjustmentParameters
from .conditional_ach_payment_update_action_parameters import ConditionalACHPaymentUpdateActionParameters
from .conditional_card_transaction_update_action_parameters import ConditionalCardTransactionUpdateActionParameters

__all__ = ["AuthRule", "CurrentVersion", "CurrentVersionParameters", "DraftVersion", "DraftVersionParameters"]
Expand All @@ -27,6 +28,7 @@
ConditionalACHActionParameters,
ConditionalTokenizationActionParameters,
ConditionalCardTransactionUpdateActionParameters,
ConditionalACHPaymentUpdateActionParameters,
TypescriptCodeParameters,
ConditionalAuthorizationAdjustmentParameters,
]
Expand All @@ -52,6 +54,7 @@ class CurrentVersion(BaseModel):
ConditionalACHActionParameters,
ConditionalTokenizationActionParameters,
ConditionalCardTransactionUpdateActionParameters,
ConditionalACHPaymentUpdateActionParameters,
TypescriptCodeParameters,
ConditionalAuthorizationAdjustmentParameters,
]
Expand Down Expand Up @@ -135,11 +138,11 @@ class AuthRule(BaseModel):
- `VELOCITY_LIMIT`: AUTHORIZATION event stream.
- `MERCHANT_LOCK`: AUTHORIZATION event stream.
- `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
- `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
stream.
ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
ACH_PAYMENT_UPDATE event stream.
"""

excluded_account_tokens: Optional[List[str]] = None
Expand Down
2 changes: 2 additions & 0 deletions src/lithic/types/auth_rules/auth_rule_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from .conditional_tokenization_action_parameters import ConditionalTokenizationActionParameters
from .conditional_authorization_action_parameters import ConditionalAuthorizationActionParameters
from .conditional_authorization_adjustment_parameters import ConditionalAuthorizationAdjustmentParameters
from .conditional_ach_payment_update_action_parameters import ConditionalACHPaymentUpdateActionParameters
from .conditional_card_transaction_update_action_parameters import ConditionalCardTransactionUpdateActionParameters

__all__ = ["AuthRuleVersion", "Parameters"]
Expand All @@ -27,6 +28,7 @@
ConditionalACHActionParameters,
ConditionalTokenizationActionParameters,
ConditionalCardTransactionUpdateActionParameters,
ConditionalACHPaymentUpdateActionParameters,
TypescriptCodeParameters,
ConditionalAuthorizationAdjustmentParameters,
]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from typing import List
from typing_extensions import Literal

from ..._models import BaseModel
from .conditional_value import ConditionalValue
from .conditional_operation import ConditionalOperation
from .ach_payment_update_action import ACHPaymentUpdateAction

__all__ = ["ConditionalACHPaymentUpdateActionParameters", "Condition"]


class Condition(BaseModel):
attribute: Literal[
"TRANSACTION_AMOUNT",
"SEC_CODE",
"RETURN_REASON_CODE",
"ACCOUNT_AGE",
"EXTERNAL_BANK_ACCOUNT_AGE",
"EXTERNAL_BANK_ACCOUNT_VERIFICATION_METHOD",
"EXTERNAL_BANK_ACCOUNT_VERIFICATION_STATE",
"EXTERNAL_BANK_ACCOUNT_OWNER_TYPE",
]
"""The attribute to target.

The following attributes may be targeted:

- `TRANSACTION_AMOUNT`: The total amount of the ACH payment in minor units
(cents), calculated as the sum of the settled and pending amounts. Use an
integer value.
- `SEC_CODE`: Standard Entry Class code indicating the type of ACH transaction.
Valid values include PPD (Prearranged Payment and Deposit Entry), CCD
(Corporate Credit or Debit Entry), WEB (Internet-Initiated/Mobile Entry), TEL
(Telephone-Initiated Entry), and others.
- `RETURN_REASON_CODE`: NACHA return reason code associated with the payment
(for example, `R01`).
- `ACCOUNT_AGE`: The age of the account in seconds at the time of the payment.
Use an integer value. For programs where Lithic does not manage or retain
account holder data, this attribute does not evaluate.
- `EXTERNAL_BANK_ACCOUNT_AGE`: The age of the external bank account in seconds
at the time of the payment. Use an integer value.
- `EXTERNAL_BANK_ACCOUNT_VERIFICATION_METHOD`: The method used to verify the
external bank account. Valid values are `MANUAL`, `MICRO_DEPOSIT`, `PRENOTE`,
`EXTERNALLY_VERIFIED`, or `UNVERIFIED`.
- `EXTERNAL_BANK_ACCOUNT_VERIFICATION_STATE`: The verification state of the
external bank account. Valid values are `PENDING`, `ENABLED`,
`FAILED_VERIFICATION`, or `INSUFFICIENT_FUNDS`.
- `EXTERNAL_BANK_ACCOUNT_OWNER_TYPE`: The owner type of the external bank
account. Valid values are `INDIVIDUAL` or `BUSINESS`.
"""

operation: ConditionalOperation
"""The operation to apply to the attribute"""

value: ConditionalValue
"""A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`"""


class ConditionalACHPaymentUpdateActionParameters(BaseModel):
action: ACHPaymentUpdateAction
"""The action to take if the conditions are met."""

conditions: List[Condition]
Loading