Skip to content

Collect automatic-tax billing address for US bank accounts (MOBILESDK-4667) - #13718

Draft
cttsai-stripe wants to merge 1 commit into
codex/mobilesdk-4667-all-new-payment-methodsfrom
cttsai/mobilesdk-4667-us-bank-account-tax-address
Draft

Collect automatic-tax billing address for US bank accounts (MOBILESDK-4667)#13718
cttsai-stripe wants to merge 1 commit into
codex/mobilesdk-4667-all-new-payment-methodsfrom
cttsai/mobilesdk-4667-us-bank-account-tax-address

Conversation

@cttsai-stripe

@cttsai-stripe cttsai-stripe commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Summary

Apply the shared automatic-tax billing-address behavior to the separately rendered US bank account form.

This is the special-form companion to the normal LPM integration in #13713. It uses the explicit shared address configuration from #13717 and preserves the behavior-neutral LPM migration in #13723.

Motivation

US bank account bypasses the normal UiDefinitionFactory pipeline, so #13713 deliberately excludes it. Without explicit wiring here, billing-sourced automatic-tax sessions would still omit required address fields on this path.

This PR:

  • threads the stable automatic-tax billing requirement into US bank account form arguments;
  • uses country-first BillingAddressElement collection with shared per-country tax minimums;
  • renders and validates only visible fields as country changes;
  • keeps last-text-field and same-as-shipping behavior correct; and
  • preserves non-Checkout, disabled-tax, Full-collection, and autocomplete behavior.

JIRA: MOBILESDK-4667

Testing

  • Added tests
  • Modified tests
  • Manually verified

USBankAccountFormViewModelTest covers US, CA, and country-only requirements, dynamic country changes, completion, automatic-tax gating off, and existing Full-address behavior. :paymentsheet:detekt and :paymentsheet:apiCheck passed.

Screenshots

N/A.

Changelog

N/A - Checkout Session is behind @CheckoutSessionPreview; the implementation is internal.

@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 4889e25 to b661f1b Compare August 3, 2026 19:59
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch 2 times, most recently from a770cc6 to c0c1b26 Compare August 3, 2026 20:06
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch 2 times, most recently from 40d755f to 000dff8 Compare August 3, 2026 20:14
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from c0c1b26 to ec722da Compare August 3, 2026 20:14
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 000dff8 to 27767c9 Compare August 3, 2026 20:22
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch 2 times, most recently from 4ac1fce to a2f1bbd Compare August 3, 2026 20:59
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch 2 times, most recently from 29065a5 to e829b62 Compare August 3, 2026 21:58
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from a2f1bbd to 90d6f9c Compare August 3, 2026 21:58
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from e829b62 to bb2524c Compare August 3, 2026 22:32
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from 223dbf9 to adf17b8 Compare August 3, 2026 23:46
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from bb2524c to 91dd147 Compare August 3, 2026 23:46
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from adf17b8 to 3aa243d Compare August 4, 2026 05:58
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch 3 times, most recently from 00de1a9 to 4afd3c4 Compare August 4, 2026 18:15
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from c563116 to 7cce9ed Compare August 4, 2026 18:16
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 4afd3c4 to 4e020f4 Compare August 4, 2026 18:16
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from 7cce9ed to 4cdf25b Compare August 4, 2026 19:27
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch 2 times, most recently from 46c60c8 to 2c10bb8 Compare August 4, 2026 22:18
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch 2 times, most recently from 41de9b4 to dd435e5 Compare August 4, 2026 22:35
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 2c10bb8 to 630db30 Compare August 4, 2026 22:36
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from dd435e5 to b6c98a1 Compare August 4, 2026 23:17
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 630db30 to 9fe66c1 Compare August 4, 2026 23:17
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from b6c98a1 to 2b3ddc0 Compare August 4, 2026 23:20
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch 2 times, most recently from 5e2102e to 787c547 Compare August 4, 2026 23:35
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch 2 times, most recently from 074f7ef to b26e8ad Compare August 5, 2026 00:18
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 787c547 to 5edee9a Compare August 5, 2026 00:19
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from b26e8ad to 097bdb1 Compare August 5, 2026 16:51
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 5edee9a to 2c8e80d Compare August 5, 2026 16:51
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from 097bdb1 to ab2c6ed Compare August 5, 2026 17:46
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch 2 times, most recently from 0658b41 to 8434af9 Compare August 5, 2026 18:12
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch 2 times, most recently from 38b782d to ace5fd6 Compare August 5, 2026 23:28
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 8434af9 to 1f16579 Compare August 5, 2026 23:28
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from ace5fd6 to caa9349 Compare August 5, 2026 23:35
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 1f16579 to 2bf5d12 Compare August 5, 2026 23:35
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from caa9349 to a767318 Compare August 6, 2026 00:10
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 2bf5d12 to ad60921 Compare August 6, 2026 00:14
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from a767318 to 10eaa74 Compare August 6, 2026 18:17
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from ad60921 to 018e20b Compare August 6, 2026 18:17
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from 10eaa74 to 6a2ae10 Compare August 6, 2026 20:22
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from 018e20b to dad741e Compare August 6, 2026 20:22
…-4667)

Committed-By-Agent: codex
Co-authored-by: codex <noreply@openai.com>
Committed-By-Agent: codex
Co-authored-by: codex <noreply@openai.com>
Committed-By-Agent: codex
Co-authored-by: codex <noreply@openai.com>
Committed-By-Agent: codex
Co-authored-by: codex <noreply@openai.com>
Committed-By-Agent: codex
Co-authored-by: codex <noreply@openai.com>
@cttsai-stripe
cttsai-stripe force-pushed the codex/mobilesdk-4667-all-new-payment-methods branch from 6a2ae10 to 4941827 Compare August 6, 2026 22:38
@cttsai-stripe
cttsai-stripe force-pushed the cttsai/mobilesdk-4667-us-bank-account-tax-address branch from dad741e to 1fba781 Compare August 6, 2026 22:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant