Mobile
...
Mobile SDKs
Android

Customisation

customising your android integration you can customise the payment experience for the consumer by configuring the following ui behaviour properties in the uiconfiguration object ui configuration you have flexibility on how the payment experience looks to the consumer the uiconfiguration object allows you to enable | disable the address verification service show | hide the amount in the payments widget enable | disable consumers entering the cv2 code show | hide the amount in the payment button enable | disable asking the consumer for their cardholder name enable | disable asking the consumer for their billing information to create the uiconfiguration object ui configuration object import com judopay judokit android uiconfiguration val uiconfiguration = uiconfiguration builder() setavsenabled(true) setshouldpaymentmethodsdisplayamount(true) setshouldpaymentmethodsverifysecuritycode(true) setshouldpaymentbuttondisplayamount(true) setshouldaskforcardholdername(true) setshouldaskforbillinginformation(true) build() //call setuiconfiguration on the judo builder //pass the uiconfiguration object val judo = judo builder(paymentwidgettype payment methods) setuiconfiguration(uiconfiguration) build() setting up an incremental authorisation the incremental authorisation feature allows you to increment the value of your original pre authorisation for scenarios where you need to charge your customer a higher total amount by incrementing the pre authorisation value, you will be able to capture the total amount that you wish to charge your customer when you are ready this feature is not available with all acquirers check with our customer service team, or your account manager for your eligibility to use this the allowincrement flag is part of the main judo config object, and can be set by the setallowincrement function set the setallowincrement flag to true if present = it is automatically applied for preauth requests if no value is provided = false is set by default example judo builder(paymentwidgettype pre auth) (…) setallowincrement(true) build() setting the primary account details it is mandatory for merchants who have an mcc code of 6012 to submit additional information about the primary account holder in primaryaccountdetails for payment pre authorisation to set the primary account details when using an alternative payment method, see android docid\ it3yrnihegsketqtsxgi3 you can also set the primary account details to be sent with the transaction to set the primary account details call the setprimaryaccountdetails on the judo builder setting primary account details val primaryaccountdetails = primaryaccountdetails builder() setname("example name") setaccountnumber("example account number") setdateofbirth("example date") setpostcode("example postcode") build() val judo = judo builder(paymentwidgettype card payment) setprimaryaccountdetails(primaryaccountdetails) build() changing the default supported card networks you can select the card networks you want to support to select the supported card networks set the setsupportedcardnetworks on the judo builder with an array of cardnetwork values val networks = arrayof(cardnetwork visa, cardnetwork mastercard) val judo = judo builder(paymentwidgettype card payment) setsupportedcardnetworks(networks) build() card network options card network name value visa visa mastercard mastercard amex amex china union pay china union pay jcb jcb maestro maestro diners club international diners club discover discover other other changing the default payment methods by default, all payment methods are displayed in the payments widget (as long as the required parameters are set) however, you can select the payment methods you want to support to select the supported payment methods call the setpaymentmethods on the judo builder pass an array of paymentmethod enum values val paymentmethods = arrayof( paymentmethod card, paymentmethod google pay ) val judo = judo builder(paymentwidgettype card payment) setpaymentmethods(paymentmethods) build() the order you add the payment methods to the array is the order they will be displayed on screen payments widget to set up the payments widget for android change the paymentwidgettype to either payment methods or, pre auth payment methods for example setting up the payments widget val judo = judo builder(paymentwidgettype payment methods) setapitoken("my token") setapisecret("my secret") setissandboxed(true) setjudoid("my judo id") setamount(amount) setreference(reference) setgooglepayconfiguration(googlepayconfiguration) build() //start the judo activity val intent = intent(this, judoactivity class java); intent putextra(judo options, judo); startactivityforresult(intent, judo payment widget request code); android styles and themes styling you have the flexibility of creating your own styling and colour values override the styles xml properties to provide your own styling override the colors xml properties to provide your own colour values for a more detailed explanation on styles and themes see the android developer guide brand guidelines see the google pay™ brand guidelines adding a new language you can add any language you need override some or all of the translations of an existing language the judokit android sdk supports en (default), fr, es generally, language translations follows the android localisation process, utilising " res/values directories " and strings xml files use existing translations to use or test one of judopay's default language translations, change the language on your android device settings → system → language & input → languages the translation will be applied automatically override existing translations identify the sdk string keys the sdk uses string resources defined in its strings xml file you can find the list of all the customisation docid\ j3hohxtgwg6 vhjo9wtzc below to modify the value of an existing string, add a new one with the same key to the strings xml file in your android project you will find this located in the " res/values directory " this will override the sdk value of this string if your app supports multiple languages , ensure you add translations for the overridden string in the appropriate values \<language code> folders for example values fr for french or values es for spanish to add a new language identify the sdk string keys and prepare the translations for all values in the language you wish to add or override you can find the list of all string keys in language customisation in your app’s "res/values directory", create a new folder for the language you want to add make sure you use the correct language and region codes, for example ‘ values es ’ for spanish ‘ values zh rcn ’ for simplified chinese inside the new language folder, create a strings xml file if one does not already exist within the newly created strings xml ensure you provide the translations for all string keys used by the sdk, otherwise the translation may end up incomplete when overriding or adding new string keys, be careful to avoid string key conflicts between the sdk and your app any matching key will cause your app’s value to override the sdk's default value, which could potentially lead to unintended behaviour, or mismatched translations language customisation here you will find a comprehensive list of the sdk string keys, detailing the translation key, language examples (en, es, fr), the component and the relevant screens in the payment flow where these are used payment methods save as default payment method translation key en gb es es fr fr arguments taken component jp save as default payment method save as default payment method guardar como método de pago por defecto enregistrer en tant que mode de paiment par défaut n/a 'save as default payment method' checkbox text where used customise card screen choose a payment method translation key en gb es es fr fr arguments taken component jp choose payment method choose a payment method elija un método de pago choisissez un mode de paiement n/a ""choose a payment method"" header where used payment methods screen no cards added message translation key en gb es es fr fr arguments taken component jp no cards added you didn’t add any cards yet \nadd one right now or use any of the payment methods below todavía no ha añadido ninguna tarjeta \nañada una ahora o utilice uno de los métodos de pago a continuación vous n'avez pas encore ajouté de cartes \najoutez en une maintenant ou choissez un des modes de paiment ci dessous n/a text instructing user to add a new card in order to start using the payment methods functionality where used payment methods screen cards translation key en gb es es fr fr arguments taken component jp cards cards tarjetas cartes n/a 'cards' button in payment method selector where used payment methods screen displayed when more than one payment method is available add card translation key en gb es es fr fr arguments taken component jp add card add card añadir tarjeta ajouter carte n/a 'add card' button where used payment methods screen card subtitle translation key en gb es es fr fr arguments taken component jp card subtitle %1$s ending %1$s terminación %1$s se terminant argument %1$s is a placeholder for a string representing the card type (visa, mastercard) for example \ ""visa ending"" or \ ""mastercard ending"" provided dynamically by the sdk listed card's subtitle where used payment methods screen customise card translation key en gb es es fr fr arguments taken component jp customise card customise card personalizar tarjeta customsier carte n/a top positioned title header where used customise card screen card title input error message translation key en gb es es fr fr arguments taken component jp error card title too long card name cannot be longer than %1$d characters el nombre no puede exceder los %1$d caracteres le nom ne peut excéder %1$d caractères %1$d is a placeholder for an integer, representing the maximum number of characters allowed for the card name, such as " card name cannot be longer than 50 characters " card name input error message where used customise card screen save card button translation key en gb es es fr fr arguments taken component jp save save guardar enregistrer n/a 'save' button where used customise card screen visa card title translation key en gb es es fr fr arguments taken component jp default visa card title my visa card mi tarjeta visa ma carte visa n/a top positioned main card componen listed card's default title where used payment methods screen customise card screen mastercard card title translation key en gb es es fr fr arguments taken component jp default mastercard card title my mastercard card mi tarjeta mastercard ma carte mastercard n/a top positioned main card component listed card's default title where used payment methods screen customise card screen maestro card title translation key en gb es es fr fr arguments taken component jp default maestro card title my maestro card mi tarjeta maestro ma carte maestro n/a top positioned main card component listed card's default title where used payment methods screen customise card screen amex card title translation key en gb es es fr fr arguments taken component jp default amex card title my american express card mi tarjeta american express ma carte american express n/a top positioned main card component listed card's default title where used payment methods screen customise card screen jcb card title translation key en gb es es fr fr arguments taken component jp default jcb card title my jcb card mi tarjeta jcb ma carte jcb n/a top positioned main card component listed card's default title where used payment methods screen customise card screen china union pay card title translation key en gb es es fr fr arguments taken component jp default chinaunionpay card title my china union pay card mi tarjeta china union pay ma carte china union pay n/a top positioned main card component listed card's default title where used payment methods screen customise card screen discover card title translation key en gb es es fr fr arguments taken component jp default discover card title my discover card mi tarjeta discover ma carte discover n/a top positioned main card component listed card's default title where used payment methods screen customise card screen diners club card title translation key en gb es es fr fr arguments taken component jp default dinersclub card title my diners club card mi tarjeta diners club ma carte diners club n/a top positioned main card component listed card's default title where used payment methods screen customise card screen listed card will expire soon message translation key en gb es es fr fr arguments taken component jp will expire soon will expire soon expirará pronto va bientôt expirer n/a listed card's warning message where used payment methods screen listed card expires soon message translation key en gb es es fr fr arguments taken component jp expire soon expire soon expirar pronto expire bientôt n/a listed card's warning message ( bold part only ) where used payment methods screen listed card warning message translation key en gb es es fr fr arguments taken component jp expired expired expirado expiré n/a listed card's warning message note here the string is used only to determine the part of jp is expired that is displayed here should be displayed in bold top positioned main card component where used payment methods screen customise card screen card expired warning message translation key en gb es es fr fr arguments taken component jp is expired is expired es expirado est expiré n/a listed card's warning message where used payment methods screen connected cards translation key en gb es es fr fr arguments taken component jp connected cards connected cards tarjetas conectadas cartes connectées n/a 'connected cards' header where used payment methods screen no connected cards warning message translation key en gb es es fr fr arguments taken component jp no connected cards you didn't connect any cards yet todavía no ha conectado ninguna tarjeta vous n'avez pas encore connecté de cartes n/a message informing about no cards being added so far where used payment methods screen delete card button translation key en gb es es fr fr arguments taken component jp delete delete borrar supprimer n/a 'delete' confirmation button (delete card dialog) 'delete' confirmation button (onswipe gesture performed on selected card) where used payment methods screen delete card title translation key en gb es es fr fr arguments taken component jp delete card alert title delete card? ¿borrar tarjeta? supprimer carte? n/a dialog title (delete card dialog) where used payment methods screen delete card confirmation messsage translation key en gb es es fr fr arguments taken component jp delete card alert message are you sure you want to delete this card from your wallet? ¿seguro que quiere borrar esta tarjeta de su cartera? voulez vous vraiment supprimer cette carte de votre portefeuille? n/a dialog message (delete card dialog) where used payment methods screen button done translation key en gb es es fr fr arguments taken component jp button done done completo terminer n/a 'done' button where used payment methods screen edit connected cards mode button edit translation key en gb es es fr fr arguments taken component jp button edit edit editar editer n/a 'edit' button where used payment methods screen button cancel translation key en gb es es fr fr arguments taken component jp cancel cancel cancelar anuler n/a 'cancel' button where used card details screen billing details screen payment methods screen (delete card dialog) customise card screen 3d secure screen cancel button you will pay translation key en gb es es fr fr arguments taken component jp you will pay you will pay usted pagará vous allez payeer n/a 'you will pay' header where used payment methods screen card details check card translation key en gb es es fr fr arguments taken component jp check card check card comprobar tarjeta vérifier carte n/a 'check card' button where used card details (check card) screen billing details (check card) screen save card translation key en gb es es fr fr arguments taken component jp save card save card guardar tarjeta sauver carte n/a 'save card' button where used card details (save card) screen card number hint translation key en gb es es fr fr arguments taken component jp card number hint card number numero de tarjeta numéro de carte n/a card number input placeholder where used card details screen card number input error message translation key en gb es es fr fr arguments taken component jp check card number invalid card number compruebe el número de tarjeta vérifiez le numéro de carte n/a card number input error message where used card details screen card network not supported message translation key en gb es es fr fr arguments taken component jp error unknown not supported unknown card network is not supported tarjeta no es compatible unknown card network n'est pas prise en charge n/a card number input error message where used card details screen visa not supported message translation key en gb es es fr fr arguments taken component jp error visa not supported visa is not supported visa no es compatible visa n'est pas prise en charge n/a card number input error message where used card details screen mastercard not supported message translation key en gb es es fr fr arguments taken component jp error mastercard not supported mastercard is not supported mastercard no es compatible mastercard n'est pas prise en charge n/a card number input error message where used card details screen maestro not supported message translation key en gb es es fr fr arguments taken component jp error maestro not supported maestro is not supported maestro no es compatible maestro n'est pas prise en charge n/a card number input error message where used card details screen amex not supported message translation key en gb es es fr fr arguments taken component jp error amex not supported american express is not supported american express no es compatible american express n'est pas prise en charge n/a card number input error message where used card details screen discover not supported message translation key en gb es es fr fr arguments taken component jp error discover not supported discover is not supported discover no es compatible discover n'est pas prise en charge n/a card number input error message where used card details screen china union pay not supported message translation key en gb es es fr fr arguments taken component jp error union pay not supported china unionpay is not supported china unionpay no es compatible china unionpay n'est pas prise en charge n/a card number input error message where used card details screen jcb not supported message translation key en gb es es fr fr arguments taken component jp error jcb not supported jcb is not supported jcb no es compatible jcb n'est pas prise en charge n/a card number input error message where used card details screen diners club not supported message translation key en gb es es fr fr arguments taken component jp error diners club not supported diners club is not supported diners club no es compatible diners club n'est pas prise en charge n/a card number input error message where used card details screen cardholder name hint translation key en gb es es fr fr arguments taken component jp card holder hint cardholder name nombre del titular de la tarejeta nom du titulaire de la carte n/a cardholder name input placeholder where used card details screen cardholder name required error message translation key en gb es es fr fr arguments taken component jp card holder name required cardholder name is required cardholder name is required cardholder name is required n/a cardholder name input error message where used card details screen cardholder name too short error message translation key en gb es es fr fr arguments taken component jp card holder name too short cardholder name can't be less than 4 characters cardholder name can't be less than 4 characters cardholder name can't be less than 4 characters n/a cardholder name input error message where used card details screen cardholder name special characters error message translation key en gb es es fr fr arguments taken component jp card holder name special chars cardholder name can't contain numbers or special characters cardholder name can't contain numbers or special characters cardholder name can't contain numbers or special characters n/a cardholder name input error message where used card details screen date hint translation key en gb es es fr fr arguments taken component jp date hint mm/yy mm/aa mm/aa n/a card expiry date input placeholder where used card details screen expiry date input error message translation key en gb es es fr fr arguments taken component jp check expiry date check expiry date compruebe la fecha de caducidad vérifiez la date d'expiration n/a card expiry date input error message where used card details screen cvv hint translation key en gb es es fr fr arguments taken component jp cvv hint cvv código cvv cvv n/a card security code input placeholder where used card details screen cvv input error message translation key en gb es es fr fr arguments taken component jp check cvv check your cvv compruebe el código de seguridad cvv vérifiez le cvv n/a card security code input error message where used card details screen country list uk translation key en gb es es fr fr arguments taken component jp country uk uk uk ru (royaume uni) n/a countries list where used card entry screen if the address verification service feature is on , and the request for billing details is off country list usa translation key en gb es es fr fr arguments taken component jp country usa usa usa usa n/a countries list where used card entry screen if the address verification service feature is on , and the request for billing details is off country list canada translation key en gb es es fr fr arguments taken component jp country canada canada canadá canada n/a countries list where used card entry screen if the address verification service feature is on , and the request for billing details is off country list other translation key en gb es es fr fr arguments taken component jp country other other otro autre n/a countries list where used card entry screen if the address verification service feature is on , and the request for billing details is off card continue button translation key en gb es es fr fr arguments taken component jp continue text continue continue continue n/a 'continue' button where used card details screen when billing details is the next screen visa security code input error message translation key en gb es es fr fr arguments taken component jp check visa security code check your cvv2 compruebe el código de seguridad cvv2 vérifiez le cvv2 n/a card security code input error message where used card details screen mastercard security code input error message translation key en gb es es fr fr arguments taken component jp check mastercard security code check your cvc2 compruebe el código de seguridad cvc2 vérifiez le cvc2 n/a card security code input error message where used card details screen amex security code input error message translation key en gb es es fr fr arguments taken component jp check amex security code check your cid compruebe el código de seguridad cid vérifiez le cid n/a card security code input error message where used card details screen china union pay security code input error message translation key en gb es es fr fr arguments taken component jp check china union pay security code check your cvn2 compruebe el código de seguridad cvn2 vérifiez le cvn2 n/a card security code input error message where used card details screen jcb security code input error message translation key en gb es es fr fr arguments taken component jp check jcb security code check your cav2 compruebe el código de seguridad cav2 vérifiez le cav2 n/a card security code input error message where used card details screen footer encryption text translation key en gb es es fr fr arguments taken component jp secure server transmission your card details are encrypted using tls before transmission to our secure payment service provider servidor seguro los detalles de su tarjeta son encriptados usando ssl antes de su transmisión a nuestro procesador de pagos seguro no se almacenarán en su dispositivo ni en nuestros servidores serveur sécurisé vos informations de paiement sont encryptées par ssl avant transfert vers notre prestataire de paiements sécurisés aucune information ne sera conservée sur cet appareil ou sur nos serveurs n/a footer encryption information text where used card details screen billing details billing details title translation key en gb es es fr fr arguments taken component jp billing details title billing details billing details billing details n/a 'billing details' top positioned header where used billing details screen email hint translation key en gb es es fr fr arguments taken component jp email hint email email email n/a email address input placeholder where used billing details screen email input error message translation key en gb es es fr fr arguments taken component jp invalid email address please enter a valid email please enter a valid email please enter a valid email n/a email address input error message where used billing details screen country hint translation key en gb es es fr fr arguments taken component jp country hint country país pays n/a country input placeholder where used billing details screen automaticaly replaced by the default country when the screen is opened country input error message translation key en gb es es fr fr arguments taken component jp error country should not be empty please select a country por favor seleccione un país veuillez sélectionner un pays n/a country input error message where used billing details screen us state hint translation key en gb es es fr fr arguments taken component jp us state hint state estado état n/a state input placeholder where used billing details screen visible when the country selected is us us state input error message translation key en gb es es fr fr arguments taken component jp error state should not be empty please select a state por favor seleccione un estado veuillez sélectionner un état n/a us state input error message where used billing details screen visible when the country selected is us state or union territory hint translation key en gb es es fr fr arguments taken component jp in state hint state or union territory state or union territory state or union territory n/a state or union territory input placeholder where used billing details screen visible when the country selected is india state or union territory input error message translation key en gb es es fr fr arguments taken component jp error state union territory should not be empty please select a state or union territory please select a state or union territory please select a state or union territory n/a state or union territory input error message where used billing details screen visible when the country selected is india ca province hint translation key en gb es es fr fr arguments taken component jp ca province hint province or territory provincia o territorio province ou territoire n/a province or territory input placeholder where used billing details screen visible when the country selected is canada ca province input error message translation key en gb es es fr fr arguments taken component jp error province territory should not be empty please select a province or territory por favor seleccione una provincia o territorio veuillez sélectionner une province ou un territoire n/a canada province or territory input error message where used billing details screen visible when the country selected is canada province or region hint translation key en gb es es fr fr arguments taken component jp cn province hint province or region province or region province or region n/a province or region input placeholder where used billing details screen visible when the country selected is china province or region input error message translation key en gb es es fr fr arguments taken component jp error province region should not be empty please select a province or region please select a province or region please select a province or region n/a province or region input error message where used billing details screen visible when the country selected is china phone country code hint translation key en gb es es fr fr arguments taken component jp phone country code hint =() =() =() n/a country calling code (phone code) input placeholder where used billing details screen phone country code input error message translation key en gb es es fr fr arguments taken component jp invalid phone country code please enter a valid country code please enter a valid country code please enter a valid country code n/a mobile number input error message note this refers to the country code where used billing details screen mobile number hint translation key en gb es es fr fr arguments taken component jp mobile number hint mobile number mobile number mobile number n/a mobile phone number input placeholder where used billing details screen mobile number input error message translation key en gb es es fr fr arguments taken component jp invalid mobile number please enter a valid mobile number please enter a valid mobile number please enter a valid mobile number n/a mobile number input error message note this refers to the mobile number where used billing details screen address line 1 hint translation key en gb es es fr fr arguments taken component jp address line 1 hint address line 1 address line 1 address line 1 n/a address line 1 input placeholder where used billing details screen address input error message translation key en gb es es fr fr arguments taken component jp invalid address please enter a valid address please enter a valid address please enter a valid address n/a address input error message where used billing details screen add address line button translation key en gb es es fr fr arguments taken component jp add address line add address line %1$d (optional) add address line %1$d (optional) add address line %1$d (optional) %1$d is a placeholder for an integer, allowing the string to dynamically display the corresponding address line number for example \ "add address line 1" or \ "add address line 2" ""add address line"" button where used billing details screen address line 2 hint translation key en gb es es fr fr arguments taken component jp address line 2 hint address line 2 address line 2 address line 2 n/a address line 2 input placeholder where used billing details screen address line 3 hint translation key en gb es es fr fr arguments taken component jp address line 3 hint address line 3 address line 3 address line 3 n/a address line 3 input placeholder where used billing details screen city hint translation key en gb es es fr fr arguments taken component jp city hint city city city n/a city input placeholder where used billing details screen city input error message translation key en gb es es fr fr arguments taken component jp invalid city please enter a valid city please enter a valid city please enter a valid city n/a city name input error message where used billing details screen postcode hint translation key en gb es es fr fr arguments taken component jp post code hint postcode código postal code postal n/a postcode input placeholder where used billing details screen postcode input error message translation key en gb es es fr fr arguments taken component jp invalid postcode entered invalid postcode código postal inválido code postal invalide n/a postcode input error message where used card entry screen if the address verification service feature is on , and the request for billing details is off billing details screen zip code input error message translation key en gb es es fr fr arguments taken component jp invalid zip code invalid zip code entered código postal inválido code postal invalide n/a postcode input error message when the selected country is us where used card entry screen if the address verification service feature is on , and the request for billing details is off billing details screen pay now button translation key en gb es es fr fr arguments taken component jp pay now %1$spay now %1$spaga ahora %1$spayer maintenant argument %1$s is not currently used 'pay now' button where used card details screen when billing details are not going to be displayed as the next screen billing details screen payment methods screen pay amount button translation key en gb es es fr fr arguments taken component jp pay amount pay %1$s paga %1$s payer %1$s argument %1$s is a placeholder for a string representing the payment amount this should already be formatted together with its correct currency 'pay \<amount>' button where used card details screen billing details screen display amount on button ui option enabled secure checkout verification translation key en gb es es fr fr arguments taken component jp secure checkout secure checkout secure checkout secure checkout n/a top positioned toolbar title where used 3ds (3d secure) screen back button translation key en gb es es fr fr arguments taken component jp back back back back n/a 'back' button where used billing details screen