Unit's white-label UIs have customizable language configuration.
In order to create a new language configuration, you would need to upload a JSON that contains your language configuration via an API.
In response, you will get a URL. You will then specify that URL as you initialize any UI component, under the language attribute.
The settings that make up a language are divided into two main categories - global settings and component specific settings.
Global settings are meant to reflect general terms like month names.
Component specific settings are meant to allow you to customize texts that are unique to a specific component (e.g. the title of the account actions menu). On the component specific level, you may also provide overrides to any parameter specified in the global settings.
note
Please reach out to Unit if you need additional customization options to support your brand.
{"data":{"type":"whiteLabelLanguage","attributes":{"name":"Default English Localization","local":"en","global":{"days":{"day":"Day","days":"Days","yesterday":"Yesterday","today":"Today","tomorrow":"Tomorrow"},"toasts":{"copy":"Copied"},"months":{"january":"January","february":"February","march":"March","april":"April","may":"May","june":"June","july":"July","august":"August","september":"September","october":"October","november":"November","december":"December"},"states":{"AL":"Alabama","AK":"Alaska","AZ":"Arizona","AR":"Arkansas","CA":"California","CO":"Colorado","CT":"Connecticut","DE":"Delaware","DC":"District Of Columbia","FL":"Florida","GA":"Georgia","HI":"Hawaii","ID":"Idaho","IL":"Illinois","IN":"Indiana","IA":"Iowa","KS":"Kansas","KY":"Kentucky","LA":"Louisiana","ME":"Maine","MD":"Maryland","MA":"Massachusetts","MI":"Michigan","MN":"Minnesota","MS":"Mississippi","MO":"Missouri","MT":"Montana","NE":"Nebraska","NV":"Nevada","NH":"New Hampshire","NJ":"New Jersey","NM":"New Mexico","NY":"New York","NC":"North Carolina","ND":"North Dakota","OH":"Ohio","OK":"Oklahoma","OR":"Oregon","PA":"Pennsylvania","RI":"Rhode Island","SC":"South Carolina","SD":"South Dakota","TN":"Tennessee","TX":"Texas","UT":"Utah","VT":"Vermont","VA":"Virginia","WA":"Washington","WV":"West Virginia","WI":"Wisconsin","WY":"Wyoming"},"accountPurpose":{"taxes":"taxes","saving":"saving","savings":"savings","generic":"generic","account":"account","checking":"checking","expenses":"expenses","spending":"spending"}},"elementsCard":{"title":{"virtual":"Virtual Card {{cardNumberLast4Digits}}","physical":"Physical Card {{cardNumberLast4Digits}}"},"goodThru":"GOOD \n THRU","types":{"debit":"Debit","credit":"Credit","individual":"Individual","business":"Business","virtual":"Virtual","physical":"Physical"},"statuses":{"lost":"Lost","active":"Active","stolen":"Stolen","frozen":"Frozen","inactive":"Inactive","closedByCustomer":"Closed","suspectedFraud":"Disabled"},"sensitiveDataButton":{"show":"Show Details","hide":"Hide Details"},"menuItems":{"title":"Manage Card","freeze":"Freeze","close":"Close Card","unfreeze":"Unfreeze","managePin":"Manage PIN","replace":"Replace Card","lostOrStolen":"Report Lost or Stolen","addToWallet":"Manage {{walletName}} Wallet"},"actions":{"common":{"proceedButton":"Proceed","backButton":"Back","errorResponse":{"title":"Something went wrong","description":"Please try again later"}},"activate":{"overlayButton":"Activate","form":{"flowTitle":"Card Activation","mainTitle":"Activate your card","description":"Provide your card details below","expirationDate":{"label":"Expiration Date","errorMessages":{"required":"Required","expirationDate":"The expiration date is invalid"}},"cvv2":{"label":"CVV2","errorMessages":{"required":"Required","securityCode":"The security code is invalid"}}},"response":{"title":"The card has been activated","description":"Taking you to set up your Pin"}},"freeze":{"flowTitle":"Freeze card","mainTitle":"Are you sure you want to freeze this card?","description":"You wonโt be able to use your card while it is frozen, but you can unfreeze it at any time."},"unfreeze":{"flowTitle":"Unfreeze card","mainTitle":"Are you sure you want to unfreeze this card?"},"managePin":{"flowTitle":"Manage PIN","setPin":{"mainTitle":"Set your new card PIN","enterPin":{"label":"Enter a four digit PIN code","errorMessages":{"required":"Required","pattern":"Make sure the PIN includes digits only"}},"reenterPin":{"label":"Validate PIN","errorMessages":{"required":"Required","pattern":"Make sure the PIN includes digits only","comparison":"Make sure to enter the same PIN number"}},"response":{"title":"Your card PIN is set","description":"Your card is ready for use"}},"changePin":{"mainTitle":"Change your PIN","currentPin":{"label":"Your current PIN","errorMessages":{"required":"Required","pattern":"Make sure the PIN includes digits only"}},"newPin":{"label":"New PIN code","errorMessages":{"required":"Required","pattern":"Make sure the PIN includes digits only"}},"newPinConfirm":{"label":"Confirm new PIN","errorMessages":{"required":"Required","pattern":"Make sure the PIN includes digits only","comparison":"Make sure to enter the same PIN number"}},"response":{"title":"Your card PIN is set"}}},"replace":{"flowTitle":"Replace card","mainTitle":"Confirm shipping address","description":"Your card will be shipped to this address in 5-7 business days","formButton":"Change address","form":{"title":"Update your shipping address","subtitle":"Your card will be shipped to this address in 5-7 business days","submitButton":"Confirm address","street":{"label":"Street address","errorMessages":{"required":"Please enter your street address"}},"street2":{"label":"Apt, Suite, Unit"},"city":{"label":"City","errorMessages":{"required":"Please enter your city"}},"state":{"label":"State","errorMessages":{"required":"Please select your state"}},"postalCode":{"label":"Zip code","errorMessages":{"required":"Please enter your zip code","pattern":"Zip code must be 5 or 9 digits long"}}},"response":{"title":"Your replacement card is on the way","description":"Expect your card to arrive in 5-7 business days"}},"report":{"flowTitle":"Report card","mainTitle":"Report card ending with {{maskedCardNumberLast4Digits}}","description":"What happened to your card?","confirmationTitle":"Are you sure you want to report this card?","confirmationDescription":"Reporting your card will close it permanently.","radioButtons":{"lost":"My card was lost","stolen":"My card was stolen"},"admonition":{"description":"A Lost or Stolen card will be permanently closed.","link":"Learn more"},"response":{"title":"Your card was closed","description":{"lost":"Your card was reported Lost and you won't be able to make transactions using it","stolen":"Your card was reported Stolen and you won't be able to make transactions using it"}}},"close":{"flowTitle":"Close card","mainTitle":"Are you sure you want to close card ending with {{maskedCardNumberLast4Digits}}?","description":"You won't be able to activate this card later","admonition":{"description":"Closing this card is permanent and cannot be reversed.","link":"Learn more"},"response":{"title":"Your card is closed","description":"It can no longer be used"}},"addToWallet":{"flowTitle":"Mobile wallet","mainTitle":"Add your card to {{walletName}} wallet","description":"Add your card for easy payment with the wallet app anywhere.","response":{"title":"Your card was successfully added to {{walletName}} wallet"}}}},"elementsAccount":{"title":"{{accountPurposeWords}} {{maskedAccountNumber}}","availableBalance":"Available Balance","creditBalance":"Credit Balance","leftToSpend":"Left to spend","moreDetails":"More Details","accountActions":{"title":"Account Actions","accountDetails":"Account Details","accountStatements":"Account Statements","bankVerificationLetter":"Bank Verification Letter"},"accountDetails":{"title":"Account {{maskedAccountNumber}}","subtitle":"{{accountName}}","accountOwner":"Account owner","accountNumber":"Account number","accountRoutingNumber":"Routing number","accountPurpose":"Account Purpose","bank":"Bank"},"accountStatements":{"title":"Account Statements","subtitle":"Download account statement for account ending with #{{accountNumberLast4Digits}}","downloadStatementButton":"Save Statement","downloadStatementErrorMessage":"Download failed , try again later","emptyStatementsMessage":"There are no account statements available"},"accountList":{"title":"Switch Account","accountTitle":"{{accountPurposeWords}} {{maskedAccountNumber}}","accountSubtitle":"{{accountName}}"}},"elementsAchDebit":{"flowTitle":"Fund my account","accountsListStage":{"title":"Pull funds to","listTitle":"Select destination account","backButton":"Back","destination":"Destination account"},"counterpartiesListStage":{"title":"Pull funds from","addButton":"New account"},"emptyListStage":{"title":"Pull funds from","nextButton":"Connect New Account","message":{"title":"Connect your first account","subtitle":"Log in instantly and securely to your accounts, no matter in which bank. This will allow you to transfer money and fund your account"}},"counterpartyAddedStage":{"successMessage":{"firstLine":"New account was","secondLine":"connected successfully!"}},"enterAmountStage":{"title":"New transfer","nextButton":"Continue","backButton":"Back","input":{"title":"Amount"}},"reviewStage":{"title":"Review transfer","nextButton":"Complete payment","backButton":"Back","descriptionList":{"amount":"Amount","fee":"Fee","date":"Date"},"input":{"label":"Description (optional)","note":"Visible to the recipient"}},"completedStage":{"messages":{"pendingMessage":{"title":"Account funded with ${{amount}}","subtitle":"Transfer expected by {{date}}"},"errorMessage":{"title":"Something went wrong","subtitle":"Please try again later"},"rejectedMessages":{"title":"The transfer could not be sent","subtitle":{"accountClosed":"The recipient's account has been closed","accountFrozen":"The recipient's account has been frozen","insufficientFunds":"The recipient's account has insufficient funds","dailyAchDebitLimitExceeded":"The payment could not be created, since it puts you over your daily ACH debit limit","monthlyAchDebitLimitExceeded":"The payment could not be created, since it puts you over your monthly ACH debit limit"}}}}},"elementsActivity":{"activityTable":{"title":"Account Activity","tableSubTitle":{"pending":"Pending","recentActivity":"Recent Activity"},"columns":{"createdAt":"DATE","summary":"DESCRIPTION","type":"TYPE","amount":"AMOUNT","account":"ACCOUNT"},"messages":{"filterTooNarrow":"Your filter settings are too narrow, try again.","noActivity":"There was no activity in your account."},"backToTop":"Back to top"},"activityRecord":{"paidBy":"Paid by","date":"Date","time":"Time","method":"Method","purchaseFrom":"Purchase from","address":"Address","type":"Type","status":"Status","name":"Name","routingNumber":"Routing Number","summary":"Summary","direction":"Direction","madeBy":"Made by","atmName":"ATM Name","atmLocation":"ATM Location","purpose":"Purpose","accountNumber":"Account Number"},"activityFilters":{"title":"Filter","directionFilter":{"title":"Direction","all":"All","received":"Received","sent":"Sent"},"typeFilter":{"title":"Type","all":"All","checks":"Checks","bankTransfer":"Bank Transfer","cards":"Cards","atm":"ATM","interest":"Interest","fee":"Fee","reward":"Reward"},"dateFilter":{"title":"Date","allTime":"All time","last7days":"Last 7 days","last30days":"Last 30 days","last3months":"Last 3 months","last6months":"Last 6 months","lastYear":"Last year"},"actions":{"clearAll":"Clear All","applyFilters":"Apply filters"}}},"elementsAchCredit":{"flowTitle":"Make Payment","accountsListStage":{"title":"Send payment from"},"counterpartiesListStage":{"title":"Send payment to","backButton":"Back","listTitle":"Select destination recipient","addButton":"New recipient","destination":"Destination recipient"},"emptyListStage":{"title":"Send payment to","nextButton":"Add New Recipient","backButton":"Back","destination":"Destination recipient","message":{"title":"You havenโt added any recipients","subtitle":"Easily add your first recipient and transfer money easily & quickly"}},"addNewCounterpartyStage":{"title":"New recipient","nextButton":"Continue","backButton":"Back","form":{"fullName":{"label":"Full Name","errorMessages":{"minLength":"Full name must contain at least 2 letters","required":"Full name is required"}},"routingNumber":{"label":"Routing No.","errorMessages":{"pattern":"Routing number must be 9 digits long","required":"Routing number is required"},"unknownInstitution":{"message":"Unknown Institution","tooltip":"The routing number was not recognized. Please verify the routing number is correct before you proceed. If the routing number is wrong, the payment may be returned."}},"accountNumber":{"label":"Account No.","errorMessages":{"pattern":"Account number must contain only digits","required":"Account number is required"}},"recipient":{"label":"The recipient is","personTitle":"A person","businessTitle":"A business","notSureTitle":"I'm not sure"},"saveCounterparty":{"label":"Save contact for future transactions"}}},"counterpartyAddedStage":{"successMessage":{"firstLine":"New recipient was","secondLine":"added successfully!"}},"enterAmountStage":{"title":"New payment","nextButton":"Continue","backButton":"Back","input":{"title":"Amount","balance":{"validMessage":"Available Balance","errorMessage":"Exceeding the available balance of"}}},"reviewStage":{"title":"Review payment","nextButton":"Complete payment","backButton":"Back","footnote":{"regularText":"Funds will be available","boldText":"in 1-3 business days"},"descriptionList":{"amount":"Amount","date":"Date","fee":"Fee"},"input":{"label":"Description (optional)","note":"Visible to the recipient"}},"completedStage":{"messages":{"pendingMessage":{"title":"Payment created","subtitle":"Transfer expected by {{date}}"},"errorMessage":{"title":"Something went wrong","subtitle":"Please try again later"},"rejectedMessages":{"title":"The payment could not be sent","subtitle":{"accountClosed":"The recipient's account has been closed","accountFrozen":"The recipient's account has been frozen","insufficientFunds":"The recipient's account has insufficient funds","dailyAchCreditLimitExceeded":"The payment could not be created, since it puts you over your daily ACH credit limit","monthlyAchCreditLimitExceeded":"The payment could not be created, since it puts you over your monthly ACH credit limit"}}}},"withPlaid":{"flowTitle":"Make Payment","accountsListStage":{"title":"Pull funds from"},"counterpartiesListStage":{"title":"Push funds to","backButton":"Back","listTitle":"Select destination account","addButton":"New account","destination":"Destination account"},"emptyListStage":{"title":"Send payment to","nextButton":"Add New Recipient","backButton":"Back","destination":"Destination account","message":{"title":"You havenโt added any accounts","subtitle":"Easily add your first account and transfer money easily & quickly"}},"counterpartyAddedStage":{"successMessage":{"firstLine":"New account was","secondLine":"connected successfully!"}},"enterAmountStage":{"title":"New transfer","nextButton":"Continue","backButton":"Back","input":{"title":"Amount"}},"reviewStage":{"title":"Review transfer","nextButton":"Complete payment","backButton":"Back","footnote":{"regularText":"Funds will be available","boldText":"in 1-3 business days"},"descriptionList":{"amount":"Amount","date":"Date","fee":"Fee"},"input":{"label":"Description (optional)","note":"Visible to the account"}},"completedStage":{"messages":{"pendingMessage":{"title":"Payment created","subtitle":"Transfer expected by {{date}}"},"errorMessage":{"title":"Something went wrong","subtitle":"Please try again later"},"rejectedMessages":{"title":"The transfer could not be sent","subtitle":{"accountClosed":"The recipient's account has been closed","accountFrozen":"The recipient's account has been frozen","insufficientFunds":"The recipient's account has insufficient funds","dailyAchCreditLimitExceeded":"**** exceeds your daily / monthly limit"}}}}}},"elementsBookPayment":{"flowTitle":"Make Payment","accountsListStage":{"title":"Send payment from"},"counterpartiesListStage":{"title":"Send payment to","listTitle":"Select destination account","backButton":"Back","destination":"Destination account"},"enterAmountStage":{"title":"New transfer","nextButton":"Continue","backButton":"Back","input":{"title":"Amount","balance":{"validMessage":"Available Balance","errorMessage":"Exceeding the available balance of"}}},"reviewStage":{"title":"Review transfer","nextButton":"Complete payment","backButton":"Back","footnote":{"regularText":"Funds will be available","boldText":"immediately"},"descriptionList":{"amount":"Amount","date":"Date"},"input":{"label":"Description (optional)","note":"Visible to the recipient"}},"completedStage":{"messages":{"sentMessage":{"title":"You've sent ${{amount}} to {{counterparty}}","subtitle":""},"errorMessage":{"title":"Something went wrong!","subtitle":"Please try again later"},"rejectedMessages":{"title":"The payment could not be sent","subtitle":{"accountClosed":"The recipient's account has been closed","accountFrozen":"The recipient's account has been frozen","insufficientFunds":"The recipient's account has insufficient funds"}}}}},"elementsFundAccount":{"flowTitle":"Fund my account","accountsListStage":{"title":"Push funds to","backButton":"Back","destination":"Destination account"},"counterpartiesListStage":{"title":"Pull funds from","addButton":"New card"},"emptyListStage":{"title":"Pull funds from","nextButton":"Add New Card","message":{"title":"Connect a Debit card","subtitle":"Instantly fund your account by connecting your card"}},"counterpartyAddedStage":{"successMessage":{"firstLine":"New card was added","secondLine":"successfully!"}},"enterAmountStage":{"title":"Push funds to","nextButton":"Continue","backButton":"Back","input":{"title":"Amount"}},"reviewStage":{"title":"Review payment","nextButton":"Complete payment","backButton":"Back","footnote":{"regularText":"Funds will be available","boldText":"immediately"},"descriptionList":{"amount":"Amount","fee":"fee","date":"Date"},"input":{"label":"Description (optional)","note":"Visible to the recipient"}},"completedStage":{"messages":{"pendingMessage":{"title":"Account funded with ${{amount}}","subtitle":"Transfer expected by {{date}}"},"errorMessage":{"title":"Something went wrong","subtitle":"Please try again later"},"rejectedMessages":{"title":"The payment could not be sent","subtitle":{"accountClosed":"The recipient's account has been closed","accountFrozen":"The recipient's account has been frozen","insufficientFunds":"The recipient's account has insufficient funds"}}}},"addNewCounterpartyStage":{"title":"Pull funds from","nextButton":"Complete payment","backButton":"Back","note":"The card will be saved for future payments","loaderInfo":"Loading...","form":{"title":"Connect a new debit card","sensitiveFields":{"firstName":{"label":"First Name","errorMessages":{"required":"Required"}},"lastName":{"label":"Last Name","errorMessages":{"required":"Required"}},"cardNumber":{"label":"Card Number","errorMessages":{"required":"Required","cardNumber":"is not a valid card number"}},"expirationDate":{"label":"Expiration Date","errorMessages":{"required":"Required","expirationDate":"is not a valid expiration date"}},"cvv2":{"label":"CVV2","errorMessages":{"required":"Required","securityCode":"is not a valid security code"}}},"nonSensitiveFields":{"street":{"label":"Street address","errorMessages":{"required":"Please enter your street address"}},"city":{"label":"City","errorMessages":{"required":"Please enter your city"}},"state":{"label":"State","errorMessages":{"required":"Please select your state"}},"postalCode":{"label":"Zip code","errorMessages":{"required":"Please enter your zip code","pattern":"Zip code must be 5 or 9 digits long"}}}}}},"elementsCheckDeposit":{"enterAmount":{"actionTitle":"Check Deposit","actionSubtitle":"New Check","fromTitle":"Check Deposit","amountTitle":"Check amount","dailyLimitWarning":"Exceeding the daily limit of ","monthlyLimitWarning":"Exceeding the monthly limit of ","nextButton":"Continue","backButton":"Back"},"frontGuide":{"title":"Mobile Check Deposit Guide","placement":"Place the check on a dark surface, in a well lit area","center":"Center the check within the photo borders","hold":"Hold still, weโll capture the photo for you","backButton":"Back","nextButton":"Iโm ready"},"backGuide":{"description":"Your {{brandName}} bank account is managed by {{bankName}}","instruction":"Please make sure to sign the back and write","writeOnBack":"โFor mobile deposit at {{bankName}}โ","nextButton":"Got it"},"checkScan":{"frontTitle":"Front","backTitle":"Back","messages":{"firstMessage":"Make sure to place the check on a dark, flat surface","errorFourCorners":"Make sure all 4 corners of the check are inside the borders","errorTooClose":"Move the camera further away from your check","errorTooFar":"Move the camera closer to your check","errorNotCentered":"Center your document on a dark background","errorTooDark":"There is not enough light on your check","errorLowContrast":"Center your document on a dark background"}},"checkImageReview":{"frontTitle":"Front","backTitle":"Back","retake":"Retake","use":"Use"},"checkDepositReview":{"actionTitle":"Check Deposit","actionSubtitle":"Review deposit","fromTitle":"Check Deposit","amount":"Amount","fee":"Fee","date":"Date","front":"Front","back":"Back","description":"Description (optional)","nextButton":"Authorize deposit","backButton":"Back"},"success":{"actionTitle":"Check deposit submitted","actionSubtitle":"Deposit to {{accountPurpose}} account","processing":"Processing","confirmationNumber":"Confirmation #","infoMessage":"Make sure to keep your check for 14 days or until it clears","nextButton":"Deposit another check"},"failure":{"actionTitle":"Something went wrong","actionSubtitle":"Please try again later","backButton":"Back"}},"elementsMultipleCards":{"title":"Cards","emptyText":"No cards yet...","backToTop":"Back to Top","columns":{"details":"CARD DETAILS","fullName":"CARD HOLDER","account":"ACCOUNT","type":"TYPE","expirationDate":"EXP. DATE","status":"STATUS"}},"elementsNextRepayment":{"title":"Next Repayment","nextRepaymentOn":"Next repayment on","amountDue":"Amount due","amountOverdue":"Amount overdue","due":"Due","dueIn":"Due in"},"elementsProgramDetails":{"limit":"Limit","onHold":"on hold","title":"Program Details","leftToSpend":"Left to spend"}}}}