COPYandPAY API

Introduction

The COPYandPAY API enables you to further customise your checkout workflows.

You can find the reference for the wpwlOptions and see what they look like on the workflow examples page.

ParameterDescriptionExamplesMulti-card support
localeSets the language/country of the payment forms. Expects ISO 639-1 for languages and ISO 3166-1 alpha-2 for countries. Default is "en-US".locale: "de-AT"No. This parameter applies to all the card forms rendered.
Supported languages are: ar, be, bg, cn, cz, de, da, el, en, es, fi, fr, gr, hu, it, ja, ko, nl, no, pl, pt, ro, ru, sv, sk, sl, trlocale: "de"
Right-to-left languages are not supported by the number formatter. When using "ar", for example, set numberFormatting: false.Check the requirements of the connector you are integrating in your shop. If the connector requires to have the language and the country provided, use the format "de-AT". If there is no prerequisite defined, you may use any of the two options.
styleSets the style of the payment forms. You can choose from "card", "logos", "none", and "plain" style. Use "none" to completely remove the styling and apply your customisation.style: "card"No. This parameter applies to all the forms rendered.
autofocusSets focus to the selected input/select element on the payment page upon loading.autofocus: "card.holder"No. This parameter applies to all the card forms rendered.
onReadyTriggers when all payment forms are ready.onReady: function(array) {/* function */};No. This parameter applies to all the card forms rendered. This function receives an array of JSON objects. The array length is the sum of the card forms rendered. Each element in the array contains two key-value pairs: 'containerKey', which holds the class value of the card container, and 'ccMethods', which holds the payment brands supported by the card form.
onReady: function(array) { $.each(array, function(key, value) { console.log('containerKey ' + value.containerKey + ' ccMethods ' + value.ccMethods.toString()); }); };
requireCvvDetermines if the payment form presents the CVV field.requireCvv: falseNo. This parameter applies to all the card forms rendered.
allowEmptyCvvDetermines whether the CVV field can be empty. By default, it is false.allowEmptyCvv: trueNo. This parameter applies to all the card forms rendered.
allowEmptyCardHolderNameDetermines whether the CardHolder field cannot be empty if option is false. By default it is true.allowEmptyCardHolderName: falseNo. This parameter applies to all the card forms rendered.
disableCardExpiryDateValidationDetermines if the system should validate the card expiry date field. By default, the system validates it (false).disableCardExpiryDateValidation: trueNo. This parameter applies to all the card forms rendered.
enableSAQAComplianceUsed to make the credit card form SAQA compliant. Enabling this renders the cardholder and expiry date fields in separate iframes. By default, it is false.enableSAQACompliance: trueNo. This parameter applies to all the card forms rendered.
useSummaryPageIf set to true, the payment does not complete. Instead, the form triggers a callback to the onSaveTransactionData function, which initiates a redirection to a summary page. This summary page summarises the checkout before asking the user to confirm. An example appears on the advanced options page.useSummaryPage: trueNo. This parameter applies to all the card forms rendered.
onSaveTransactionDataTriggered after the shopper presses Continue on the COPYandPAY form, when you set the useSummaryPage flag to true. Parameter "data" is the serialised data of the payment form.onSaveTransactionData: function(data){console.log(data);}No. This parameter applies to all the card forms rendered.
browser.threeDChallengeWindowDimensions of the challenge window displayed to the shopper during 3-D Secure 2 authentication. The default value is automatically detected from the card form width.

Available values are 1-5, where:
1 = 250x400
2 = 390x400
3 = 500x600
4 = 600x400
5 = Full screen
browser: { threeDChallengeWindow: 5 }No. This parameter applies to all the card forms rendered.
threeDIframeSizeSets the size of the 3-D Secure iframe. The shopper uses this iframe only if they need to enter 3-D Secure credentials on the bank's page.'threeDIframeSize':{'width':'100%', 'height':'580px'}No. This parameter applies to all the card forms rendered.
paymentTargetPeach Payments submit the form to this target. In case of extra shopper interaction, for example, 3-D Secure, the system redirects the shopper in this target.

