@@ -21,6 +21,8 @@ Welcome to the PAYONE Commerce Platform Client Android SDK for the PAYONE Commer
2121 - [ 5. Host and load the HTML page] ( #5-host-and-load-the-html-page )
2222 - [ 6. Initialize the Tokenizer] ( #6-initialize-the-tokenizer )
2323 - [ 7. Customization and Callbacks] ( #7-customization-and-callbacks )
24+ - [ Custom Validation Icons (v1.4)] ( #custom-validation-icons-v14 )
25+ - [ Click to Pay / CTP (v1.4)] ( #click-to-pay--ctp-v14 )
2426 - [ 8. PCI DSS & Security] ( #8-pci-dss--security )
2527 - [ 9. Migration Note] ( #9-migration-note )
2628 - [ Fingerprint Tokenizer] ( #fingerprint-tokenizer )
@@ -56,7 +58,7 @@ In order to use the SDK your minimum SDK Version needs to be at least API 34.
5658
5759``` kotlin
5860dependencies {
59- implementation(" io.github.payone-gmbh:pcp-client-android-sdk:1.3 .0" )
61+ implementation(" io.github.payone-gmbh:pcp-client-android-sdk:1.4 .0" )
6062}
6163```
6264
@@ -307,7 +309,69 @@ supportFragmentManager.beginTransaction().replace(R.id.fragment_container, fragm
307309- ` submitButton ` : Provide a selector or element for the submit button.
308310- ` tokenizationSuccessCallback ` : Handle the token and card details on success.
309311- ` tokenizationFailureCallback ` : Handle errors on failure.
310- - ` environment ` : Choose "test" or "live" for the SDK environment.
312+ - ` mode ` : Choose ` "test" ` or ` "live" ` for the SDK environment.
313+ - ` allowedCardSchemes ` : Limit accepted card brands (e.g. ` listOf("visa", "mastercard") ` ). All brands accepted when omitted.
314+ - ` customTextConfig ` : Override labels, placeholders, aria-labels and validation error messages per locale key (e.g. ` "en" ` , ` "de" ` ).
315+
316+ ##### Custom Validation Icons (v1.4)
317+
318+ Provide your own success/error icons for input validation. Supported formats: SVG, PNG, JPEG, WebP.
319+
320+ ``` kotlin
321+ import com.payone.pcp_client_android_sdk.cctokenizer.CustomIconsConfig
322+
323+ val config = CreditcardTokenizerConfig (
324+ // ... other fields ...
325+ customIconsConfig = CustomIconsConfig (
326+ useCustomValidationIcons = true ,
327+ showCardBrandIcons = false , // true = show detected card brand instead of validation icon
328+ successIcon = " /validIcon.svg" ,
329+ errorIcon = " /invalidIcon.svg"
330+ ),
331+ // ...
332+ )
333+ ```
334+
335+ ##### Click to Pay / CTP (v1.4)
336+
337+ Enable Click to Pay (wallet-based payment by card schemes). Requires onboarding with PAYONE for Visa and/or Mastercard credentials.
338+
339+ ``` kotlin
340+ import com.payone.pcp_client_android_sdk.cctokenizer.CTPConfig
341+ import com.payone.pcp_client_android_sdk.cctokenizer.SchemeConfig
342+ import com.payone.pcp_client_android_sdk.cctokenizer.VisaConfig
343+ import com.payone.pcp_client_android_sdk.cctokenizer.MastercardConfig
344+ import com.payone.pcp_client_android_sdk.cctokenizer.TransactionAmount
345+ import com.payone.pcp_client_android_sdk.cctokenizer.CTPUiConfig
346+
347+ val config = CreditcardTokenizerConfig (
348+ // ... other fields ...
349+ ctpConfig = CTPConfig (
350+ enableCTP = true ,
351+ enableCustomerOnboarding = true ,
352+ schemeConfig = SchemeConfig (
353+ merchantPresentationName = " YourMerchantName" ,
354+ visaConfig = VisaConfig (
355+ srcInitiatorId = " YOUR_VISA_INITIATOR_ID" ,
356+ srcDpaId = " YOUR_VISA_DPA_ID" ,
357+ encryptionKey = " YOUR_ENCRYPTION_KEY" ,
358+ nModulus = " YOUR_N_MODULUS"
359+ ),
360+ mastercardConfig = MastercardConfig (
361+ srcInitiatorId = " YOUR_MC_INITIATOR_ID" ,
362+ srcDpaId = " YOUR_MC_DPA_ID"
363+ )
364+ ),
365+ transactionAmount = TransactionAmount (amount = " 100" , currencyCode = " EUR" ),
366+ uiConfig = CTPUiConfig (
367+ buttonStyle = " solid" ,
368+ buttonAndBadgeColor = " #3B82F6" ,
369+ fontFamily = " Sansation"
370+ )
371+ ),
372+ // ...
373+ )
374+ ```
311375
312376#### 8. PCI DSS & Security
313377
0 commit comments