---
schema_version: "1"
id: b5016c591bbd9fa530117e10246965279493c0e6a466defb7979596c5a86c619
title: ProcessPaymentHandler Interface
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/apexref/apex_interface_RichMessaging_ProcessPaymentHandler.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_interface_RichMessaging_ProcessPaymentHandler.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 50fb3130ddb7a8a455668ebb2813eedbc5a9aa6c7521056c619058d0bc2534b3
description: Interface used to process payment requests.Processes a payment request.
---
# ProcessPaymentHandler Interface

Interface used to process payment requests.

## 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.")

- **[ProcessPaymentHandler Methods](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_interface_RichMessaging_ProcessPaymentHandler.htm#apex_RichMessaging_ProcessPaymentHandler_methods)**
- **[ProcessPaymentHandler Example Implementation](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_interface_RichMessaging_ProcessPaymentHandler.htm#apex_interface_RichMessaging_ProcessPaymentHandler_Example)**

## ProcessPaymentHandler Methods

The following are methods for ProcessPaymentHandler.

- **[processPaymentRequest(var1)](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_interface_RichMessaging_ProcessPaymentHandler.htm#apex_RichMessaging_ProcessPaymentHandler_processPaymentRequest)**  
    Processes a payment request.

### processPaymentRequest(var1)

Processes a payment request.

#### Signature

public RichMessaging.ProcessPaymentResult processPaymentRequest(RichMessaging.ProcessPaymentRequest var1)

#### Parameters

- **var1**: Type: [RichMessaging.ProcessPaymentRequest](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentRequest.htm#apex_class_RichMessaging_ProcessPaymentRequest "Represents a request to process a payment.") The payment request.

#### Return Value

Type: [RichMessaging.ProcessPaymentResult](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_class_RichMessaging_ProcessPaymentResult.htm#apex_class_RichMessaging_ProcessPaymentResult "Represents the result of a payment processing operation.")

## ProcessPaymentHandler Example Implementation

This is an example implementation of the RichMessaging.ProcessPaymentHandler interface.

global class MyProcessPaymentHandler implements Richmessaging.ProcessPaymentHandler {

   global RichMessaging.ProcessPaymentResult processPaymentRequest(RichMessaging.ProcessPaymentRequest paymentRequest) {

       // TODO: Reach out to your payment processor here and return success or failure based on the result of that request

       return new RichMessaging.ProcessPaymentResult(RichMessaging.ProcessPaymentResultStatus.SUCCESS);
   }
}