---
title: "Payments"
slug: "payments"
abstract: ""
---
# Payments

<details>
<summary><h2>Configuration</h2></summary>

You can find all configuration for the payments subsystem in the `Sitecore.Commerce.Payments.config` file. Here you will find all details for the entities, pipelines, and repositories used by the payments system.

</details>

<details>
<summary><h2>Entities</h2></summary>

The default payment entities for Commerce Connect only assumes some of the basic payment information that will be used across all commerce systems; it is expected that you will need to extend these entities.

You can extend the following three entities that are defined in the Connect system for payments:

- `PaymentOption` - represents detailed information about a payment option (also known as a payment category); contains information such as description and `PaymentOptionType`.
- `PaymentMethod` - represents information about a payment method, where a payment method is an implementation of a payment option, for example, if the payment option is PayCard then a payment method for that would be Visa or Mastercard.
- `PaymentOptionType` - an extensible enum class used to contain the different types of payment options; the default choices are `None`, `PayCard`, `PayLoyaltyCard`, and `PayGiftCard`.

To extend any of these default entities you create a new class that inherits from the appropriate type, and then patch the appropriate entity under `commerce.Entities` in the `Sitecore.Commerce.Payments.config` file.

- `PaymentLookup` - holds information required to lookup payment prices for a collection of line items.
- `CardType` - used to represent a payment card type supported by the merchant website or payment service.
- `PurchaseLevel` - used to represent the level of card processing that will be performed during a payment service transaction.
- `TransactionType` - used to represent the type of transaction being performed with a payment service.

</details>

<details>
<summary><h2>Pipelines</h2></summary>

There are several pipelines for payments that allow most basic functionality.

For example:

- The `getPaymentOptions` pipeline - used to retrieve payment options.
- The `getPaymentMethods` pipeline - used to retrieve of payment methods.
- The `getPricesForPayments` pipeline - used to get the cost of using a particular payment option and method.
- The`  getPaymentServiceUrl  `pipleline - used to retrieve the payment service payment acceptance page.
- The` getPaymentServiceActionResult` pipeline - used to retrieve the result of a payment service transaction.

> [!note]
> For more information, see the [Commerce Connect Developer Reference](https://doc.sitecore.com/xp/en/developers/103/sitecore-experience-commerce/commerce-connect-developer-reference.html "Commerce Connect developer reference").

</details>