HomeDev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Payment plugins

Describes PaymentPlugin in Optimizely Customized Commerce 13, which provides an interface to the payment processing system for abstraction APIs.

The Payment plugin of Optimizely Customized Commerce is available when building solutions with the payment processing parts of Customized Commerce. A payment type is passed to the payment plugin, which executes the payment transaction via the payment system. One payment type is associated with each payment plugin.

📘

Note

Classes in this topic are available in the EPiServer.Commerce.Order namespace, which contains IPaymentPlugin.

IPaymentPlugin is an improvement over IPaymentGateway, which supports abstraction APIs and Serializable Carts as well. The activities below will be carried out following Payment gateways exactly:

  • Payment plugin properties
  • Using built-in payment
  • Creating a custom payment plugin

There is one important difference between IPaymentPlugin and IPaymentGateway: IPaymentPlugin uses IPayment as a parameter, while IPaymentGateway uses Payment as a parameter.

Customized Commerce 14 example

PaymentProcessingResult ProcessPayment(IOrderGroup orderGroup, IPayment payment)

A simple implementation of the Adyen payment gateway is available in the Quicksilver Customized Commerce reference sample project on GitHub.

Customized Commerce 11-13 example

PaymentProcessingResult ProcessPayment(IOrderGroup orderGroup, IPayment payment)

Using IPaymentPlugin, Optimizely Customized Commerce provides sample code for PayPal, DIBS and DataCash. See Payment providers.

Customized Commerce 10.2.2-10.x example

bool ProcessPayment(IPayment payment, ref string message);