Payment

Payment is a critical part of all Ecommerce solutions, and as such understanding the payment process is important - here's a short description:

A customer adds products to their shopping cart, and then decides to check out. During checkout she is asked to select a payment method. A payment method uses a piece of software called a checkout handler to communicate with an external service called a payment provider - e.g. DIBS, QuickPay, Stripe, or PayPal - which presents the customer with a choice of cards and other methods used to actually pay. The customer pays, the funds are reserved on the card, and - once the goods are sent - the payment is captured by the payment provider and relayed to the payment acquirer, which is typically a bank or an online wallet. 

In practical terms this means that for each payment provider you want to allow your customers to use, you must create a matching payment method. 

To create a payment method:

  • Go to Settings > Ecommerce > Orders > Payment
  • Click New payment in the toolbar to open the payment method window (Figure 1.1)

A payment method consists of four sections:

  • The Method section (1)
  • The Country rates section (2)
  • The Fees section (3)
  • The Cart type section (4)

The Method section is used to define the most basic properties – the name, a description, an icon.

The Countries section (Figure 2.1) is used to specify the country context for which this payment method should be available. 

Figure 2.1 Country rates

The country context is defined by the country set on the billing address of the user or visitor checking out – only the payment methods which have been made available for that country will be rendered. If you add states or regions to an ecommerce country they are also selectable here.

Only the payment methods created in the language set as the default language in the website Ecommerce settings will be rendered in frontend, so on a website with Danish set as the default ecommerce language, only the Danish payment methods are available (Figure 2.2). Of these payment methods, only the ones active for the billing country in the shopping cart are shown.

Figure 2.2 Payment methods available when Danish is the default ecommerce language for a website

The Fees section (Figure 3.1) is used to create percentage-based or fixed-amount fees which will be added to the total price of an order when using this payment method.

Figure 3.1 Adding fees

To create a fee:

  • Click Click here to add a new row
  • Enter a fee and select a typeamount or percentage
  • Select a Total Price at which point the fee will trigger – below this threshold, the fee will not trigger

As with other hierarchies, the more specific fee applies – a region fee trumps a country fee, and a country fee trumps an all countries fee. By default, fees are applied based on the billing country – but you can go to Settings > Ecommerce > Advanced Configuration and use the Fee Calculation setting to use the delivery country instead.

The Cart type section (Figure 4.1) is used to select a checkout handler for the payment method. A checkout handler is a piece of software which integrates with a payment provider such as PayPal or Stripe. You can also select None and simply use the Fees section to charge an appropriate fee for shipping & handling.

Figure 4.1 Selecting a cart type

Each checkout handler must be configured in accordance with the requirements of the payment provider – please select the appropriate guide below:

Name

Database

These are the database tables associated with payment in Dynamicweb:

EcomPayments

Contains payment method configuration data from Settings -> Ecom -> Orders -> Payment.

Field name Data type Length
PaymentId nvarchar 50
PaymentLanguageId nvarchar 50
PaymentName nvarchar 255
PaymentDescription nvarchar Max
PaymentIcon nvarchar 255
PaymentGatewayId nvarchar 50
PaymentGatewayTemplate nvarchar 255
PaymentMerchantNum nvarchar 50
PaymentGatewayMD5Key nvarchar 255
PaymentCCITemplate nvarchar 255
PaymentGatewayParameters nvarchar Max
PaymentIconOrderList nvarchar 255
PaymentAddInType nvarchar Max
PaymentCheckoutSystemName nvarchar Max
PaymentCheckoutParameters nvarchar Max
PaymentSorting int 4
PaymentAutoId int 4
PaymentActive bit 1

EcomCustomersSettings

Links a user (AccessUserId) with preferred currency, payment method and shipping method (CurrencyCode, PaymentMethodId, ShippingMethodId).

Field name Data type Length
SettingId int 4
AccessUserId int 4
PaymentMethodId nvarchar 50
ShippingMethodId nvarchar 50
CurrencyCode nvarchar 3