This is the minimum configuration required, without any additional styling, callbacks, or field element placement in HTML markup.
window.Netvalve.initTokenFields({ formSelector: '#payment-form', fields: { cardNumber: { containerSelector: '#card-number-container' }, cardCvv: { containerSelector: '#cvv-container' }, cardExpiry: { containerSelector: '#expiry-container' } } }); |
formId
(string) OR formSelector
fields
(if <netvalve-cardnumber>
, <netvalve-cvv>
and <netvalve-expiry>
have not been placed in the HTML markup)
Property | Type | Required | Description | Format / Example | |
---|---|---|---|---|---|
| string | Y* | Provide the form element id. |
| |
| string | Y * |
| ||
| string | Y | The submit button element id |
| |
| object | Y | A configuration object for each field. See Field Config below. |
| |
| object | N | Object of css styles. Applies to all fields. Note: css properties are not camelcase. Example: use |
| |
| object | N | Object of css styles. Applies to all field inputs. Note: css properties are not camelcase. Example: use |
| |
| object | N | Applies to all field input placeholders. Note css properties are not camelcase. Example: use |
| |
| string | N | The initial height of the iframe before the form’s input styles are calculated and applied to the form. Default is |
| |
| boolean. Default = | N | By default the form will intercept the form submission, and if tokenization succeeds, it will either call the | true / false | |
| function | N | The callback function invoked after all fields have been encrypted and the payment token ready. |
| |
| function | N | The callback function invoked for each field after validation occurs (success and fail). |
|
This applies to the individual field objects under the fields
property, see above.
{ cardNumber: {}, // Field Configuration cardCvv: {}, // Field Configuration cardExpiry: {} // Field Configuration } |
Property | Type | Required | Description | Format / Example | |
---|---|---|---|---|---|
| string | Y* | A CSS selector for the div container where the field element will be rendered. |
| |
| object | N | Object of css styles. Overrides the global/parent |
|
window.Netvalve.initTokenFields({ formSelector: '#checkout .payment-form form', payButtonId: 'submit-button', inputStyles: { 'font-size': '16px', padding: '8px', 'border-radius': '4px', border: '1px solid #ccc' }, invalidStyles: { border: '1px solid red' }, fields: { cardNumber: { containerSelector: '#card-number-container', inputStyles: { 'letter-spacing': '1px' } }, cardCvv: { containerSelector: '#cvv-container' }, cardExpiry: { containerSelector: '#expiry-container' } }, onValidate: (fieldMessage) => { console.log('Field validation:', fieldMessage); }, onSubmitPayment: (paymentToken) => { // Send token to your server console.log('Payment token:', paymentToken); } }); |
window.Netvalve.initTokenFields({ formSelector: '#checkout', interceptFormSubmit: false, \\ SET TO FALSE TO HAND OVER THE FORM SUBMIT RESPONSIBILITY fields: { cardNumber: { containerSelector: '#card-number-container', }, cardCvv: { containerSelector: '#cvv-container' }, cardExpiry: { containerSelector: '#expiry-container' } }, }); document.querySelector('#submit-button')?.addEventListener('click', async (e) => { e.preventDefault(); const token = await window.Netvalve.tokenizeFields(); // PERFORM TOKENIZATION if (token) document.querySelector('form')?.submit() // TOKEN RECEIVED. SUBMITTING FORM else console.log('^^^^Token submission failed, received null when expecting a payment token'); }); |