diff --git a/packages/keychain/src/components/purchasenew/verification/index.tsx b/packages/keychain/src/components/purchasenew/verification/index.tsx
index dcf278e5a9..e585929d05 100644
--- a/packages/keychain/src/components/purchasenew/verification/index.tsx
+++ b/packages/keychain/src/components/purchasenew/verification/index.tsx
@@ -43,6 +43,8 @@ interface VerificationStepViewProps {
isLoading: boolean;
type: string;
error: string | null;
+ autoComplete?: string;
+ name?: string;
}
const VerificationStepView = ({
@@ -56,6 +58,8 @@ const VerificationStepView = ({
isLoading,
type,
error,
+ autoComplete,
+ name,
}: VerificationStepViewProps) => (
<>
@@ -65,6 +69,8 @@ const VerificationStepView = ({
{label}
) =>
@@ -374,6 +380,8 @@ export function Verification() {
onContinue={handleSendEmail}
isLoading={sendEmailMutation.isLoading}
type="email"
+ autoComplete="email"
+ name="email"
error={error}
/>
);
@@ -407,6 +415,8 @@ export function Verification() {
onContinue={handleSendPhone}
isLoading={sendPhoneMutation.isLoading}
type="tel"
+ autoComplete="tel"
+ name="phone"
error={error}
/>
);
diff --git a/packages/keychain/src/context/starterpack/onchain-purchase.tsx b/packages/keychain/src/context/starterpack/onchain-purchase.tsx
index 5637febf4e..56c3be49d5 100644
--- a/packages/keychain/src/context/starterpack/onchain-purchase.tsx
+++ b/packages/keychain/src/context/starterpack/onchain-purchase.tsx
@@ -255,6 +255,18 @@ export const OnchainPurchaseProvider = ({
setDisplayError(undefined);
}, [selectedToken, selectedWallet, setDisplayError]);
+ // Auto-select USDC when Apple Pay is selected
+ useEffect(() => {
+ if (isApplePaySelected && availableTokens.length > 0) {
+ const usdcToken = availableTokens.find(
+ (token) => token.symbol === "USDC",
+ );
+ if (usdcToken && selectedToken?.address !== usdcToken.address) {
+ setSelectedToken(usdcToken);
+ }
+ }
+ }, [isApplePaySelected, availableTokens, selectedToken, setSelectedToken]);
+
// Wrap onSendDeposit to clear errors before sending
const onSendDeposit = useCallback(async () => {
setDisplayError(undefined);
@@ -475,7 +487,7 @@ export const OnchainPurchaseProvider = ({
convertedPrice,
swapQuote,
isFetchingConversion,
- isTokenSelectionLocked,
+ isTokenSelectionLocked: isTokenSelectionLocked || isApplePaySelected,
conversionError,
usdAmount,
layerswapFees,