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


Introduces payments in Optimizely Customized Commerce 13, which are central to an ecommerce system.

Payments are central to an ecommerce system. Optimizely Customized Commerce offers both default payment methods and the ability to create your own payment solutions. The sample package contains example integrations with various payment providers.

Classes in this topic are available in the following namespaces:

  • Mediachase.Commerce.Orders
  • Mediachase.Commerce.Orders.Dto

When creating and configuring payment methods in ECF, three components need to be created or re-used and configured: Payment Types, Payment Gateways and Payment Methods.

Payment types

Payment types classes contain the properties of a particular payment type. For example, a credit card payment type contains credit card number, card expiration date, card type, etc. All payment types inherit from the abstract class Payment. The most common payment types are built into Customized Commerce: credit card (Obsoleted for PCI compliance), cash card, gift card, and invoice. In addition, a generic OtherPayment type is included. Payment types are meta-classes as part of MetaDataPlus.

Payment gateways

Payment gateways provide an interface to a system which provides payment processing. A payment type is passed to the payment gateway, and the gateway executes the payment transaction with the payment system, for instance PayPal. One payment type is associated with each payment gateway. See also: Payment gateways.

Payment methods

Payment methods represents the way the customer settles a purchase by processing a payment using a payment gateway.

Implement payment methods

Several payment methods are available:

  • Use a built-in payment gateway included with ECF, including integration with nSoftware.
  • Create multiple instances of the same gateway with a different configuration. This would apply if you need two payment setups with different account information for PayPal, especially for a multi-site implementation.
  • Create a custom payment gateway. An easy way to adapt capabilities and use any payment gateway.