Configuration
Tamaro can be configured during its initialization, for example:
window.rnw.tamaro.runWidget('.rnw-tamaro-widget', {
debug: false,
language: 'de',
});
Configuration values can be overridden later with afterCreate
event.
For example:
// Changing the configuration values after widget is created
window.rnw.tamaro.events.afterCreate.subscribe((event) => {
const tamaro = event.data.api;
tamaro.config.debug = true;
tamaro.config.language = 'en';
});
window.rnw.tamaro.runWidget('.rnw-tamaro-widget', {
debug: false,
language: 'de',
});
You can override config values later by using the widget instance. For example:
window.rnw.tamaro.instance.config.debug = true;
window.rnw.tamaro.instance.config.language = 'en';
You can also extend the widget configuration in event handlers, using the extendConfig
helper method.
If the passed configuration option value is a plain object, it's merged with its target value.
Otherwise (if the passed configuration option value is boolean
, string
, number
, array
, etc.),
its target value is overridden by the passed value.
For Example:
window.rnw.tamaro.events.afterCreate.subscribe((event) => {
const tamaro = event.data.api;
tamaro.extendConfig({
// bool, string and array values override its target values
debug: false,
language: 'en',
amounts: [5, 10, 20, 50],
purposes: ['p1', 'p2'],
paymentMethods: ['card', 'paypal'],
// plain object value is deeply merged with its target value
translations: {
de: {
purposes: {
p1: 'Purpose 1',
p2: 'Purpose 2',
},
},
},
});
});
window.rnw.tamaro.runWidget('.rnw-tamaro-widget');
Configuration options
Some of the common type definitions, which are used for configuration options:
type ConfigCondition<T = any> = T | Condition<T>;
type Condition<T = any> = {
if: string | boolean;
then?: ConfigCondition<T> | ConfigCondition<T>[];
else?: ConfigCondition<T> | ConfigCondition<T>[];
};
type EpmsConfig = {
accountUuid?: string | ConfigCondition<string>[];
paymentMethodProfile?: Record<string, string | ConfigCondition<string>[]>;
stripePublicKey?: string | ConfigCondition<string>[];
stripeAccount?: string | ConfigCondition<string>[];
};
type EppConfig = {
apiKey?: string | ConfigCondition<string>[];
merchantId?: string | ConfigCondition<string>[];
successUrl?: string | ConfigCondition<string>[];
errorUrl?: string | ConfigCondition<string>[];
cancelUrl?: string | ConfigCondition<string>[];
immediateExecution?: boolean | ConfigCondition<boolean>[];
useCardIframe?: boolean | ConfigCondition<boolean>[];
cardIframeUrl?: string | ConfigCondition<string>[];
};
debug
Type: boolean
Default value: true
Enables/disables debug mode.
More info about debugging can be found on the Debugging page.
debugErrorMessages
Type: boolean
Default value: false
When true
, example error messages are shown for all the fields.
debugSlots
Type: boolean
Default value: false
When true
, all slot placeholders are shown.
More info about slots can be found on the Slots page.
debugSecureFields
Type: boolean | ConfigCondition<boolean>[]
Default value: false
Enables/disables additional logging for the PCI proxy secure fields, which are used for card data input.
debugEppCardIframe
Type: boolean | ConfigCondition<boolean>[]
Default value: false
Enables/disables additional logging for the communication between the widget and the EPP card iframe.
demoMode
Type: boolean | ConfigCondition<boolean>[]
Default value: false
There are some limitations when certain payment methods may not be available depending on selected currency or other conditions, for example:
'twint'
is only available with'chf'
currency'sepa_dd'
is only available with'eur'
currency'apple_pay'
is only available in the Safari browser- etc.
Sometimes, you may want to bypass these limitations for demo purposes,
not to make a real payment, but to show all the available payment methods to the user.
Here is where demoMode
comes in handy.
When it's enabled, all payment methods are visually available for all conditions,
but if you try to do a real payment with unsupported combination of conditions,
most probably it will fail.
language
Type: string
Default value: 'en'
Sets the UI language of the widget.
Supported out of the box languages are:
'de'
, 'en'
, 'es'
, 'fr'
, 'hu'
, 'it'
, 'nl'
, 'rm'
, 'ro'
.
Tamaro Core provides all the translations for these languages.
If you want to use a language that is not supported out of the box,
you need to provide all translations for this language yourself.
See translations
config option for more information.
fallbackLanguage
Type: string
Default value: 'en'
Set the language to fallback to if some of the translations are missing for the selected language.
testMode
Type: boolean
Default value: true
Enables/disables test mode.
See Testing page for more information.
flow
Type: 'epp' | 'epms' | ConfigCondition<'epp' | 'epms'>[]
Default value: 'epp'
There are two flows available:
- EPP (legacy e-payment platform,
flow: 'epp'
) - EPMS (e-payment micro-services,
flow: 'epms'
)
This config option defines which backend to use in case selected payment method is supported on both of them.
epmsEnv
Type: 'prod' | 'stage'
Default value: 'stage'
Defines the environment for EPMS backend.
epms
Type: EpmsConfig
Default value: {}
If epmsEnv
is set to 'prod'
, then properties specified under this config option will be resolved for EPMS backend.
epmsStage
Type: EpmsConfig
Default value:
{
accountUuid: 'd71de4f6-e466-40dc-84ce-c1ce20b29b08',
}
If epmsEnv
is set to 'stage'
, then properties specified under this config option will be resolved for EPMS backend.
eppEnv
Type: 'prod' | 'stage'
Default value: 'prod'
Defines the environment for EPP backend.
epp
Type: EppConfig
Default value:
{
apiKey: '1234567890',
merchantId: '1234567890',
}
If eppEnv
is set to 'prod'
, then properties specified under this config option will be resolved for EPP backend.
eppStage
Type: EppConfig
Default value:
{
apiKey: '1234567890',
merchantId: '1234567890',
}
If eppEnv
is set to 'stage'
, then properties specified under this config option will be resolved for EPP backend.
redirectToCustomResultPage
Type: undefined | ((api: WidgetApi) => Promise<void> | void)
Default value: undefined
Added in: v2.11.0
This config option allows you to specify a custom function, which is called when the payment/subscription is completed, where you can implement your own logic to redirect the supporter to custom result page.
const redirectToCustomResultPage = () => {
window.location.href = 'https://example.com?foo=bar';
};
window.rnw.tamaro.runWidget('.rnw-tamaro-widget', {
redirectToCustomResultPage,
});
See more details in the Redirect to custom result page guide.
skipCvv
Type: boolean | ConfigCondition<boolean>[]
Default value: false
If this config option is set to true
, the cvv
field will not be rendered
and not required for card
payments.
In most of the cases, enabling this option will lead to failed payments.
It might be useful only in some rare cases with specific card types/currencies.
paymentStatusPollInterval
Type: number
Default value: 1000
When the payment is made and its status is 'pending'
,
the widget will poll the payment status every paymentStatusPollInterval
milliseconds.
paymentFormPrefill
Type: Record<string, any>
Default value: {}
Defines the values to prefill the payment form fields with.
This config option works only when you set it with initial configuration. Changing this config option after widget is already initialized will not have any effect.
purposes
Type: ConfigCondition<string>[]
Default value: ['p1', 'p2', 'p3', 'p4']
Defines the available purposes for the payment/donation.
paymentTypes
Type: ConfigCondition<'onetime' | 'recurring'>[]
Default value: ['onetime', 'recurring']
Defines the available payment types for the payment/donation.
recurringIntervals
Type: ConfigCondition<'daily' | 'weekly' | 'monthly' | 'quarterly' | 'semestral' | 'yearly'>[]
Default value: ['monthly', 'quarterly', 'semestral', 'yearly']
Defines the available recurring intervals for the payment/donation.
currencies
Type: ConfigCondition<string>[]
Default value: ['chf', 'usd', 'eur']
Defines the available currencies for the payment/donation.
amounts
Type: ConfigCondition<number>[]
Default value:
[
{
if: 'currency() == chf',
then: [
{
if: 'paymentType() == onetime',
then: [5, 10, 30, 120],
},
{
if: 'paymentType() == recurring',
then: [
{
if: 'recurringInterval() == monthly',
then: [15, 20, 30, 120],
},
{
if: 'recurringInterval() == quarterly',
then: [45, 60, 90, 360],
},
{
if: 'recurringInterval() == semestral',
then: [90, 120, 180, 720],
},
{
if: 'recurringInterval() == yearly',
then: [180, 240, 360, 1440],
},
],
},
],
},
{
if: 'currency() == usd',
then: [10, 15, 30, 60],
},
{
if: 'currency() == eur',
then: [5, 15, 30, 90],
},
];
Defines the available amounts for the payment/donation.
coverFeeFixed
Type: undefined | number | ConfigCondition<number>[]
Default value:
[
{
if: 'currency() == chf',
then: 0.25,
},
{
if: 'currency() == eur',
then: 0.2,
},
0,
];
Defines the fixed fee to cover for the payment/donation.
The value should be specified in the major currency unit.
coverFeePercentage
Type: undefined | number | ConfigCondition<number>[]
Default value: 5
Defines the percentage fee to cover for the payment/donation.
The value should be specified in the percentage unit.
coverFeeProcessingFixed
Type: undefined | number | ConfigCondition<number>[]
Default value: undefined
Defines the fixed processing fee to cover for the payment/donation.
The value should be specified in the major currency unit.
coverFeePlatformFixed
Type: undefined | number | ConfigCondition<number>[]
Default value: undefined
Defines the fixed platform fee to cover for the payment/donation.
The value should be specified in the major currency unit.
coverFeeOrganisationCostsFixed
Type: undefined | number | ConfigCondition<number>[]
Default value: undefined
Defines the fixed organisation costs to cover for the payment/donation.
The value should be specified in the major currency unit.
coverFeeProcessingPercentage
Type: undefined | number | ConfigCondition<number>[]
Default value: undefined
Defines the percentage processing fee to cover for the payment/donation.
The value should be specified in the percentage unit.
coverFeePlatformPercentage
Type: undefined | number | ConfigCondition<number>[]
Default value: undefined
Defines the percentage platform fee to cover for the payment/donation.
The value should be specified in the percentage unit.
coverFeeOrganisationCostsPercentage
Type: undefined | number | ConfigCondition<number>[]
Default value: undefined
Defines the percentage organisation costs to cover for the payment/donation.
The value should be specified in the percentage unit.
paymentMethods
Type: ConfigCondition<string>[]
Default value:
['card', 'pfc', 'pef', 'paypal', 'dd', 'sod', 'twint'];
Defines the available payment methods for the payment/donation.
priorityCardTypes
Type: ConfigCondition<'amx' | 'din' | 'dis' | 'jcb' | 'mae' | 'eca' | 'vis'>[]
Default value: ['vis', 'mae', 'amx']
Defines the card types, which icons will be shown first on the icons list for the 'card'
payments.
autoselectPurpose
Type: boolean
Default value: true
If this config option is set to true
and purpose
value is not prefilled,
the first available purpose
will be selected automatically.
autoselectPaymentType
Type: boolean
Default value: true
If this config option is set to true
and payment_type
value is not prefilled,
the first available payment_type
will be selected automatically.
autoselectAmount
Type: boolean
Default value: true
If this config option is set to true
and amount
value is not prefilled,
the first available amount
will be selected automatically.
autoselectPaymentMethod
Type: boolean
Default value: false
If this config option is set to true
and payment_method
value is not prefilled,
the first available payment_method
will be selected automatically.
purposeDetails
Type: Record<string, {stored_campaign_id: string, stored_campaign_subid: string}>
Default value: {}
This config option allows to specify the stored_campaign_id
and stored_campaign_subid
values for each purpose.
amountSubunits
Type: Record<string, number>
Default value:
{
chf: 100,
usd: 100,
eur: 100,
inr: 100,
huf: 100,
ron: 100,
gbp: 100,
cad: 100,
cny: 100,
aud: 100,
}
Amounts are always sent in subunits to the backend API endpoints.
This config option allows to set the number of subunits for each currency.
For currency without subunits set amountSubunits
to 1
for this particular currency.
If amountSubunits
is not explicitly specified for the particular currency,
it falls back to 100
.
allowCustomAmount
Type: boolean | ConfigCondition<boolean>[]
Default value: true
This config option allows to enable/disable custom amount input field.
minimumCustomAmount
Type: number | ConfigCondition<number>[]
Default value: 1
Defines the minimum value for the custom amount input field.
maximumCustomAmount
Type: undefined | number | ConfigCondition<number>[]
Default value: undefined
Defines the maximum value for the custom amount input field.
paymentProvider
Type: 'adyen' | 'datatrans' | 'ingcollect' | 'stripe'
Default value: 'datatrans'
Defines the payment provider to use for the EPP payment/donation.
allowedCardTypes
Type: undefined | ConfigCondition<'amx' | 'din' | 'dis' | 'jcb' | 'mae' | 'eca' | 'vis'>[]
Default value: undefined
Defines the card types, which are allowed for the 'card'
payments.
This config option should be used when you want to restrict the allowed card types.
allowedRecurringPaymentMethods
Type: ConfigCondition<string>[]
Default value:
[
'apple_pay',
'card',
'cym',
'google_pay',
'paypal',
'pfc',
'sepa_dd',
'sod',
'mpos',
'net',
'twint',
'dd',
'chqr',
];
Defines the allowed payment methods for the recurring payments.
This config option should be used when you want to restrict the
allowed payment methods for the recurring payments.
Please note that if some of specified methods does not support recurring payments, then it won't be shown if recurring payment type is selected.
faqEntries
Type: ConfigCondition<string>[]
Default value: ['f1', 'f2', 'f3']
Defines the available FAQ entries, which are shown on the result page.
Read more here.
expandedFaqEntries
Type: ConfigCondition<string>[]
Default value: []
Defines which FAQ entries should be expanded by default on the result page.
Read more here.
salutations
Type: ConfigCondition<string>[]
Default value: ['ms', 'mr', 'none']
Defines the available salutations for the payment/donation.
Read more here.
countries
Type: ConfigCondition<string>[]
Default value: ['CH', 'DE', ...]
Defines the available countries for the payment/donation.
priorityCountries
Type: ConfigCondition<string>[]
Default value: ['CH', 'DE', 'FR', 'IT']
Defines which countries should be shown first in the country select field.
states
Type: Record<string, string[]>
Default value:
{
US: ['AL', 'AK', 'AZ', ...],
CA: ['AB', 'BC', 'MB', ...],
CL: ['AI', 'AN', 'AP', ...],
AR: ['A', 'B', 'C', ...],
IN: ['AN', 'AP', 'AR', ...],
}
Defines the available states for the payment/donation.
taxIdLocale
Type: string | ConfigCondition<string>[]
Default value: en-US
Defines the locale for the tax ID field validation.
You can check the available locales in the validator-js library repo.
netbankingIssuerIds
Type: ConfigCondition<string>[]
Default value: [50, 13700, 310, ...]
Defines the list of netbanking issuer IDs (provided by Wordline) for the payment/donation.
uiBreakpoints
Type: Record<string, number>
Default value:
{
'tamaro-bp-xs': 28,
'tamaro-bp-sm': 33,
'tamaro-bp-md': 48,
}
Defines the breakpoints for the widget UI elements.
Values should be specified in rem
units.
uiTransitionTimeout
Type: number
Default value: 300
Defines the transition timeout for the widget UI elements.
Value should be specified in milliseconds.
uiCustomCheckableElements
Type: boolean
Default value: true
Allows to enable/disable custom checkable elements in the widget UI.
uiFloatingLabels
Type: boolean
Default value: true
Allows to enable/disable floating labels for the widget fields.
uiRippleEffects
Type: boolean
Default value: true
Allows to enable/disable ripple effects for the widget UI elements.
uiCheckboxRadius
Type: number
Default value: 0
Defines the radius for the checkbox elements in the widget UI.
uiScrollOffsetTop
Type: number
Default value: 20
Define offsets from the top of the page
(or scrollable container in case Tamaro widget is rendered inside such container),
which will be used during automatic scrolling.
Value should be specified in pixels.
The page automatically scrolls to the first invalid field (or block) after form validation. If page has sticky header, then it may overlap the validation error message, so you can increase the value of this option in such cases to make validation error message visible.
uiScrollOffsetBottom
Type: number
Default value: 20
Define offsets from the bottom of the page
(or scrollable container in case Tamaro widget is rendered inside such container),
which will be used during automatic scrolling.
Value should be specified in pixels.
The page automatically scrolls to the first invalid field (or block) after form validation. If page has sticky footer, then it may overlap the validation error message, so you can increase the value of this option in such cases to make validation error message visible.
uiHeadingLevel
Type: number
Default value: 2
Defines the level of heading tags.
Possible values: from1
to 6
.
According to this option, widget headings will be rendered as <h1>
- <h6>
tags respectively.
uiInvalidElementsScope
Type: undefined | string
Default value: '#tamaro-widget'
Allows to specify a CSS selector of the DOM element, within which scrolling to the top invalid element and focusing of the top invalid element after the form is submitted with invalid fields is performed.
-
Default value is
"#tamaro-widget"
– auto-scrolling and auto-focusing is scoped to Tamaro widget container. -
If Tamaro is rendered within a custom payment/donation form with for example ID attribute
"custom-form"
, you may specify:uiInvalidElementsScope: "#custom-form"
.This will allow to auto-scroll and auto-focus the fields, which are outside the Tamaro container.
-
If you want to entirely disable Tamaro's behavior of auto-scrolling and auto-focusing of invalid fields, you can specify:
uiInvalidElementsScope: undefined
.
paymentValidations
Type: Record<string, any>
Default value:
{
purpose: {
required: true,
},
payment_type: {
required: true,
},
amount: {
amount_valid: true,
minimum_custom_amount: true,
maximum_custom_amount: true,
},
payment_method: {
payment_method_valid: true,
},
stored_customer_salutation: {
required: true,
},
stored_customer_firstname: {
required: true,
},
stored_customer_lastname: {
required: true,
},
stored_customer_email: {
required: true,
email: true,
},
stored_customer_birthdate: {
required: true,
date_format: true,
age: {
min: 18,
max: 100,
},
},
stored_customer_fiscal_code: {
required: true,
tax_id_valid: true,
},
stored_customer_street: {
required: true,
},
stored_customer_zip_code: {
required: true,
zip_code_valid: {
country_field_name: 'stored_customer_country',
},
},
stored_customer_city: {
required: true,
},
stored_customer_country: {
required: true,
},
stored_customer_state: {
required: true,
},
}
Defines the payment/donation form validations.
forcePaymentValidations
Type: Record<string, any>
Default value: {}
There can be circumstances when Tamaro will ignore the value specified in paymentValidations
config option for certain fields because it's required for the
transaction to be successful. For example, recurring payments require
the email address field, Tamaro will automatically render 'stored_customer_email'
field
and make it required, skipping paymentValidations.stored_customer_email.required: false
.
You can use forcePaymentValidations
config option to overrule this default Tamaro behavior,
but in this case you MUST be sure to set all required fields by yourself.
showFields
Type: Record<string, boolean | ConfigCondition<boolean>[]>
Default value:
{
stored_is_company_donation: false,
stored_customer_company: false,
stored_customer_salutation: true,
stored_customer_firstname: true,
stored_customer_lastname: true,
stored_customer_raw_name: false,
stored_customer_phone: false,
stored_customer_email: true,
stored_customer_birthdate: true,
stored_customer_pan: false,
stored_customer_fiscal_code: false,
stored_customer_email_permission: true,
stored_customer_message: true,
stored_customer_donation_receipt: true,
stored_customer_street: true,
stored_customer_street_number: true,
stored_customer_street2: true,
stored_customer_pobox: false,
stored_customer_zip_code: true,
stored_customer_city: true,
stored_customer_country: true,
stored_customer_state: true,
stored_customer_raw_address: false,
bic: false,
}
Defines the visible fields for the payment/donation form.
forceShowFields
Type: Record<string, boolean | ConfigCondition<boolean>[]>
Default value: {}
There can be circumstances when Tamaro will ignore the value specified in showFields
config option for certain fields because it's required for the
transaction to be successful. For example, file-based Sepa direct debits require
the address fields and if this payment method is selected, Tamaro will
automatically render 'payment_address'
block with all required address fields,
skipping showFields.stored_customer_street: false
and similar config option values.
You can use forceShowFields
config option to overrule this default Tamaro behavior,
but in this case you MUST be sure to set all required fields by yourself.
showBlocks
Type: Record<string, boolean | ConfigCondition<boolean>[]>
Default value:
{
payment_purposes: true,
payment_amounts_and_intervals: true,
payment_payment_methods: true,
payment_profile: true,
payment_profile_short: false,
payment_address: false,
payment_email_permission: false,
payment_cover_fee: false,
payment_sepa_mandate_terms: false,
}
Defines the visible blocks for the payment/donation form.
forceShowBlocks
Type: Record<string, boolean | ConfigCondition<boolean>[]>
Default value: {}
There can be circumstances when Tamaro will ignore the value specified in showBlocks
config option for certain fields because it's required for the
transaction to be successful. For example, file-based Sepa direct debits require
the address fields and if this payment method is selected, Tamaro will
automatically render 'payment_address'
block with all required address fields,
skipping showBlocks.payment_address: false
and similar config option values.
You can use forceShowBlocks
config option to overrule this default Tamaro behavior,
but in this case you MUST be sure to set all required fields by yourself.
blocksOrder
Type: string[]
Default value:
[
'payment_purposes',
'payment_amounts_and_intervals',
'payment_payment_methods',
'payment_profile',
'payment_profile_short',
'payment_address',
'payment_email_permission',
'payment_cover_fee',
'payment_sepa_mandate_terms',
];
Defines the order of the blocks for the payment/donation form.
showBlockHeaders
Type: Record<string, boolean | ConfigCondition<boolean>[]>
Default value:
{
payment_sepa_mandate_terms: false,
}
Defines whether to show block headers for the payment/donation form blocks.
onlySubmitVisibleStandardFields
Type: boolean
Default value: false
If set to true
, only visible standard fields will be submitted on form submit.
showSubmitButton
Type: boolean | ConfigCondition<boolean>[]
Default value: true
Allows to show/hide the submit button for the payment/donation form.
showFooter
Type: boolean | ConfigCondition<boolean>[]
Default value: true
Allows to show/hide the footer for the payment/donation form.
showTestModeBar
Type: boolean | ConfigCondition<boolean>[]
Default value: true
Allows to show/hide the test mode bar for the payment/donation form.
showRetryPaymentButton
Type: boolean | ConfigCondition<boolean>[]
Default value: true
When payment is completed, then the link (button) "Make another donation" is shown by default.
This config option allows to show/hide this link (button).
showPaymentInfo
Type: boolean | ConfigCondition<boolean>[]
Default value: true
This config option allows to show/hide payment/subscription info block on the Payment/Subscription result page.
recurringIntervalsLayout
Type: 'compact' | 'list' | ConfigCondition<'compact' | 'list'>[]
Default value: 'compact'
Defines the layout for the recurring intervals selection:
- If set to
'list'
, all defined recurring interval options will be displayed directly in the form. - If set to
'compact'
only the default recurring interval option will be displayed, as well as'onetime'
.
The rest of the configured recurring intervals are displayed as options of a select dropdown.
Layout automatically falls back to 'list'
in the following cases:
- If both
'onetime'
and'recurring'
payment types are available and there is only 1 allowed recurring interval. - If only
'recurring'
payment type is available and there are only 2 possible recurring intervals.
paymentFormDataCache
Type: boolean
Default value: true
Allows to disable storing the form data in the session storage before payment is sent and restoring it when the form is re-initialized.
allowSwissQrBillOrder
Type: boolean | ConfigCondition<boolean>[]
Default value: false
Allows to show/hide "Also send me the QR bill on paper" checkbox for Swiss QR Bill payment method.
requireSwissQrBillReferenceNumber
Type: boolean | ConfigCondition<boolean>[]
Default value: false
Sets reference number to be automatically fetched for Swiss QR Bill payment method.
If this option is enabled, reference number will be fetched and set only
if corresponding service is configured up-front by RaiseNow Customer Success team.
analyticsEventTracking
Type: boolean | ConfigCondition<boolean>[]
Default value:
[
{
if: 'testMode() == true',
then: false,
else: true,
},
];
Tamaro sends some events (like form submission, payment success, etc.) for analytics purposes in prod
environment.
It doesn't collect any personal data, but it helps to understand how the widget is used and to improve it.
This option allows you to opt-out from sending these events by setting it to false
.
abTestVariants
Type: string[]
Default value: []
Defines the available A/B test variants for the payment/donation form.
If test variants are defined, you can use abTestVariant()
parser helper
in conditions to specify different values for different variants.
Read more here.
ddFormTemplate
Type: undefined | string | ConfigCondition<string>[]
Default value: undefined
Defines the URL of the direct debit form template for the payment/donation form.
oneClickPayment
Type: boolean | ConfigCondition<boolean>[]
Default value: false
When set to true
, a payment source token will be created, which can be used for further charges without card details.
dateStoreFormat
Type: string
Default value: 'YYYY-MM-DD'
Defines the date format, which is used to store the date values in the form data.
dateDisplayFormat
Type: string
Default value: 'DD / MM / YYYY'
Defines the date format, which is used to display the date values in the form fields.
recaptchaKey
Type: undefined | string
Default value: undefined
Defines the reCAPTCHA key for the payment/donation form.
You can enable google reCAPTCHA simply by providing a recaptcha api key.
You can create one here.
Make sure you use reCAPTCHA v2 (invisible). To test that recaptcha actually works, simply open the widget inside an anonymous browser window and submit a new payment. This should be enough to make recaptcha "nervous" and kick in.
customCssUrl
Type: undefined | string
Default value: undefined
Allows to specify a custom CSS file URL to be loaded for the payment/donation form.
twintCheckoutUrlParams
Type: undefined | Record<string, string>
Default value: {}
Defines the URL parameters for the Twint checkout URL.
updateFormDataOnRetryPayment
Type: undefined | boolean | ConfigCondition<boolean>[]
Default value: true
Enables/disables updating the form data with the values from the previous payment/donation.
After the donation is completed, supporter is redirected to a "Result" page,
where "Make another donation" button is shown. Clicking this button leads to the redirect
to the widget form view, where the form is prefilled with the data from the previous payment object.
When config option updateFormDataOnRetryPayment
is set to false
, the form
will not be prefilled with the data from the previous payment object.
donationReceiptRequiresFields
Type: boolean
Default value: true
Enables/disables the behavior when additional fields are required when the donation receipt is requested.
autogeneratedDonationReceiptEnabled
Type: boolean
Default value: false
If this config option is set to true
and if supporter checked donation receipt checkbox,
then additional parameter raisenow_parameters.integration.raisenow_donation_receipt_available
is added into EPMS payment object.
This config option can be used with custom widgets if organisation has uploaded their donation receipt templates in their Hub acccount.
organisationCountryCode
Type: undefined | string
Default value: undefined
Defines the country code of the organisation for the payment/donation form.
This is needed for the automatic generation of the donation receipt.
If donation receipt checkbox is checked
and donationReceiptRequiresFields is set to true
,
then some fields become required.
slots
Default value: {}
Allows to define custom slots as well as to add custom fields to the existing ones.
More info about slots can be found on the Slots page.
translations
Type: undefined | Record<string, Record<string, any>>
Default value: {}
Allows to define custom translations for the payment/donation form.