Page tree
Skip to end of metadata
Go to start of metadata
Module that enables payments through the  Adyen payment platform .

Installation

Maven is the easiest way to install the module. Add the following dependency to your bundle:

<dependency>
  <groupId>info.magnolia.payments</groupId>
  <artifactId>magnolia-adyen-connector</artifactId>
  <version>1.0</version>
</dependency>

Versions

1.0  Magnolia 6.2

Usage

This module allows the integration of Adyen's  payment gateway  through "ready to use" component templates.

The main idea of this kind of integration is to be able to sell products without a cart or an e-commerce tool. 

Usage for Users

From a user's point of view, business cases can be:

  • Guided sell through form steps where users could configure the product they are going to buy.
  • Unique product sell where users simply could select the product they want to buy.
  • Users can buy products on Magnolia websites without any e-commerce integration.

Usage for Editors

From an editor's point of view:

  • Editors could configure any product to be sell through form steps, with a single price and/or add-on prices where the last step would be comercia's checkout page.
  • Editors could configure a product with a single price, which leads directly to adyen's checkout page.
  • Editors can review/manage orders  generated from Magnolia websites. The management is currently done in Adyen's dashboard.

Payment flow

The drop-in approach has been selected for the integration:


3DS Secure Authentication

3DS secure authentication version 1 and 2 has been included in the integration.

Templates

The following components are available by default in travels demo prototype.

All components support i18n for the languages configured in the site definition

Several properties can be configured:

  1. Response page: Page to show the payments result (see next component).
  2. Card holder name: Wether the card holder's name field is going to be shown.
  3. Billing Address: Wether the billing address field is going to be shown.
  4. System locale: Wether the system locale is going to be used to localize the checkout form.

You can optionally override:

  1. Currency: Currency to be used for the payment: EUR or any other supported currency code.
  2. Value: Fixed amount to be used in the payment.


CSS styles

If you need to configure the components styles you can provide you own css code in the dropin.css file.

The following properties can be configured:


  1. Title: The title to be shown.
  2. Success message: Text to be shown when the payment is successful.
  3. Fail message: Text to be shown when the payment has failed.
  4. Loading message: Text to be shown when the payment is being processed.

REST Endpoints

The following endpoints are provided by the module in order to achieve the payment flow using Adyen's API.

  • getPaymentMethods: Returns a list of payment methods configured for a given merchant/account.
POST: /.rest/adyen/v1/getPaymentMethods

  • payment: Makes a payment request for a given merchant/account.
POST: /.rest/adyen/v1/payment

Parameter

Description

Parameter type

Data type

paymentMethod

required

The payment method selected in the dropin.

body

json

amount

required

The amount of the payment. It must include value and currency.

body

json

  • paymentDetails: Retrieves additional details for a payment request for a given merchant/account.
POST: /.rest/adyen/v1/paymentDetails

Parameter

Description

Parameter type

Data type

details

required

3DS internal data.

body

json

paymentData

required

Internal payment data.

body

json

  • notification: Webhook where Adyen notifies various payment states.
POST: /.rest/adyen/v1/notification

Payment Gateway Configuration

In order to configure the module you just need to go to the module's config:

  • /modules/adyen-connector/config

And fill out the following properties:

Node nameValue

 modules


  adyen-connector


 config


  apiKey

QWERTYSAMPLEKEY123

 clientKey

QWERTYSAMPLEKEY123

 environment

LIVE

 merchantAccount

account

 originURL

http://yourdomain

 platformIntegrator

IntegratorName

Where:

  • apiKey: Key configured in Adyen's account dashboard.
  • clientKey:  Key configured in Adyen's account dashboard.
  • environment: TEST or LIVE depending on the platform you need.
  • merchantAccount:  The merchant account you received in Adyen's registration.
  • originURL:  The URL of the authors server. The URL has the form: http(s)://[ip or domain]:[port]/
  • platformIntegrator:  The name of the integrator you want to be registered in your payments.

Warnings

  • This module is at INCUBATOR level.

Changelog

  • Version 1.0 - Initial release of the extensions version of the module.