---
schema_version: "1"
id: ae12892669094eabe464ca7de72c05dffab5cdfdb746031b0be53a93570f652e
title: ProcessPaymentRequest Class
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/apexref/apex_class_RichMessaging_ProcessPaymentRequest.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: c8ef07572efec0b8d9c9a1d20c7753c29fa77153f36deb35e1b34db0a3daba83
description: Represents a request to process a payment.Creates a new instance of the RichMessaging.ProcessPaymentRequest class.The billing contact information for the payment request.The context record ID associated with the payment request.The encrypted payment data for the payment request.The payment method for the payment request.The shipping contact information for the payment request.The shipping method for the payment request.The transaction identifier associated with the payment request.
---
# ProcessPaymentRequest Class

Represents a request to process a payment.

## Namespace

[RichMessaging](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_namespace_RichMessaging.htm "Provides objects and methods for handling content in enhanced Messaging channels.")

- **[ProcessPaymentRequest Constructors](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_constructors)**
- **[ProcessPaymentRequest Properties](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_properties)**

## ProcessPaymentRequest Constructors

The following are constructors for ProcessPaymentRequest.

- **[ProcessPaymentRequest(transactionIdentifier, paymentData, billingContact, shippingContact, paymentMethod, shippingMethod, contextRecordId)](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_ctor)**  
    Creates a new instance of the RichMessaging.ProcessPaymentRequest class.

### ProcessPaymentRequest(transactionIdentifier, paymentData, billingContact, shippingContact, paymentMethod, shippingMethod, contextRecordId)

Creates a new instance of the RichMessaging.ProcessPaymentRequest class.

#### Signature

public ProcessPaymentRequest(String transactionIdentifier, String paymentData, RichMessaging.AddressableContact billingContact, RichMessaging.AddressableContact shippingContact, RichMessaging.PaymentMethod paymentMethod, RichMessaging.ShippingMethod shippingMethod, String contextRecordId)

#### Parameters

- **transactionIdentifier**: Type: [String](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_string.htm#apex_methods_system_string "Contains methods for the String primitive data type.") The transaction identifier associated with the payment request.
- **paymentData**: Type: [String](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_string.htm#apex_methods_system_string "Contains methods for the String primitive data type.") The encrypted payment data for the payment request.
- **billingContact**: Type: [RichMessaging.AddressableContact](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_AddressableContact.htm#apex_class_RichMessaging_AddressableContact "Represents an addressable contact.") The billing contact information for the payment request.
- **shippingContact**: Type: [RichMessaging.AddressableContact](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_AddressableContact.htm#apex_class_RichMessaging_AddressableContact "Represents an addressable contact.") The shipping contact information for the payment request.
- **paymentMethod**: Type: [RichMessaging.PaymentMethod](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_PaymentMethod.htm#apex_class_RichMessaging_PaymentMethod "Represents a payment method.") The payment method for the payment request.
- **shippingMethod**: Type: [RichMessaging.ShippingMethod](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ShippingMethod.htm#apex_class_RichMessaging_ShippingMethod "Represents a shipping method listed in payment requests sent in enhanced Messaging channels.") The shipping method for the payment request.
- **contextRecordId**: Type: [String](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_string.htm#apex_methods_system_string "Contains methods for the String primitive data type.") The context record ID associated with the payment request.

## ProcessPaymentRequest Properties

The following are properties for ProcessPaymentRequest.

- **[billingContact](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_billingContact)**  
    The billing contact information for the payment request.
- **[contextRecordId](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_contextRecordId)**  
    The context record ID associated with the payment request.
- **[paymentData](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_paymentData)**  
    The encrypted payment data for the payment request.
- **[paymentMethod](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_paymentMethod)**  
    The payment method for the payment request.
- **[shippingContact](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_shippingContact)**  
    The shipping contact information for the payment request.
- **[shippingMethod](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_shippingMethod)**  
    The shipping method for the payment request.
- **[transactionIdentifier](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_RichMessaging_ProcessPaymentRequest_transactionIdentifier)**  
    The transaction identifier associated with the payment request.

### billingContact

The billing contact information for the payment request.

#### Signature

public RichMessaging.AddressableContact billingContact {get; set;}

#### Property Value

Type: [RichMessaging.AddressableContact](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_AddressableContact.htm#apex_class_RichMessaging_AddressableContact "Represents an addressable contact.")

### contextRecordId

The context record ID associated with the payment request.

#### Signature

public String contextRecordId {get; set;}

#### Property Value

Type: [String](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_string.htm#apex_methods_system_string "Contains methods for the String primitive data type.")

### paymentData

The encrypted payment data for the payment request.

#### Signature

public String paymentData {get; set;}

#### Property Value

Type: [String](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_string.htm#apex_methods_system_string "Contains methods for the String primitive data type.")

### paymentMethod

The payment method for the payment request.

#### Signature

public RichMessaging.PaymentMethod paymentMethod {get; set;}

#### Property Value

Type: [RichMessaging.PaymentMethod](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_PaymentMethod.htm#apex_class_RichMessaging_PaymentMethod "Represents a payment method.")

### shippingContact

The shipping contact information for the payment request.

#### Signature

public RichMessaging.AddressableContact shippingContact {get; set;}

#### Property Value

Type: [RichMessaging.AddressableContact](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_AddressableContact.htm#apex_class_RichMessaging_AddressableContact "Represents an addressable contact.")

### shippingMethod

The shipping method for the payment request.

#### Signature

public RichMessaging.ShippingMethod shippingMethod {get; set;}

#### Property Value

Type: [RichMessaging.ShippingMethod](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ShippingMethod.htm#apex_class_RichMessaging_ShippingMethod "Represents a shipping method listed in payment requests sent in enhanced Messaging channels.")

### transactionIdentifier

The transaction identifier associated with the payment request.

#### Signature

public String transactionIdentifier {get; set;}

#### Property Value

Type: [String](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_string.htm#apex_methods_system_string "Contains methods for the String primitive data type.")