Object that implemented IKushki
You must define setup of cvv field
Promise
options
or kushkiInstance
are null or undefined then throw ERRORS.E012options.fields
any field has non-existent selector then throw ERRORS.E013<!DOCTYPE html>
<html lang="en">
<body>
<section>
<div id="cvv_id"></div>
</section>
</body>
</html>
import { IKushki, init, KushkiError } from "@kushki/js-sdk";
import {
SecureDeviceTokenOptions,
ICardSubscriptions,
initSecureDeviceToken
} from "@kushki/js-sdk/Card";
const kushkiOptions : KushkiOptions = {
publicCredentialId: 'public-merchant-id',
inTest: true
};
const options : SecureDeviceTokenOptions = {
fields: {
cvv: {
selector: "cvv_id"
}
}
}
const initCardSubscription = async () => {
try {
const kushkiInstance : Ikushki = await init(kushkiOptions);
const cardSubscription : ICardSubscriptions = await initSecureDeviceToken(kushkiInstance, options)
} catch (e: any) {
console.error(e.message);
}
}
<!DOCTYPE html>
<html lang="en">
<body>
<section>
<div id="cvv_id"></div>
</section>
</body>
</html>
preventAutofill
flag must be trueimport { IKushki, init, KushkiError } from "@kushki/js-sdk";
import {
SecureDeviceTokenOptions,
ICardSubscriptions,
initSecureDeviceToken
} from "@kushki/js-sdk/Card";
const kushkiOptions : KushkiOptions = {
publicCredentialId: 'public-merchant-id',
inTest: true
};
const options : SecureDeviceTokenOptions = {
fields: {
cvv: {
inputType: "password",
label: "CVV",
placeholder: "CVV",
selector: "cvv_id"
},
},
preventAutofill: true, //To Enable prevent autofill in fields this flag must be true
}
const initCardSubscription = async () => {
try {
const kushkiInstance : Ikushki = await init(kushkiOptions);
const cardInstance: ICardSubscriptions = await initSecureDeviceToken(kushkiInstance, options)
} catch (e: any) {
console.error(e.message);
}
}
Consider the application of the same definition custom styles for card token, the difference is that the styles would be applied only into the cvv field.
<!DOCTYPE html>
<html lang="en">
<body>
<section>
<div id="cvv_id"></div>
</section>
</body>
</html>
import { IKushki, init, KushkiError } from "@kushki/js-sdk";
import {
SecureDeviceTokenOptions,
ICardSubscriptions,
initSecureDeviceToken,
Styles
} from "@kushki/js-sdk/Card";
const kushkiOptions : KushkiOptions = {
publicCredentialId: 'public-merchant-id',
inTest: true
};
const hostedFieldsStyles: Styles = {
container: {
display: "flex",
},
input: {
fontSize: "12px",
border: "1px solid #ccc",
borderRadius: "10px",
height: "30px",
width: "300px",
},
focus: {
border: "1px solid #0077ff",
outline: "none",
},
invalid: {
border: "1px solid #ff0000",
}
};
const options : SecureDeviceTokenOptions = {
fields: {
cvv: {
selector: "cvv_id"
},
},
styles: hostedFieldsStyles //custom styles
};
const initCardSubscription = async () => {
try {
const kushkiInstance : Ikushki = await init(kushkiOptions);
const cardInstance: ICardSubscriptions = await initSecureDeviceToken(kushkiInstance, options)
} catch (e: any) {
console.error(e.message);
}
}
Generated using TypeDoc
Introduction
Function to render cvv hosted field and init an instance of ICardSubscriptions