Important: This only works for card payment brands. The target should not be the same as the page frame name, otherwise the redirect does not work.
paymentTarget: 'my3dIframe'No. This parameter applies to all the card forms rendered.
shopperResultTargetWorks only in combination with the paymentTarget option.

By default, Peach Payments redirects the shopper to the given shopperResultUrl using a self-submitting form with target="_top". If you use COPYandPAY in an iframe and want to redirect the shopper in this iframe, then the shopperResultTarget and the paymentTarget should be the name of this iframe.

Important: This only works for card payment brands. The target should not be the same as the page frame name, otherwise the redirect does not work.
paymentTarget: 'myCustomIframe',<br />shopperResultTarget: 'myCustomIframe'No. This parameter applies to all the card forms rendered.
inlineFlowIndicates the alternative payment brand which should get rendered inline. No browser redirect happens; an inline integration collects all the information required to process the transaction. The consumer stays on the page.['KLARNA_PAYMENTS_PAYNOW', 'KLARNA_PAYMENTS_PAYLATER', 'KLARNA_PAYMENTS_SLICEIT']This parameter applies to all the card forms rendered.
disableSubmitOnEnterPrevents the user from submitting the payment form when they press the Enter key. By default, it is false.disableSubmitOnEnter: trueThis parameter applies to all the card forms rendered.
showTaxNumberFieldSetting this to true displays the CPF field on the COPYandPAY form. Payments in Brazil require the CPF field.showTaxNumberField: trueThis parameter applies to all the card forms rendered.
showCVVHintSetting this to true displays a hint on the credit card form showing the CVV's location when the mouse hovers over the CVV field.showCVVHint: trueThis parameter applies to all the card forms rendered.
brandDetectionWhen the COPYandPAY form includes multiple credit card brands (for example, Mastercard, Visa, Amex) and if this option is true (default is false), COPYandPAY automatically updates the brand field based on the first four digits entered in the credit card number field.brandDetection: trueThis parameter applies to all the card forms rendered.
brandDetectionPriorityUse this together with brandDetection: true. This list modifies the default priority of brand detection. It helps when two brands share the same BINs. If the list omits a brand, it takes the default priority.brandDetectionPriority: ["ALIA", "IK_PRIVATE_LABEL", "MAESTRO", "VISA"]This parameter applies to all the card forms rendered.
brandDetectionTypeAvailable options are: "regex" and "binlist". By default, brand detection uses regular expressions ("regex"). The option "binlist" instructs COPYandPAY to search for brands from its internal BIN database. "binlist" produces better results than "regex".brandDetectionType: "binlist"This parameter applies to all the card forms rendered.
onChangeBrandTriggers if the payment brand is getting changed.onChangeBrand: function(data){console.log(data);}Yes.
displayBicIf the COPYandPAY form contains the DIRECTDEBIT_SEPA brand and if this option is true (default is false), COPYandPAY displays the BIC field.displayBic: true
forceCardHolderEqualsBillingNameBy default, COPYandPAY's form displays the card.holder as one field. If this option is true, the form displays separate fields for the given name and surname. The values entered submit as both card.holder and customer.givenName and customer.surname. This option has no effect when enableSAQACompliance is active.forceCardHolderEqualsBillingName: trueThis parameter applies to all the card forms rendered.
billingAddressOption to display the billing address fields.billingAddress: { country: "US", state: "NY", city: "New York", postcode: "12345", street1: "Suite 1234", street2: "Some Road" }This parameter applies to all the card forms rendered.
mandatoryBillingFieldsDescribe which billing fields cannot be empty. Use this option with the billingAddress option.mandatoryBillingFields: { country: true, state: true, city: true, postcode: true, street1: true, street2: false }This parameter applies to all the card forms rendered.
validationUse validation. If false, disables validation, and the functions validate* and on*Submit* do not get called.validation: trueThis parameter applies to all the card forms rendered.
validateCardTriggers before onBeforeSubmitCard. The context (this) is the form. Overrides the default validation for cards.validateCard: function(){ /* function */ }This parameter applies to all the card forms rendered.
validateDirectDebitTriggers before onBeforeSubmitDirectDebit. Context (this) is the form. Overrides the default validation for direct debit.validateDirectDebit: function(){ /* function */}
validateOnlineTransferTriggers before onBeforeSubmitOnlineTransfer. Context (this) is the form. Overrides the default validation for online transfer.validateOnlineTransfer: function(){ /* function */}
validateVirtualAccountTriggers before onBeforeSubmitVirtualAccount. Context (this) is the form. Overrides the default validation for virtual account.validateVirtualAccount: function(){ /* function */}
validatePrepaymentTriggers before onBeforeSubmitPrepayment. Context (this) is the form. Overrides the default validation for prepayment.validatePrepayment: function(){ /* function */}
validateInvoiceTriggers before onBeforeSubmitInvoice. Context (this) is the form. Overrides the default validation for invoice.validateInvoice: function(){ /* function */}
validateOnDeliveryTriggers before onBeforeSubmitOnDelivery. Context (this) is the form. Overrides the default validation for on delivery.validateOnDelivery: function(){ /* function */}
onDetectBrandTriggered every time the system detects a brand and provides a list of possible brands and the current active brand selected in the payment brand drop down.onReady: function(array) { $.each(array, function(key, value) { console.log('containerKey ' + value.containerKey + ' ccMethods ' + value.ccMethods.toString()); }); }, onDetectBrand: function(brands, activeBrand, cardClassParameter) { for (var index = 0; index < brands.length; index++) { console.log(brands[index]); } console.log('activeBrand ' + activeBrand); console.log('cardClassParameter ' + cardClassParameter); }Yes. This function works in combination with onReady. The onReady informs the merchant on all class of the card containers rendered. The onDetectBrand passes a third parameter which indicates the card form that triggered the onDetectBrand callback.
onBlurSecurityCodeTriggers on leaving the card security code field. Context (this) is the iframe communication object.onBlurSecurityCode: function(isValid){ /* function */}No. This parameter applies to all the card forms rendered.
onBlurCardNumberTriggers on leaving the card number field. Context (this) is the iframe communication object.onBlurCardNumber: function(isValid){ /* function */}No. This parameter applies to all the card forms rendered.
onBlurCardHolderTriggers on leaving the card holder field. Context (this) is the iframe communication object. Only available when enableSAQACompliance is true.onBlurCardHolder: function(isValid){ /* function */}No. This parameter applies to all the card forms rendered.
onBlurExpiryDateTriggers on leaving the expiry date field. Context (this) is the iframe communication object. Only available when enableSAQACompliance is true.onBlurExpiryDate: function(isValid){ /* function */}No. This parameter applies to all the card forms rendered.
onLightboxCancelCallback when the shopper cancels the transaction in the lightbox.onLightboxCancel: function(){ /* function */}No. This parameter applies to all the card forms rendered.
executePaymentCalling executePayment(/*class name of the form container*/), triggers the payment form submission for a defined payment container.wpwl.executePayment("wpwl-container-card-289266444291")Yes. This function works in combination with onReady. The onReady informs the merchant on all the class of the card containers rendered. Merchants can programmatically submit the concerned card form by passing its container class name.
onStorePaymentDetailsTriggers before onBeforeSubmitCard if the system checks checkbox[name="createRegistration"]. Context (this) is the form.onStorePaymentDetails: function(event){ /* function */}, onReady: function() { var createRegistrationHtml = '<div class="customLabel">Store payment details?</div><div class="customInput"><input type="checkbox" name="createRegistration" value="true" /></div>'; $('form.wpwl-form-card').find('.wpwl-button').before(createRegistrationHtml); }No. This parameter applies to all the card forms rendered.
onBeforeSubmitCardTriggers before card payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitCard: function(event){ /* function */}No. This parameter applies to all the card forms rendered.
onBeforeSubmitOneClickCardTriggers before card payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitOneClickCard : function(event){ /* function */}No. This parameter applies to all the card forms rendered.
onBeforeSubmitDirectDebitTriggers before direct debit payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitDirectDebit: function(event){ /* function */}
onBeforeSubmitOnlineTransferTriggers before online transfer payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitOnlineTransfer: function(event){ /* function */}
onBeforeSubmitVirtualAccountTriggers before virtual account payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitVirtualAccount: function(event){ /* function */}
onBeforeSubmitInlineVirtualAccountTriggers before the Klarna Payments inline virtual account payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitInlineVirtualAccount: function(event){ /* function */}
onBeforeSubmitPrepaymentTriggers before prepayment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitPrepayment: function(event){ /* function */}
onBeforeSubmitInvoiceTriggers before invoice payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitInvoice: function(event){ /* function */}
onBeforeSubmitOnDeliveryTriggers before on delivery payment submission. Context (this) is the form. Overrides the internal submit function.onBeforeSubmitOnDelivery: function(event){ /* function */}
onBeforeSubmitCardPromiseA function that gets called before the card form submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitCardPromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitInvoicePromiseA function that gets called before an invoice payment submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitInvoicePromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitPrepaymentPromiseA function that gets called before a pre-payment submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitPrepaymentPromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitVirtualAccountPromiseA function that gets called before a virtual account payment submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitVirtualAccountPromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitInlineVirtualAccountPromiseA function that gets called before the Klarna Payments inline virtual account payment submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitInlineVirtualAccountPromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitOnlineTransferPromiseA function that gets called before an online transfer payment submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitOnlineTransferPromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitDirectDebitPromiseA function that gets called before a direct debit payment submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitDirectDebitPromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitOnDeliveryPromiseA function that gets called before a delivery payment submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitOnDeliveryPromise = function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onBeforeSubmitPromiseRejectCallbackA callback function that invokes when the result of any onBeforeSubmit*Promise results in a rejection.function onBeforeSubmitPromiseRejectCallback() { /* function */ };
onBeforeSubmitOneClickCardPromiseA function that gets called before the OneClick card form submits. It should return a Promise object that resolves or rejects based on the asynchronous operation.onBeforeSubmitOneClickCardPromise= function() { if (operationSucceeded) { return Promise.resolve(); } else { return Promise.reject(new Error("Operation failed")); } };
onAfterSubmitTriggers after the payment submission. Context (this) is the form.onAfterSubmit: function(){ /* function */}No. This parameter applies to all the card forms rendered.
onLoadThreeDIframeTriggers when the 3-D Secure targetIframe has loaded, Context (this) is the iframe.onLoadThreeDIframe: function(){ /* function */}No. This parameter applies to all the card forms rendered.
spinnerSets the style of the loading spinner. Peach Payments uses the spin.js library to display the spinner.spinner: { color: "red" }No. This parameter applies to all the card forms rendered.
sofortCountriesSets available countries for SOFORT Uberweisung.sofortCountries: { DE: "Deutschland", NL: "Nederland", AT: "Osterreich", BE: "Belgique", CH: "Schweiz", GB: "United Kingdom" }
onReadyIframeCommunicationTriggers when the communication between the PCI iframe and the payment form establishes. Context (this) is the iframe communication object.onReadyIframeCommunication: function(){ this.$iframe.height(200) }No. This parameter applies to all the card forms rendered.
onFocusIframeCommunicationTriggers when the shopper focuses the input element in the PCI iframe. Context (this) is the iframe communication object.onFocusIframeCommunication: function(){ this.$iframe.height(200) }No. This parameter applies to all the card forms rendered.
onBlurIframeCommunicationTriggers when the shopper leaves the input element in the PCI iframe. Context (this) is the iframe communication object.onBlurIframeCommunication: function(){ this.$iframe.height(200) }No. This parameter applies to all the card forms rendered.
showLabelsShows or hides input labels. Default is true.showLabels: falseNo. This parameter applies to all the card forms rendered.
showPlaceholdersShows or hides input placeholders. Default is true.showPlaceholders: falseNo. This parameter applies to all the card forms rendered.
labelsOverrides labels from the list of available labels.labels: {cardHolder: "Name on card", cvv: "Security code"}No. This parameter applies to all the card forms rendered.
errorMessagesOverrides error messages from the list of available error messages.errorMessages: {cardHolderError: "Invalid name on card", cvvError: "Invalid security code"}No. This parameter applies to all the card forms rendered.
onErrorCallback that triggers if an error occurs during checkout. Read the error.name for details. Possible errors:
- InvalidCheckoutIdError: Shopper waits for 30 minutes and pays, but the checkoutId is already expired. See error.message for details.
- PciIframeSubmitError: Error submitting card number or/and card CVV, for example,, the request ran into a timeout. See error.message for details.
- PciIframeCommunicationError: Merchant page is not able to communicate with PCI iframes. See error.message for details.
- WidgetError: When the shopper did not complete the payment in an external integration for any reason. See error.brand to determine from which widget the error comes. The error.event value is "closed", indicating that the shopper closed the widget before completing the payment.

