Skip to content

Commit

Permalink
feat(api): updates (#453)
Browse files Browse the repository at this point in the history
  • Loading branch information
stainless-app[bot] committed May 29, 2024
1 parent 32e81c9 commit 95923e9
Show file tree
Hide file tree
Showing 17 changed files with 323 additions and 194 deletions.
12 changes: 6 additions & 6 deletions src/lithic/resources/account_holders.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,9 @@ def create(
empty list. However, either this parameter or `beneficial_owner_individuals`
must be populated. on entities that should be included.
beneficial_owner_individuals: List of all individuals with >25% ownership in the company. If no entity or
individual owns >25% of the company, and the largest shareholder is an
individual, please identify them in this field. See
beneficial_owner_individuals: List of all direct and indirect individuals with >25% ownership in the company.
If no entity or individual owns >25% of the company, and the largest shareholder
is an individual, please identify them in this field. See
[FinCEN requirements](https://www.fincen.gov/sites/default/files/shared/CDD_Rev6.7_Sept_2017_Certificate.pdf)
(Section I) for more background on individuals that should be included. If no
individual is an entity, pass in an empty list. However, either this parameter
Expand Down Expand Up @@ -750,9 +750,9 @@ async def create(
empty list. However, either this parameter or `beneficial_owner_individuals`
must be populated. on entities that should be included.
beneficial_owner_individuals: List of all individuals with >25% ownership in the company. If no entity or
individual owns >25% of the company, and the largest shareholder is an
individual, please identify them in this field. See
beneficial_owner_individuals: List of all direct and indirect individuals with >25% ownership in the company.
If no entity or individual owns >25% of the company, and the largest shareholder
is an individual, please identify them in this field. See
[FinCEN requirements](https://www.fincen.gov/sites/default/files/shared/CDD_Rev6.7_Sept_2017_Certificate.pdf)
(Section I) for more background on individuals that should be included. If no
individual is an entity, pass in an empty list. However, either this parameter
Expand Down
172 changes: 134 additions & 38 deletions src/lithic/resources/external_bank_accounts/external_bank_accounts.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@ def create(
account_number: str,
country: str,
currency: str,
financial_account_token: str,
owner: str,
owner_type: OwnerType,
routing_number: str,
Expand All @@ -82,6 +81,7 @@ def create(
company_id: str | NotGiven = NOT_GIVEN,
dob: Union[str, date] | NotGiven = NOT_GIVEN,
doing_business_as: str | NotGiven = NOT_GIVEN,
financial_account_token: str | NotGiven = NOT_GIVEN,
name: str | NotGiven = NOT_GIVEN,
user_defined_id: str | NotGiven = NOT_GIVEN,
verification_enforcement: bool | NotGiven = NOT_GIVEN,
Expand All @@ -96,18 +96,41 @@ def create(
Creates an external bank account within a program or Lithic account.
Args:
financial_account_token: The financial account token of the operating account, which will provide the
funds for micro deposits used to verify the account
account_number: Routing Number
country: The country that the bank account is located in using ISO 3166-1. We will only
accept USA bank accounts e.g., USA
currency: currency of the external account 3-digit alphabetic ISO 4217 code
owner: Legal Name of the business or individual who owns the external account. This
will appear in statements
owner_type: Owner Type
routing_number: Routing Number
type: Account Type
verification_method: Verification Method
address: Address used during Address Verification Service (AVS) checks during
transactions if enabled via Auth Rules.
account_token: Indicates which Lithic account the external account is associated with. For
external accounts that are associated with the program, account_token field
returned will be null
address: Address
company_id: Optional field that helps identify bank accounts in receipts
dob: Date of Birth of the Individual that owns the external bank account
verification_enforcement: Indicates whether verification was enforced for a given association record. For
MICRO_DEPOSIT, option to disable verification if the external bank account has
already been verified before. By default, verification will be required unless
users pass in a value of false
doing_business_as: Doing Business As
financial_account_token: The financial account token of the operating account to fund the micro deposits
name: The nickname given to this record of External Bank Account
user_defined_id: User Defined ID
extra_headers: Send extra headers
Expand Down Expand Up @@ -143,8 +166,25 @@ def create(
Creates an external bank account within a program or Lithic account.
Args:
owner: Legal Name of the business or individual who owns the external account. This
will appear in statements
owner_type: Owner Type
verification_method: Verification Method
account_token: Indicates which Lithic account the external account is associated with. For
external accounts that are associated with the program, account_token field
returned will be null
company_id: Optional field that helps identify bank accounts in receipts
dob: Date of Birth of the Individual that owns the external bank account
doing_business_as: Doing Business As
user_defined_id: User Defined ID
extra_headers: Send extra headers
extra_query: Add additional query parameters to the request
Expand All @@ -160,7 +200,6 @@ def create(
"account_number",
"country",
"currency",
"financial_account_token",
"owner",
"owner_type",
"routing_number",
Expand All @@ -175,7 +214,6 @@ def create(
account_number: str | NotGiven = NOT_GIVEN,
country: str | NotGiven = NOT_GIVEN,
currency: str | NotGiven = NOT_GIVEN,
financial_account_token: str | NotGiven = NOT_GIVEN,
owner: str,
owner_type: OwnerType,
routing_number: str | NotGiven = NOT_GIVEN,
Expand All @@ -186,6 +224,7 @@ def create(
company_id: str | NotGiven = NOT_GIVEN,
dob: Union[str, date] | NotGiven = NOT_GIVEN,
doing_business_as: str | NotGiven = NOT_GIVEN,
financial_account_token: str | NotGiven = NOT_GIVEN,
name: str | NotGiven = NOT_GIVEN,
user_defined_id: str | NotGiven = NOT_GIVEN,
verification_enforcement: bool | NotGiven = NOT_GIVEN,
Expand All @@ -204,7 +243,6 @@ def create(
"account_number": account_number,
"country": country,
"currency": currency,
"financial_account_token": financial_account_token,
"owner": owner,
"owner_type": owner_type,
"routing_number": routing_number,
Expand All @@ -215,6 +253,7 @@ def create(
"company_id": company_id,
"dob": dob,
"doing_business_as": doing_business_as,
"financial_account_token": financial_account_token,
"name": name,
"user_defined_id": user_defined_id,
"verification_enforcement": verification_enforcement,
Expand Down Expand Up @@ -286,11 +325,23 @@ def update(
Update the external bank account by token.
Args:
address: Address used during Address Verification Service (AVS) checks during
transactions if enabled via Auth Rules.
address: Address
company_id: Optional field that helps identify bank accounts in receipts
dob: Date of Birth of the Individual that owns the external bank account
doing_business_as: Doing Business As
name: The nickname given to this record of External Bank Account
owner: Legal Name of the business or individual who owns the external account. This
will appear in statements
owner_type: Owner Type
user_defined_id: User Defined ID
extra_headers: Send extra headers
extra_query: Add additional query parameters to the request
Expand Down Expand Up @@ -334,8 +385,8 @@ def list(
owner_types: List[OwnerType] | NotGiven = NOT_GIVEN,
page_size: int | NotGiven = NOT_GIVEN,
starting_after: str | NotGiven = NOT_GIVEN,
states: List[Literal["CLOSED", "ENABLED", "PAUSED"]] | NotGiven = NOT_GIVEN,
verification_states: List[Literal["ENABLED", "FAILED_VERIFICATION", "INSUFFICIENT_FUNDS", "PENDING"]]
states: List[Literal["ENABLED", "CLOSED", "PAUSED"]] | NotGiven = NOT_GIVEN,
verification_states: List[Literal["PENDING", "ENABLED", "FAILED_VERIFICATION", "INSUFFICIENT_FUNDS"]]
| NotGiven = NOT_GIVEN,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
Expand Down Expand Up @@ -406,9 +457,6 @@ def retry_micro_deposits(
Retry external bank account micro deposit verification.
Args:
financial_account_token: The financial account token of the operating account, which will provide the
funds for micro deposits used to verify the account
extra_headers: Send extra headers
extra_query: Add additional query parameters to the request
Expand Down Expand Up @@ -454,7 +502,6 @@ async def create(
account_number: str,
country: str,
currency: str,
financial_account_token: str,
owner: str,
owner_type: OwnerType,
routing_number: str,
Expand All @@ -465,6 +512,7 @@ async def create(
company_id: str | NotGiven = NOT_GIVEN,
dob: Union[str, date] | NotGiven = NOT_GIVEN,
doing_business_as: str | NotGiven = NOT_GIVEN,
financial_account_token: str | NotGiven = NOT_GIVEN,
name: str | NotGiven = NOT_GIVEN,
user_defined_id: str | NotGiven = NOT_GIVEN,
verification_enforcement: bool | NotGiven = NOT_GIVEN,
Expand All @@ -479,18 +527,41 @@ async def create(
Creates an external bank account within a program or Lithic account.
Args:
financial_account_token: The financial account token of the operating account, which will provide the
funds for micro deposits used to verify the account
account_number: Routing Number
country: The country that the bank account is located in using ISO 3166-1. We will only
accept USA bank accounts e.g., USA
currency: currency of the external account 3-digit alphabetic ISO 4217 code
owner: Legal Name of the business or individual who owns the external account. This
will appear in statements
owner_type: Owner Type
routing_number: Routing Number
type: Account Type
verification_method: Verification Method
address: Address used during Address Verification Service (AVS) checks during
transactions if enabled via Auth Rules.
account_token: Indicates which Lithic account the external account is associated with. For
external accounts that are associated with the program, account_token field
returned will be null
address: Address
company_id: Optional field that helps identify bank accounts in receipts
dob: Date of Birth of the Individual that owns the external bank account
verification_enforcement: Indicates whether verification was enforced for a given association record. For
MICRO_DEPOSIT, option to disable verification if the external bank account has
already been verified before. By default, verification will be required unless
users pass in a value of false
doing_business_as: Doing Business As
financial_account_token: The financial account token of the operating account to fund the micro deposits
name: The nickname given to this record of External Bank Account
user_defined_id: User Defined ID
extra_headers: Send extra headers
Expand Down Expand Up @@ -526,8 +597,25 @@ async def create(
Creates an external bank account within a program or Lithic account.
Args:
owner: Legal Name of the business or individual who owns the external account. This
will appear in statements
owner_type: Owner Type
verification_method: Verification Method
account_token: Indicates which Lithic account the external account is associated with. For
external accounts that are associated with the program, account_token field
returned will be null
company_id: Optional field that helps identify bank accounts in receipts
dob: Date of Birth of the Individual that owns the external bank account
doing_business_as: Doing Business As
user_defined_id: User Defined ID
extra_headers: Send extra headers
extra_query: Add additional query parameters to the request
Expand All @@ -543,7 +631,6 @@ async def create(
"account_number",
"country",
"currency",
"financial_account_token",
"owner",
"owner_type",
"routing_number",
Expand All @@ -558,7 +645,6 @@ async def create(
account_number: str | NotGiven = NOT_GIVEN,
country: str | NotGiven = NOT_GIVEN,
currency: str | NotGiven = NOT_GIVEN,
financial_account_token: str | NotGiven = NOT_GIVEN,
owner: str,
owner_type: OwnerType,
routing_number: str | NotGiven = NOT_GIVEN,
Expand All @@ -569,6 +655,7 @@ async def create(
company_id: str | NotGiven = NOT_GIVEN,
dob: Union[str, date] | NotGiven = NOT_GIVEN,
doing_business_as: str | NotGiven = NOT_GIVEN,
financial_account_token: str | NotGiven = NOT_GIVEN,
name: str | NotGiven = NOT_GIVEN,
user_defined_id: str | NotGiven = NOT_GIVEN,
verification_enforcement: bool | NotGiven = NOT_GIVEN,
Expand All @@ -587,7 +674,6 @@ async def create(
"account_number": account_number,
"country": country,
"currency": currency,
"financial_account_token": financial_account_token,
"owner": owner,
"owner_type": owner_type,
"routing_number": routing_number,
Expand All @@ -598,6 +684,7 @@ async def create(
"company_id": company_id,
"dob": dob,
"doing_business_as": doing_business_as,
"financial_account_token": financial_account_token,
"name": name,
"user_defined_id": user_defined_id,
"verification_enforcement": verification_enforcement,
Expand Down Expand Up @@ -669,11 +756,23 @@ async def update(
Update the external bank account by token.
Args:
address: Address used during Address Verification Service (AVS) checks during
transactions if enabled via Auth Rules.
address: Address
company_id: Optional field that helps identify bank accounts in receipts
dob: Date of Birth of the Individual that owns the external bank account
doing_business_as: Doing Business As
name: The nickname given to this record of External Bank Account
owner: Legal Name of the business or individual who owns the external account. This
will appear in statements
owner_type: Owner Type
user_defined_id: User Defined ID
extra_headers: Send extra headers
extra_query: Add additional query parameters to the request
Expand Down Expand Up @@ -717,8 +816,8 @@ def list(
owner_types: List[OwnerType] | NotGiven = NOT_GIVEN,
page_size: int | NotGiven = NOT_GIVEN,
starting_after: str | NotGiven = NOT_GIVEN,
states: List[Literal["CLOSED", "ENABLED", "PAUSED"]] | NotGiven = NOT_GIVEN,
verification_states: List[Literal["ENABLED", "FAILED_VERIFICATION", "INSUFFICIENT_FUNDS", "PENDING"]]
states: List[Literal["ENABLED", "CLOSED", "PAUSED"]] | NotGiven = NOT_GIVEN,
verification_states: List[Literal["PENDING", "ENABLED", "FAILED_VERIFICATION", "INSUFFICIENT_FUNDS"]]
| NotGiven = NOT_GIVEN,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
Expand Down Expand Up @@ -789,9 +888,6 @@ async def retry_micro_deposits(
Retry external bank account micro deposit verification.
Args:
financial_account_token: The financial account token of the operating account, which will provide the
funds for micro deposits used to verify the account
extra_headers: Send extra headers
extra_query: Add additional query parameters to the request
Expand Down
2 changes: 1 addition & 1 deletion src/lithic/types/account_holder_create_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class KYB(TypedDict, total=False):
"""

beneficial_owner_individuals: Required[Iterable[KYBBeneficialOwnerIndividual]]
"""List of all individuals with >25% ownership in the company.
"""List of all direct and indirect individuals with >25% ownership in the company.
If no entity or individual owns >25% of the company, and the largest shareholder
is an individual, please identify them in this field. See
Expand Down
Loading

0 comments on commit 95923e9

Please sign in to comment.