# Form Types

The SDK provides six form types for different data collection needs. Each has two style variants:

- **Outlined** — field borders appear when focused
- **Classic** — fields use a filled background style


All form types share the same [PaymentSheet parameters](/android/online/payment-sheet).

| Form Type | Outlined Function | Classic Function | Data Collected |
|  --- | --- | --- | --- |
| Complete | `CompletePaymentSheetOutlined` | `CompletePaymentSheet` | Name, Card Number, Expiration, CVV, Full Address |
| Partial | `PartialPaymentSheetOutlined` | `PartialPaymentSheet` | Name, Card Number, Expiration, CVV, ZIP |
| Basic | `BasicPaymentSheetOutlined` | `BasicPaymentSheet` | Name, Card Number, Expiration, CVV |
| Minimal | `MinimalPaymentSheetOutlined` | `MinimalPaymentSheet` | Card Number, Expiration, CVV |
| International | `InternationalPaymentSheetOutlined` | `InternationalPaymentSheet` | CVV, ZIP, Country/Region |
| Bank Account | `BankAccountSheetOutlined` | `BankAccountSheet` | Account Number, Routing Number |


- Use **Complete** when you need full address data for AVS verification.
- Use **Partial** for lightweight ZIP-only verification.
- Use **Basic** or **Minimal** for simple card collection with no address fields.
- Use **International** for buyers outside the US.
- Use **Bank Account** for ACH payments.


## Card Collection

All card form types share the same parameters. Only the function name changes based on which variant you choose.

## Bank Account Collection

Use `BankAccountSheetOutlined` or `BankAccountSheet` to collect ACH payment details.