Note: This callback is also triggered under the following conditions:
- PayPal Continue (inlineFlow): When the shopper closes the PayPal pop-up window during a PayPal Continue inline flow.
Example: {"brand":"PAYPAL_CONTINUE","event":"closed","message":{"orderID":"5ML88112J1669413J"}}
- PayPal Continue (inlineFlow): When PayPal invokes its callback function onError to report any errors.
Example: {"brand":"PAYPAL_CONTINUE","event":"PAYPAL_CONTINUE:onError","message":{.....}}
- Google Pay: When the shopper closes the Google Pay pop-up window during a Google Pay transaction and the merchant has not implemented wpwlOptions.googlePay.onCancel.
Example: {"brand":"GOOGLEPAY","event":"closed","message":"User closed GooglePay Widget! {\"statusCode\":\"CANCELED\"}"}
- Google Pay: When Google Pay payment request is not configured accurately, onError triggers.
Example: {"brand":"GOOGLEPAY","event":"developer_error","message":"The passed PaymentDataRequest object was improperly formatted..."}
- Apple Pay: When you present the Apple Pay payment sheet, Apple Pay invokes its callback onValidateMerchant. If there is any failure in onValidateMerchant(), it triggers onError.
Example: {"brand":"APPLEPAY","event":"onValidateMerchant-fail","message":"Failure reason - .... Aborting Session."}
javascript<br />wpwlOptions.onError = function(error) {<br /> // Check if shopper paid after 30 minutes, aka checkoutId is invalid<br /> if (error.name === "InvalidCheckoutIdError") {<br /> // doSomething();<br /> } else if (error.name === "WidgetError") {<br /> console.log("Extra properties: ");<br /> console.log(error.brand + " and " + error.event);<br /> }<br /> // Read the error message<br /> console.log(error.message);<br />}This parameter applies to all the card forms rendered.
forterUse this parameter when you enable Forter as a Risk check on the channel. When fast checkout payment brands apply to Forter-configured channels, pass the siteId configuration as below.{ forter : { siteId: 'ForterSiteId' } }No. This parameter applies to all the card forms rendered.
showOneClickWidgetUse this parameter when you need to show/hide OneClick widget. The system hides the OneClick checkout widget if the value of the parameter is false.. By default it is true.showOneClickWidget: trueNo. This parameter applies to all the card forms rendered.
hideOtherPaymentButtonUse this parameter when you need to hide "show other payment methods" button on OneClick checkout widget. The system hides this button on the OneClick checkout widget if the value of the parameter is true. By default it is false.hideOtherPaymentButton: trueNo. This parameter applies to all the card forms rendered.

Brand-specific parameters

Some brands also use specific parameters to provide an appropriate user experience during checkout. The COPYandPAY API also allows you to customise these brand-specific parameters. You can find the reference on brand-specific parameters for wpwlOptions below.

ParameterDescriptionExample
styling.layoutSets the layout of PayPal Smart Payment Buttons during a PayPal checkout when multiple buttons are available. Default is "vertical". Supported options are: "vertical", "horizontal".styling: {layout: "vertical"}
styling.colorSets the colour of PayPal Smart Payment Buttons during a PayPal checkout. Default is "gold". Supported options: "gold", "blue", "silver", "white", "black".styling: {color: "gold"}
styling.shapeSets the shape of PayPal Smart Payment Buttons during a PayPal checkout. Default is "rect". Supported options: "rect", "pill".styling: {shape: "rect"}
styling.heightSets the height of PayPal Smart Payment Buttons during a PayPal checkout. To customise button width, alter the width of the container element. Supported values: 25 to 55.styling: {height: 25}
styling.labelSets a label of PayPal Smart Payment Buttons during a PayPal checkout. Default is "paypal". Supported options are: "paypal", "checkout", "buynow", "pay".styling: {label: "paypal"}
styling.taglineDisplays a tagline of PayPal Smart Payment Buttons during a PayPal checkout. Default is true. Supported options are: true, false.styling: {tagline: true}
fundingSourcesBased on merchant needs, renders a set of PayPal Smart Payment Buttons during a PayPal checkout. This should be an array. Supported options are: PAYPAL, CARD, PAYLATER, CREDIT.fundingSources: ["PAYPAL", "CARD", "PAYLATER", "CREDIT"]

Labels

KeyValue
accountBankBank code
accountBankBicBIC or bank code
accountBicBIC
accountHolderAccount holder
accountIdId
accountNumberAccount number
accountNumberIbanIBAN or account number
accountIbanIBAN
bankNameName of bank
brandBrand
cancelBack
cardHolderCard holder
cardNumberCard Number
cvvCVV
cvvHintThe 3 digits on the back of your card
cvvHintAmexThe 4 digits on the front of your card
cvvHintMaestroThe 3 digits on the back of your card if specified
countryCountry
expiryDateExpiry Date
taxNumberTax Identification Number
submitPay now
nextStepContinue
billingAgreementInvoice terms and conditions
emailOrAccountIdEmail or Account Id
secureIdSecure Id
learnMoreLearn more
mmyyMM / YY
customerMobilePhone number (+78000001774)
registerRegister now
showOtherPaymentMethodsShow other payment methods
olpIdOLP ID
birthDateDate of birth

Error messages

KeyValue
accountBankErrorInvalid bank code
accountBankBicErrorInvalid BIC or bank code
accountBicErrorInvalid BIC
accountHolderErrorInvalid account holder
accountNumberErrorInvalid account number
accountNumberIbanErrorInvalid IBAN or account number
accountIbanErrorInvalid IBAN
cardHolderErrorInvalid card holder
surNameErrorInvalid surname
givenNameErrorInvalid given name
cardNumberErrorInvalid card number or brand
cvvErrorInvalid CVV
expiryMonthErrorInvalid expiry date
expiryYearErrorInvalid expiry date
taxNumberErrorInvalid Tax Identification Number
generalTermsAndConditionsErrorAccept the consent for data transmission
billingCountryErrorInvalid country
billingStateErrorInvalid state
billingCityErrorInvalid city
billingStreetErrorInvalid street
billingPostCodeErrorInvalid postcode

Payment containers

ParameterDescriptionExample
wpwl-container-cardAll card payment options appear in that container.
wpwl-container-card-{unique id}All card payment options appear in that container.wpwl-container-card-289266444291
wpwl-container-directDebitAll direct debit options appear in that container.
wpwl-container-prepayment-{brand_name}The specific prepayment option appears in that container.wpwl-container-prepayment-PAYPAL
wpwl-container-onlineTransfer-{brand_name}The specific online transfer option appears in that container.wpwl-container-prepayment-PAYPAL
wpwl-container-virtualAccount{brand_name}The specific virtual account payment option appears in that container.wpwl-container-virtualAccount-PAYPAL