Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
118 commits
Select commit Hold shift + click to select a range
7ffa5bf
Add LinkPlaidToBankAccountParams params
dominictb Aug 12, 2026
550fcf0
Add LinkPlaidToBankAccountParams command
dominictb Aug 12, 2026
336777d
Add LinkPlaidToBankAccountParams command action
dominictb Aug 12, 2026
fab8c41
Add requiresPlaidHandler to BankAccountConnectionStatus
dominictb Aug 13, 2026
2516cf2
Add plaid status helpers
dominictb Aug 13, 2026
92d5711
Return right RBR for plaid connection status
dominictb Aug 13, 2026
bf4d72b
Add helper to check Plaid connection eligibility
dominictb Aug 13, 2026
61183b8
Update getBankAccountConnectionStatus to check Plaid connection eligi…
dominictb Aug 13, 2026
5c33de7
Update getBankAccountConnectionStatus usage to pass accountData
dominictb Aug 13, 2026
3f80da6
Add selector to select policyIDs on Card waitlist
dominictb Aug 13, 2026
c45bb1a
Get policyIDs on Card waitlist from Onyx
dominictb Aug 13, 2026
467234c
Check each payment method's Plaid connection eligibility
dominictb Aug 13, 2026
3368cbd
Define Plaid handler
dominictb Aug 13, 2026
5a047dd
Add link plaid page route
dominictb Aug 13, 2026
e53957a
Init LinkPlaidToBankAccountPage
dominictb Aug 13, 2026
146ff5d
Add English translations for connection status
dominictb Aug 13, 2026
fddc901
Add English translations for LinkPlaidToBankAccount page
dominictb Aug 13, 2026
e8893f0
Run generateTranslations script
dominictb Aug 13, 2026
6ee05e1
Add needsFixing to BankAccount model
dominictb Aug 13, 2026
6b50597
Update LinkPlaidToBankAccount action to update to bankAccountList dir…
dominictb Aug 13, 2026
583b233
Export functions
dominictb Aug 13, 2026
36e8484
Update action to set isLoading only
dominictb Aug 13, 2026
c5540c0
Remove success state from BankAccount model
dominictb Aug 13, 2026
73cedbc
Render Plaid link
dominictb Aug 13, 2026
1730c01
Link Plaid to bank account on success
dominictb Aug 13, 2026
c68accb
Handle success case
dominictb Aug 13, 2026
d9b2c93
Handle failure case
dominictb Aug 13, 2026
94f217b
Handle wrong bank account error
dominictb Aug 13, 2026
d218325
Use an Onyx selector
dominictb Aug 13, 2026
70ea1aa
Fix lint
dominictb Aug 13, 2026
e4a604e
Allow users to select Plaid account to link
dominictb Aug 13, 2026
fbd1f1d
Fix lint
dominictb Aug 13, 2026
18fadb5
Update tests
dominictb Aug 13, 2026
31b988c
Fix lint
dominictb Aug 13, 2026
63b91a8
Add illustration files
dominictb Aug 13, 2026
58187c9
Substitue illustrations
dominictb Aug 13, 2026
9f79712
Update page location
dominictb Aug 13, 2026
dbf0c06
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Aug 18, 2026
4b6adab
Fix test
dominictb Aug 18, 2026
51a621a
Update condition
dominictb Aug 18, 2026
513871d
Fix test
dominictb Aug 18, 2026
130f8c8
Add brickRoadIndicator to ConnectionStatusMessage
dominictb Aug 19, 2026
bc571a2
Pass brickRoadIndicator to ConnectionStatusMessage
dominictb Aug 19, 2026
16e87cf
Show icon for INFO brickRoadIndicator
dominictb Aug 19, 2026
cd6051e
Show success button based on statusTone
dominictb Aug 19, 2026
55a6664
Update Fix case message
dominictb Aug 19, 2026
63f35ea
Add statusBadgeTone to differentiate badge and message tone
dominictb Aug 19, 2026
ac052c8
Set badgeTone as success so Active badge not shown as error
dominictb Aug 19, 2026
018213d
Fix test
dominictb Aug 19, 2026
129a6bb
Update LinkBankAccountToPlaid param
dominictb Aug 19, 2026
8c11957
Update account selector UI
dominictb Aug 19, 2026
1c90757
Call OpenPlaidBankAccountSelector to get plaidAccountID and plaidAcce…
dominictb Aug 19, 2026
0d642d6
Fix mode does not need Plaid credentials
dominictb Aug 19, 2026
eb7db7c
Remove account selector UI
dominictb Aug 19, 2026
5839406
Automatically select account based on last four mask
dominictb Aug 19, 2026
8057a6d
Auto submit the resolved bank account
dominictb Aug 19, 2026
e18ccb1
Do not allow retrial
dominictb Aug 19, 2026
6c32010
remove redundant variables
dominictb Aug 19, 2026
7459c69
Fix lint
dominictb Aug 19, 2026
36d9803
Exclude fix mode
dominictb Aug 19, 2026
161ec42
Fix lint
dominictb Aug 19, 2026
670ec7b
Update LinkPlaidToBankAccount parameters
dominictb Aug 20, 2026
90ee494
Let LinkPlaidToBankAccount automatically resolves the account without…
dominictb Aug 20, 2026
61e6ef9
Remove unused code
dominictb Aug 20, 2026
403cbb6
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Aug 24, 2026
67d1765
Update description text style
dominictb Aug 24, 2026
a4e7234
Update description text style
dominictb Aug 24, 2026
8c6f9d3
Pass the matching waitlisted policy to the link command
dominictb Aug 24, 2026
e989874
Surface generic link failures in the account state
dominictb Aug 24, 2026
aa474de
CONSISTENCY-14
dominictb Aug 24, 2026
67eae49
Applied translations
dominictb Aug 24, 2026
04a865a
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Aug 25, 2026
cacdafc
Remove brickRoadIndicator prop
dominictb Aug 25, 2026
4ea35b7
Show success message in GBR style
dominictb Aug 25, 2026
9e7adfe
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Sep 3, 2026
61b8d50
Update GBR and RBR text color to match Badge text color
dominictb Sep 3, 2026
c511d2a
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Sep 13, 2026
1eeca6e
Do not append generic error message
dominictb Sep 13, 2026
a120ad1
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Sep 16, 2026
fda630f
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Sep 24, 2026
a95a957
Drop policyID from command parameters
dominictb Sep 24, 2026
341ea30
Update callers
dominictb Sep 24, 2026
43d8d20
Remove the helper to resolve policyID param
dominictb Sep 24, 2026
6c586ac
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Oct 1, 2026
6462aa8
Remove unused icon
dominictb Oct 1, 2026
800ced5
Add renderer for GBR tag
dominictb Oct 1, 2026
99c137b
Add the renderer to the list of HTML renderers
dominictb Oct 1, 2026
5a25f83
Style the GBR
dominictb Oct 1, 2026
38fbd32
Render rbr tag for success text
dominictb Oct 1, 2026
302c730
Drop redundant import
dominictb Oct 1, 2026
0a7bafd
Combine succes and failureData as finallyData
dominictb Oct 1, 2026
c82ca37
Use Set for card on waitlist policyIDs
dominictb Oct 1, 2026
f5b787a
Use Set for card on waitlist policyIDs
dominictb Oct 1, 2026
c4d40aa
Drop redundant condition
dominictb Oct 1, 2026
5393bb6
Update tests
dominictb Oct 1, 2026
104f270
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Oct 1, 2026
2d177cd
Fix lint
dominictb Oct 1, 2026
34f9077
Add accessibility label for the action button
dominictb Oct 1, 2026
98e0d5d
Add accessibility label for the action button
dominictb Oct 1, 2026
ba74037
Annouce results
dominictb Oct 1, 2026
d49edaa
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Oct 9, 2026
495c713
Add missing field to AccountData type
dominictb Oct 9, 2026
f9bfbed
Check settlement account by AccountData as well
dominictb Oct 9, 2026
350bc9b
Revert bad merge commit changes
dominictb Oct 9, 2026
b652f1e
Drop GBRRenderer now that its style is already defined in base engine
dominictb Oct 9, 2026
67f8bfb
Add tests for new field
dominictb Oct 12, 2026
51e4fd7
Add an util to check if any BA needs Plaid fixing
dominictb Oct 12, 2026
8331342
Show RBR in case Plaid needs fixing
dominictb Oct 12, 2026
e2e5100
Update tests for the RBR
dominictb Oct 12, 2026
fafd2ff
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Oct 16, 2026
2304e7b
Add the errorFields to bank account model
dominictb Oct 18, 2026
f450bc0
Add the Plaid wrong account error constant
dominictb Oct 18, 2026
0734ea1
Clear the errorFields properly
dominictb Oct 18, 2026
165fbf6
Show the error
dominictb Oct 18, 2026
8455a4b
Merge branch 'main' of github.com:dominictb/App into feat/Plaid-linki…
dominictb Oct 23, 2026
b4e1078
Add Plaid linking params to navigation parameters
dominictb Oct 23, 2026
c0c59a8
Fix typecheck
dominictb Oct 23, 2026
203747c
Specify receivedRedirectURI for Plaid Link
dominictb Oct 23, 2026
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
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions src/CONST/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -812,6 +812,7 @@ const CONST = {
PRODUCT_UPDATE_SEPTEMBER_2026: 'productUpdateSeptember2026',
},
BANK_ACCOUNT: {
PLAID_WRONG_ACCOUNT_ERROR_FIELD: 'plaidWrongAccount',
BENEFICIAL_OWNER_INFO_STEP: {
BENEFICIAL_OWNER_DATA: {
BENEFICIAL_OWNER_KEYS: 'beneficialOwnerKeys',
Expand Down
5 changes: 5 additions & 0 deletions src/ROUTES.ts
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,11 @@ const DYNAMIC_ROUTES = {
entryScreens: [SCREENS.SETTINGS.WALLET.ROOT, SCREENS.WORKSPACE.WORKFLOWS],
getRoute: (bankAccountID: number | undefined) => `global-reimbursements/${bankAccountID}` as const,
},
BANK_ACCOUNT_LINK_PLAID: {
path: ':bankAccountID/link-plaid',
entryScreens: [SCREENS.SETTINGS.WALLET.ROOT],
getRoute: (bankAccountID: string) => `${bankAccountID}/link-plaid` as const,
},
BANK_ACCOUNT_VERIFY_ACCOUNT: {
path: 'verify-bank-account',
entryScreens: [SCREENS.REIMBURSEMENT_ACCOUNT],
Expand Down
1 change: 1 addition & 0 deletions src/SCREENS.ts
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,7 @@ const SCREENS = {
SHARE_BANK_ACCOUNT: 'Settings_Wallet_Share_Bank_Account',
EDIT_BANK_ACCOUNT_NICKNAME: 'Settings_Wallet_Edit_Bank_Account_Nickname',
DYNAMIC_WISE_GLOBAL_REIMBURSEMENTS_INTRO: 'Dynamic_Settings_Wallet_Wise_Global_Reimbursements_Intro',
DYNAMIC_BANK_ACCOUNT_LINK_PLAID: 'Dynamic_Settings_Wallet_BankAccount_LinkPlaid',
TRAVEL_CVV: 'Settings_Wallet_Travel_CVV',
TRAVEL_CVV_VERIFY_ACCOUNT: 'Settings_Wallet_Travel_CVV_VerifyAccount',
PERSONAL_CARD_DETAILS: 'Settings_Wallet_Personal_Card_Details',
Expand Down
23 changes: 19 additions & 4 deletions src/components/ConnectionStatusMessage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,11 @@ type ConnectionStatusMessageProps = {
statusTone?: 'default' | 'success' | 'danger';
onLinkPress?: ComponentProps<typeof RenderHTML>['onLinkPress'];
shouldIncludeHorizontalPadding?: boolean;

/**
* Accessible name for the action button
*/
actionAccessibilityLabel?: string;
};

function ConnectionStatusMessage({
Expand All @@ -32,6 +37,7 @@ function ConnectionStatusMessage({
statusTone = 'default',
onLinkPress,
shouldIncludeHorizontalPadding = true,
actionAccessibilityLabel,
}: ConnectionStatusMessageProps) {
const icons = useMemoizedLazyExpensifyIcons(['DotIndicator']);
const theme = useTheme();
Expand All @@ -48,15 +54,23 @@ function ConnectionStatusMessage({
}
const shouldShowActionButton = !!actionText && !!onActionPress;
const isDangerStatus = statusTone === 'danger';
const messageTag = isDangerStatus ? 'rbr' : 'muted-text-label';
const isSuccessStatus = statusTone === 'success';
let messageTag;
if (isDangerStatus) {
messageTag = 'rbr';
} else if (isSuccessStatus) {
messageTag = 'gbr';
} else {
messageTag = 'muted-text-label';
}
const messageHTML = `<${messageTag}>${message ?? ''}</${messageTag}>`;
const messageContent = (
<View style={[styles.flexRow, styles.alignItemsCenter, styles.flex1]}>
{isDangerStatus && (
{(isDangerStatus || isSuccessStatus) && (
<View style={[styles.offlineFeedbackErrorDot, styles.mr2]}>
<Icon
src={icons.DotIndicator}
fill={theme.danger}
fill={isDangerStatus ? theme.danger : theme.iconSuccessFill}
/>
</View>
)}
Expand All @@ -71,11 +85,12 @@ function ConnectionStatusMessage({

const actionButton = shouldShowActionButton ? (
<Button
variant={CONST.BUTTON_VARIANT.DANGER}
variant={isSuccessStatus ? CONST.BUTTON_VARIANT.SUCCESS : CONST.BUTTON_VARIANT.DANGER}
size={CONST.BUTTON_SIZE.SMALL}
style={styles.alignSelfStart}
onPress={onActionPress}
isDisabled={isActionDisabled}
accessibilityLabel={actionAccessibilityLabel}
>
<Button.Text>{actionText}</Button.Text>
</Button>
Expand Down
10 changes: 10 additions & 0 deletions src/components/HTMLEngineProvider/BaseHTMLEngineProvider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,16 @@ function BaseHTMLEngineProvider({textSelectable = false, children, enableExperim
},
contentModel: HTMLContentModel.block,
}),
gbr: HTMLElementModel.fromCustomModel({
tagName: 'gbr',
getMixedUAStyles: (tnode) => {
if (tnode.attributes.issmall === undefined) {
return {...styles.formError, ...styles.mb0, ...styles.badgeSuccessText};
}
return {...styles.formError, ...styles.mb0, ...styles.textMicro, ...styles.badgeSuccessText};
},
contentModel: HTMLContentModel.block,
}),
'muted-link': HTMLElementModel.fromCustomModel({
tagName: 'muted-link',
mixedUAStyles: {...styles.subTextFileUpload, ...styles.textSupporting},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ function RBRRenderer({tnode, style}: CustomRendererProps<TText | TPhrasing>) {
numberOfLines={shouldShowEllipsis ? 1 : 0}
ellipsizeMode="tail"
key={props.key}
style={[styles.textLabelError, flattenStyle, isSmall ? styles.textMicro : {}]}
style={[styles.textLabelError, styles.badgeDangerText, flattenStyle, isSmall ? styles.textMicro : {}]}
Comment thread
dominictb marked this conversation as resolved.
>
{props.childElement}
</Text>
Expand Down
4 changes: 4 additions & 0 deletions src/components/Icon/chunks/illustrations.chunk.ts
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,9 @@ import AiBot from '@assets/images/simple-illustrations/simple-illustration__ai-b
import Alert from '@assets/images/simple-illustrations/simple-illustration__alert.svg';
import Members from '@assets/images/simple-illustrations/simple-illustration__approval-members.svg';
import Approval from '@assets/images/simple-illustrations/simple-illustration__approval.svg';
import BankCheck from '@assets/images/simple-illustrations/simple-illustration__bank-check.svg';
import ShareBank from '@assets/images/simple-illustrations/simple-illustration__bank-share.svg';
import BankX from '@assets/images/simple-illustrations/simple-illustration__bank-x.svg';
import BankCoin from '@assets/images/simple-illustrations/simple-illustration__bankcoin.svg';
import Binoculars from '@assets/images/simple-illustrations/simple-illustration__binoculars.svg';
import BlueShield from '@assets/images/simple-illustrations/simple-illustration__blueshield.svg';
Expand Down Expand Up @@ -358,7 +360,9 @@ const Illustrations = {
AiBot,
Building,
BuildingCross,
BankCheck,
BankCoin,
BankX,
Coins,
CardDenied,
CardIntoWallet,
Expand Down
12 changes: 12 additions & 0 deletions src/languages/de.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2854,6 +2854,18 @@ const translations: TranslationDeepObject<typeof en> = {
confirmTestTransactions: 'Bitte bestätigen Sie Testtransaktionen',
accountRequiresAttention: 'Dieses Konto erfordert Ihre Aufmerksamkeit',
unlock: 'Entsperren',
plaidBrokenReconnect: 'Beheben Sie Ihre Plaid-Verbindung für ein genaueres Limit Ihrer Expensify Karte',
plaidConnectForLimit: 'Mit Plaid verbinden, um ein genaueres Limit für Ihre Expensify Karte zu erhalten',
connect: 'Verbinden',
},
linkPlaid: {
title: 'Mit Plaid verbinden',
successHeading: 'Erfolgreiche Verbindung',
successDescription: 'Danke, dass Sie Plaid verbunden haben!',
failureHeading: 'Verbindung fehlgeschlagen',
failureDescription: '<muted-text>Bitte versuchen Sie es erneut oder <concierge-link>wenden Sie sich an Concierge</concierge-link>.</muted-text>',
wrongAccountHeading: 'Falsches Bankkonto',
wrongAccountDescription: 'Bitte wählen Sie das passende Bankkonto in Plaid aus.',
},
wiseGlobalReimbursementsIntro: {
title: 'Globale Rückerstattungen einrichten?',
Expand Down
12 changes: 12 additions & 0 deletions src/languages/el.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2910,6 +2910,18 @@ const translations: TranslationDeepObject<typeof en> = {
confirmTestTransactions: 'Παρακαλούμε επιβεβαιώστε τις δοκιμαστικές συναλλαγές',
accountRequiresAttention: 'Αυτός ο λογαριασμός χρειάζεται προσοχή',
unlock: 'Ξεκλείδωμα',
plaidBrokenReconnect: 'Διορθώστε τη σύνδεσή σας με το Plaid για πιο ακριβές όριο στην Κάρτα Expensify',
plaidConnectForLimit: 'Συνδεθείτε με το Plaid για πιο ακριβές όριο στην Κάρτα Expensify',
connect: 'Σύνδεση',
},
linkPlaid: {
title: 'Σύνδεση με το Plaid',
successHeading: 'Επιτυχής σύνδεση',
successDescription: 'Ευχαριστούμε που συνδεθήκατε με το Plaid!',
failureHeading: 'Ανεπιτυχής σύνδεση',
failureDescription: '<muted-text>Παρακαλούμε δοκιμάστε ξανά ή <concierge-link>επικοινωνήστε με το Concierge</concierge-link>.</muted-text>',
wrongAccountHeading: 'Λάθος τραπεζικός λογαριασμός',
wrongAccountDescription: 'Παρακαλούμε επιλέξτε τον αντίστοιχο τραπεζικό λογαριασμό στο Plaid.',
},
wiseGlobalReimbursementsIntro: {
title: 'Να ρυθμιστούν οι παγκόσμιες αποζημιώσεις;',
Expand Down
12 changes: 12 additions & 0 deletions src/languages/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2985,6 +2985,18 @@ const translations = {
confirmTestTransactions: 'Please confirm test transactions',
accountRequiresAttention: 'This account requires attention',
unlock: 'Unlock',
plaidBrokenReconnect: 'Fix your Plaid connection for a more accurate Expensify Card limit',
plaidConnectForLimit: 'Connect to Plaid for a more accurate Expensify Card limit',
connect: 'Connect',
},
linkPlaid: {
title: 'Connect to Plaid',
successHeading: 'Successful connection',
successDescription: 'Thanks for connecting to Plaid!',
failureHeading: 'Unsuccessful connection',
failureDescription: '<muted-text>Please try again or <concierge-link>reach out to Concierge</concierge-link>.</muted-text>',
wrongAccountHeading: 'Wrong bank account',
wrongAccountDescription: 'Please select the matching bank account in Plaid.',
},
assignedCards: 'Cards',
assignedCardsDescription: 'Transactions from assigned cards sync automatically.',
Expand Down
12 changes: 12 additions & 0 deletions src/languages/es.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2759,6 +2759,18 @@ const translations: TranslationDeepObject<typeof en> = {
confirmTestTransactions: 'Confirma las transacciones de prueba',
accountRequiresAttention: 'Esta cuenta requiere atención',
unlock: 'Desbloquear',
plaidBrokenReconnect: 'Repara tu conexión con Plaid para tener un límite de la Tarjeta Expensify más preciso',
plaidConnectForLimit: 'Conéctate a Plaid para tener un límite más preciso en la Tarjeta Expensify',
connect: 'Conectar',
},
linkPlaid: {
title: 'Conectar con Plaid',
successHeading: 'Conexión correcta',
successDescription: '¡Gracias por conectarte a Plaid!',
failureHeading: 'Conexión fallida',
failureDescription: '<muted-text>Por favor, inténtalo de nuevo o <concierge-link>contacta con Concierge</concierge-link>.</muted-text>',
wrongAccountHeading: 'Cuenta bancaria incorrecta',
wrongAccountDescription: 'Selecciona la cuenta bancaria correspondiente en Plaid.',
},
wiseGlobalReimbursementsIntro: {
title: '¿Configurar reembolsos globales?',
Expand Down
12 changes: 12 additions & 0 deletions src/languages/fr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2859,6 +2859,18 @@ const translations: TranslationDeepObject<typeof en> = {
confirmTestTransactions: 'Veuillez confirmer les transactions de test',
accountRequiresAttention: 'Ce compte nécessite une attention particulière',
unlock: 'Déverrouiller',
plaidBrokenReconnect: 'Corrigez votre connexion Plaid pour un plafond de Carte Expensify plus précis',
plaidConnectForLimit: 'Connectez Plaid pour une limite de Carte Expensify plus précise',
connect: 'Connecter',
},
linkPlaid: {
title: 'Se connecter à Plaid',
successHeading: 'Connexion réussie',
successDescription: 'Merci de vous être connecté à Plaid !',
failureHeading: 'Connexion infructueuse',
failureDescription: '<muted-text>Veuillez réessayer ou <concierge-link>contactez Concierge</concierge-link>.</muted-text>',
wrongAccountHeading: 'Mauvais compte bancaire',
wrongAccountDescription: 'Veuillez sélectionner le compte bancaire correspondant dans Plaid.',
},
wiseGlobalReimbursementsIntro: {
title: 'Configurer les remboursements globaux ?',
Expand Down
12 changes: 12 additions & 0 deletions src/languages/it.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2843,6 +2843,18 @@ const translations: TranslationDeepObject<typeof en> = {
confirmTestTransactions: 'Conferma le transazioni di prova',
accountRequiresAttention: 'Questo conto richiede attenzione',
unlock: 'Sblocca',
plaidBrokenReconnect: 'Sistema la connessione Plaid per un limite della Carta Expensify più preciso',
plaidConnectForLimit: 'Connettiti a Plaid per un limite della Carta Expensify più preciso',
connect: 'Connetti',
},
linkPlaid: {
title: 'Connetti a Plaid',
successHeading: 'Connessione riuscita',
successDescription: 'Grazie per esserti connesso a Plaid!',
failureHeading: 'Connessione non riuscita',
failureDescription: '<muted-text>Riprova oppure <concierge-link>contatta Concierge</concierge-link>.</muted-text>',
wrongAccountHeading: 'Conto bancario errato',
wrongAccountDescription: 'Seleziona il conto bancario corrispondente in Plaid.',
},
wiseGlobalReimbursementsIntro: {
title: 'Configurare i rimborsi globali?',
Expand Down
12 changes: 12 additions & 0 deletions src/languages/ja.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2822,6 +2822,18 @@ const translations: TranslationDeepObject<typeof en> = {
confirmTestTransactions: 'テスト取引を確認してください',
accountRequiresAttention: 'このアカウントには対応が必要です',
unlock: 'ロック解除',
plaidBrokenReconnect: 'より正確な Expensify カードの限度額のために Plaid 接続を修正しましょう',
plaidConnectForLimit: 'Plaid に接続して、より正確な Expensify カードの利用限度額を設定しましょう',
connect: '接続',
},
linkPlaid: {
title: 'Plaid に接続',
successHeading: '接続が成功しました',
successDescription: 'Plaid に接続していただきありがとうございます!',
failureHeading: '接続に失敗しました',
failureDescription: '<muted-text>もう一度お試しいただくか、<concierge-link>Concierge へお問い合わせください</concierge-link>。</muted-text>',
wrongAccountHeading: '誤った銀行口座',
wrongAccountDescription: 'Plaid で一致する銀行口座を選択してください。',
},
wiseGlobalReimbursementsIntro: {
title: 'グローバル払い戻しを設定しますか?',
Expand Down
Loading
Loading