> ## Documentation Index
> Fetch the complete documentation index at: https://docs.revolv3.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sale With Payment Method Id

> Processes a **sale transaction** using a previously stored payment method, referenced by its unique ID.
This is a one-step payment operation that **authorizes and captures funds** in a single call.

You must provide the `paymentMethodId`, along with invoice, and amount details.
This endpoint is commonly used for charging returning customers, subscriptions, or quick-pay scenarios where the user has already saved a card, or ACH account. The payment can be either one-time or it can include data to define the initial transaction in a recurring or installment stream. This allows the networks to tie subsequent transactions back to the original approval, ensuring a seamless and efficient payment process.

It improves security and user experience by avoiding the need to re-enter payment data.

Quick Starts:
<ul>
 <li><a href="/docs/make-a-payment">Make a Payment</a></li>
</ul>

Related Links:
<ul>
<li><a href="/docs/network-processing-types">Network Processing Types</a></li>
<li><a href="/docs/dynamic-descriptor-guide">Dynamic Descriptor Guide</a></li>
<li><a href="/docs/order-processing-channel">Order Processing Channel</a></li>
<li><a href="/docs/invoice-status">Invoice Status</a></li>
</ul>



## OpenAPI

````yaml /api-reference/swagger.json post /api/Payments/sale/{paymentMethodId}
openapi: 3.0.4
info:
  title: Revolv3 OpenApi Spec
  description: Spec for Revolv3
  version: 1.29.1
servers:
  - url: 'https://api-sandbox.revolv3.com '
security: []
paths:
  /api/Payments/sale/{paymentMethodId}:
    post:
      tags:
        - Payments
      summary: Sale With Payment Method Id
      description: "Processes a **sale transaction** using a previously stored payment method, referenced by its unique ID.\r\nThis is a one-step payment operation that **authorizes and captures funds** in a single call.\r\n\r\nYou must provide the `paymentMethodId`, along with invoice, and amount details.\r\nThis endpoint is commonly used for charging returning customers, subscriptions, or quick-pay scenarios where the user has already saved a card, or ACH account. The payment can be either one-time or it can include data to define the initial transaction in a recurring or installment stream. This allows the networks to tie subsequent transactions back to the original approval, ensuring a seamless and efficient payment process.\r\n\r\nIt improves security and user experience by avoiding the need to re-enter payment data.\r\n\r\nQuick Starts:\r\n<ul>\r\n <li><a href=\"/docs/make-a-payment\">Make a Payment</a></li>\r\n</ul>\r\n\r\nRelated Links:\r\n<ul>\r\n<li><a href=\"/docs/network-processing-types\">Network Processing Types</a></li>\r\n<li><a href=\"/docs/dynamic-descriptor-guide\">Dynamic Descriptor Guide</a></li>\r\n<li><a href=\"/docs/order-processing-channel\">Order Processing Channel</a></li>\r\n<li><a href=\"/docs/invoice-status\">Invoice Status</a></li>\r\n</ul>"
      operationId: SaleWithPaymentMethodId
      parameters:
        - name: paymentMethodId
          in: path
          description: The unique identifier for the payment method information
          required: true
          schema:
            type: integer
            format: int64
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/SaleWithPaymentMethodRequestDTO'
            examples:
              Minimum valid request:
                value:
                  networkProcessing: null
                  customerId: null
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: null
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 100
                  dynamicDescriptor: null
              With an existing customer:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              With a dynamic descriptor:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
              With network processing (Recurring):
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              Full request:
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: true
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: Moto
                    ecommercePlatformUrl: example.com
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
          application/json:
            schema:
              $ref: '#/components/schemas/SaleWithPaymentMethodRequestDTO'
            examples:
              Minimum valid request:
                value:
                  networkProcessing: null
                  customerId: null
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: null
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 100
                  dynamicDescriptor: null
              With an existing customer:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              With a dynamic descriptor:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
              With network processing (Recurring):
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              Full request:
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: true
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: Moto
                    ecommercePlatformUrl: example.com
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
          text/json:
            schema:
              $ref: '#/components/schemas/SaleWithPaymentMethodRequestDTO'
            examples:
              Minimum valid request:
                value:
                  networkProcessing: null
                  customerId: null
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: null
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 100
                  dynamicDescriptor: null
              With an existing customer:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              With a dynamic descriptor:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
              With network processing (Recurring):
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              Full request:
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: true
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: Moto
                    ecommercePlatformUrl: example.com
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
          application/*+json:
            schema:
              $ref: '#/components/schemas/SaleWithPaymentMethodRequestDTO'
            examples:
              Minimum valid request:
                value:
                  networkProcessing: null
                  customerId: null
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: null
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 100
                  dynamicDescriptor: null
              With an existing customer:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              With a dynamic descriptor:
                value:
                  networkProcessing: null
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
              With network processing (Recurring):
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: false
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: null
                    ecommercePlatformUrl: null
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor: null
              Full request:
                value:
                  networkProcessing:
                    processingType: Recurring
                    originalNetworkTransactionId: '4731548603657339'
                  customerId: 1
                  includeRawProcessorResponse: true
                  invoice:
                    merchantInvoiceRefId: '123456789'
                    orderProcessingChannel: Moto
                    ecommercePlatformUrl: example.com
                    amount:
                      currency: USD
                      value: 30.99
                  dynamicDescriptor:
                    subMerchantId: null
                    subMerchantName: Test
                    subMerchantPhone: 408-555-1212
                    countryCode: null
                    city: null
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/SaleResponseDTO'
              examples:
                Paid invoice:
                  value:
                    customerId: 1
                    invoiceId: 563
                    merchantInvoiceRefId: 1234-5678-9101
                    merchantPaymentMethodRefId: '#1234567890'
                    networkTransactionId: '600200756888390'
                    invoiceStatus: Paid
                    invoiceAttemptStatus: Success
                    message: Approved
                    amount:
                      currency: USD
                      value: 30.99
                    paymentMethodId: 8453
                    paymentMethodTypeId: 2
                    paymentProcessor: Nuvei
                    processorMerchantId: '4398673209738'
                    rawResponse: Processor raw response (without parsing on Revolv3 side)
                    paymentMethodCreditCardDetails: null
                    responseMessage: Approved
                    responseCode: '0'
                    processorResponseDateTime: null
                    authCode: null
                    processorTransactionId: null
                    revolv3ResponseCode: null
                    revolv3ResponseMessage: null
                Declined invoice:
                  value:
                    customerId: 1
                    invoiceId: 563
                    merchantInvoiceRefId: 1234-5678-9101
                    merchantPaymentMethodRefId: abc-hfgs-124!
                    networkTransactionId: null
                    invoiceStatus: Noncollectable
                    invoiceAttemptStatus: Fail
                    message: Generic Decline
                    amount:
                      currency: USD
                      value: 50
                    paymentMethodId: 8453
                    paymentMethodTypeId: 0
                    paymentProcessor: WorldPay
                    processorMerchantId: '90243710921'
                    rawResponse: Processor raw response (without parsing on Revolv3 side)
                    paymentMethodCreditCardDetails: null
                    responseMessage: Generic Decline
                    responseCode: '350'
                    processorResponseDateTime: null
                    authCode: null
                    processorTransactionId: null
                    revolv3ResponseCode: null
                    revolv3ResponseMessage: null
            application/json:
              schema:
                $ref: '#/components/schemas/SaleResponseDTO'
              examples:
                Paid invoice:
                  value:
                    customerId: 1
                    invoiceId: 563
                    merchantInvoiceRefId: 1234-5678-9101
                    merchantPaymentMethodRefId: '#1234567890'
                    networkTransactionId: '600200756888390'
                    invoiceStatus: Paid
                    invoiceAttemptStatus: Success
                    message: Approved
                    amount:
                      currency: USD
                      value: 30.99
                    paymentMethodId: 8453
                    paymentMethodTypeId: 2
                    paymentProcessor: Nuvei
                    processorMerchantId: '4398673209738'
                    rawResponse: Processor raw response (without parsing on Revolv3 side)
                    paymentMethodCreditCardDetails: null
                    responseMessage: Approved
                    responseCode: '0'
                    processorResponseDateTime: null
                    authCode: null
                    processorTransactionId: null
                    revolv3ResponseCode: null
                    revolv3ResponseMessage: null
                Declined invoice:
                  value:
                    customerId: 1
                    invoiceId: 563
                    merchantInvoiceRefId: 1234-5678-9101
                    merchantPaymentMethodRefId: abc-hfgs-124!
                    networkTransactionId: null
                    invoiceStatus: Noncollectable
                    invoiceAttemptStatus: Fail
                    message: Generic Decline
                    amount:
                      currency: USD
                      value: 50
                    paymentMethodId: 8453
                    paymentMethodTypeId: 0
                    paymentProcessor: WorldPay
                    processorMerchantId: '90243710921'
                    rawResponse: Processor raw response (without parsing on Revolv3 side)
                    paymentMethodCreditCardDetails: null
                    responseMessage: Generic Decline
                    responseCode: '350'
                    processorResponseDateTime: null
                    authCode: null
                    processorTransactionId: null
                    revolv3ResponseCode: null
                    revolv3ResponseMessage: null
            text/json:
              schema:
                $ref: '#/components/schemas/SaleResponseDTO'
              examples:
                Paid invoice:
                  value:
                    customerId: 1
                    invoiceId: 563
                    merchantInvoiceRefId: 1234-5678-9101
                    merchantPaymentMethodRefId: '#1234567890'
                    networkTransactionId: '600200756888390'
                    invoiceStatus: Paid
                    invoiceAttemptStatus: Success
                    message: Approved
                    amount:
                      currency: USD
                      value: 30.99
                    paymentMethodId: 8453
                    paymentMethodTypeId: 2
                    paymentProcessor: Nuvei
                    processorMerchantId: '4398673209738'
                    rawResponse: Processor raw response (without parsing on Revolv3 side)
                    paymentMethodCreditCardDetails: null
                    responseMessage: Approved
                    responseCode: '0'
                    processorResponseDateTime: null
                    authCode: null
                    processorTransactionId: null
                    revolv3ResponseCode: null
                    revolv3ResponseMessage: null
                Declined invoice:
                  value:
                    customerId: 1
                    invoiceId: 563
                    merchantInvoiceRefId: 1234-5678-9101
                    merchantPaymentMethodRefId: abc-hfgs-124!
                    networkTransactionId: null
                    invoiceStatus: Noncollectable
                    invoiceAttemptStatus: Fail
                    message: Generic Decline
                    amount:
                      currency: USD
                      value: 50
                    paymentMethodId: 8453
                    paymentMethodTypeId: 0
                    paymentProcessor: WorldPay
                    processorMerchantId: '90243710921'
                    rawResponse: Processor raw response (without parsing on Revolv3 side)
                    paymentMethodCreditCardDetails: null
                    responseMessage: Generic Decline
                    responseCode: '350'
                    processorResponseDateTime: null
                    authCode: null
                    processorTransactionId: null
                    revolv3ResponseCode: null
                    revolv3ResponseMessage: null
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              examples:
                An error during request execution:
                  value:
                    message: Unable to perform the request action with provided data.
                Validation error:
                  value:
                    message: One or more validation failed.
                    errors:
                      - The field is required.
                    fluentValidatorErrors:
                      - propertyName: PropertyName
                        errorMessage: The field is required
                        attemptedValue: null
                        customState: null
                        severity: Error
                        errorCode: null
                        formattedMessagePlaceholderValues: null
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              examples:
                An error during request execution:
                  value:
                    message: Unable to perform the request action with provided data.
                Validation error:
                  value:
                    message: One or more validation failed.
                    errors:
                      - The field is required.
                    fluentValidatorErrors:
                      - propertyName: PropertyName
                        errorMessage: The field is required
                        attemptedValue: null
                        customState: null
                        severity: Error
                        errorCode: null
                        formattedMessagePlaceholderValues: null
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              examples:
                An error during request execution:
                  value:
                    message: Unable to perform the request action with provided data.
                Validation error:
                  value:
                    message: One or more validation failed.
                    errors:
                      - The field is required.
                    fluentValidatorErrors:
                      - propertyName: PropertyName
                        errorMessage: The field is required
                        attemptedValue: null
                        customState: null
                        severity: Error
                        errorCode: null
                        formattedMessagePlaceholderValues: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
        '404':
          description: Not Found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to find an entity with the provided data.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to find an entity with the provided data.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to find an entity with the provided data.
        '422':
          description: Unprocessable Content
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to process this operation.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to process this operation.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to process this operation.
      security:
        - Bearer: []
components:
  schemas:
    SaleWithPaymentMethodRequestDTO:
      required:
        - invoice
      type: object
      properties:
        customerId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the customer.
          format: int64
        includeRawProcessorResponse:
          type: boolean
          description: Determine whether to return raw processor data in the response.
          default: false
        invoice:
          allOf:
            - $ref: '#/components/schemas/InvoiceDetailsDTO'
          description: Invoice information for this payment.
        dynamicDescriptor:
          allOf:
            - $ref: '#/components/schemas/TransactionDescriptorDTO'
          description: "Allows the merchant to define a dynamic descriptor, which appears in the payment statement. \r\nFor dynamic descriptor, special configuration is required.\r\n\r\nProcessors supporting this feature: `Nuvei`, `WorldPay`, `BridgePay`, `EPX`, `Paymentech`, `PaymentLync`."
        networkProcessing:
          allOf:
            - $ref: '#/components/schemas/NetworkProcessingDTO'
          description: "Network processing information.\r\n\r\nProcessors supporting this feature: `Adyen`, `Nuvei`, `WorldPay`, `TSYS`, `BridgePay`, `Paymentech`, `PaymentLync`."
      additionalProperties: false
    SaleResponseDTO:
      type: object
      properties:
        customerId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the customer.
          format: int64
        invoiceId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the invoice.
          format: int64
        merchantInvoiceRefId:
          maxLength: 100
          minLength: 0
          type: string
          description: Merchant's unique identifier for the invoice.
        merchantPaymentMethodRefId:
          maxLength: 100
          minLength: 0
          type: string
          description: Merchant's unique identifier for the payment method.
        networkTransactionId:
          maxLength: 100
          minLength: 0
          type: string
          description: "The identifier returned for Visa, Mastercard, and Discover transactions. Visa and Discover use this value to link subsequent payments in a recurring/installment stream back to the initial transaction.\r\nYou must include this value in the request message (**originalNetworkTransactionId** element) for subsequent recurring payments."
        invoiceStatus:
          maxLength: 100
          minLength: 0
          type: string
          description: "The current status of the invoice.\r\n\r\nPossible values: `Paid`, `Pending`, `Noncollectable`, `Failed`, `OneTimePaymentPending`, `RetryPending`."
        invoiceAttemptStatus:
          maxLength: 100
          minLength: 0
          type: string
          description: "The status of the invoice attempt.\r\n\r\nPossible values: `Success`, `Fail`, `Pending`, `RetrySuccess`, `RetryFail`, `RetryPending`."
        message:
          maxLength: 500
          minLength: 0
          type: string
          description: >-
            The message returned directly from payment processor or a special
            message provided by system. 
        amount:
          allOf:
            - $ref: '#/components/schemas/AmountResponseDTO'
          description: The amount information for the payment.
        paymentMethodId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier for the payment method information.
          format: int64
        paymentMethodTypeId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: >-
            Specifies the type of payment method used for the transaction.
            Examples include CreditCard (1), Ach (2), GooglePay (3) and ApplePay
            (4).
          format: int64
        paymentProcessor:
          maxLength: 100
          minLength: 0
          type: string
          description: The name of the processor by which the transaction was processed.
        processorMerchantId:
          maxLength: 100
          minLength: 0
          type: string
          description: >-
            The merchant account ID (MID) of the processor by which the
            transaction was processed.
        rawResponse:
          maxLength: 10000
          minLength: 0
          type: string
          description: "**Conditional. The value is returned if includeRawProcessorResponse = true.**\r\nThis field contains the raw data received from the processor after attempting to bill this payment. It does not contain any sensitive information. The field value is a string with the serialized response from the processor in JSON format."
        paymentMethodCreditCardDetails:
          allOf:
            - $ref: '#/components/schemas/CreditCardViewDTO'
          description: The details of credit card payment method.
        responseMessage:
          maxLength: 500
          minLength: 0
          type: string
          description: The processor response message.
        responseCode:
          maxLength: 10
          minLength: 0
          type: string
          description: The processor response code.
        processorResponseDateTime:
          maxLength: 40
          type: string
          description: >-
            UTC timestamp of the payment processor response (format:
            YYYY-MM-DDThh:mm:ss).
          format: date-time
        authCode:
          maxLength: 20
          minLength: 0
          type: string
          description: Transaction authorization code.
        processorTransactionId:
          maxLength: 100
          minLength: 0
          type: string
          description: Payment Processor Transaction Id.
        revolv3ResponseCode:
          maxLength: 10
          minLength: 0
          type: string
          description: >-
            Standardized internal response code indicating the outcome of the
            request.
        revolv3ResponseMessage:
          maxLength: 500
          minLength: 0
          type: string
          description: Message providing additional details about the response code.
      additionalProperties: false
    StatusMessageResponse:
      type: object
      properties:
        message:
          type: string
          nullable: true
        errors:
          type: array
          items:
            type: string
          nullable: true
        fluentValidatorErrors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationFailure'
          nullable: true
      additionalProperties: false
    InvoiceDetailsDTO:
      required:
        - amount
      type: object
      properties:
        merchantInvoiceRefId:
          maxLength: 100
          type: string
          description: Merchant's unique identifier for the invoice.
        orderProcessingChannel:
          allOf:
            - $ref: '#/components/schemas/OrderProcessingChannelTypeEnum'
          description: "Specifies the sales channel through which the shopper provides their card details.\r\n\r\n**Ecommerce** - Internet or electronic commerce transaction.\r\n**Moto** - Single mail or telephone order transaction.\r\n\r\nProcessors supporting this feature: `WorldPay`, `BridgePay`. For other processors, Ecommerce is used by default."
        ecommercePlatformUrl:
          maxLength: 100
          minLength: 0
          type: string
          description: >-
            The merchant's storefront or e-commerce platform URL or domain from
            which the transaction originates. If provided, this value will be
            sent to the processor (TSYS only) as the Acceptor URL Address. If
            not provided, the value configured in Merchant Details (E-Commerce
            Platform URL) will be used. If neither is available, the request is
            sent to TSYS without the Acceptor URL Address.
        amount:
          allOf:
            - $ref: '#/components/schemas/AmountDTO'
          description: The amount information for the payment.
      additionalProperties: false
    TransactionDescriptorDTO:
      type: object
      properties:
        subMerchantId:
          maxLength: 15
          type: string
          description: >-
            The internal merchant's ID, which is sent to the relevant card
            scheme.
        subMerchantName:
          maxLength: 22
          minLength: 0
          type: string
          description: "The merchant name, as is displayed for the transaction on the consumer’s card statement. For payment facilitator only, might consist of the following structure: [Prefix]*[Sub Merchant Name] -\r\nwhere:\r\n1) [Prefix] – The PayFac prefix, approved by processor.\r\n2) '*' – A fixed character.\r\n3) [Sub Merchant Name] – The sub-merchant name.\r\nFor example: aaa*name\r\n\r\nRecommended! An alternative method to define a prefix is by configuring it through the Revolv3 Portal.\r\n\r\n**Nuvei** and **Paymentech** processors: the maximum length of the parameter is 22. Possible prefix length 3 or 5 or 7 or 12 characters.\r\n\r\n**WorldPay** and **PaymentLync** processor: if the value is specified, it must be between 4 and 25 characters. Possible prefix length 3 or 7 or 12 characters. Field accepts numbers, letters and special characters as follows: ampersand, asterisk (zero or one), comma, dash, period, space, or pound sign.\r\n\r\n**BridgePay** processor: the maximum length of the parameter is 46.\r\n\r\n**EPX** processor: the maximum length of the parameter is 20. Possible prefix length 3 or 7 or 9 or 12 characters."
        subMerchantPhone:
          maxLength: 13
          minLength: 0
          type: string
          description: "The merchant (sub-merchant for payment facilitators) contact information, as is displayed for the transaction on the consumer’s card statement.\r\n\r\n**Nuvei** processor: the maximum length of the parameter is 13. It can also be an email address.\r\n**WorldPay** processor: the maximum length of the parameter is 13. Field accepts only numbers.\r\n**BridgePay**, **EPX**, **Paymentech** and **PaymentLync** processor: the maximum length of the parameter is 13."
        countryCode:
          maxLength: 2
          minLength: 2
          type: string
          description: The payment facilitator's sub-merchant's 2-letter ISO country code.
        city:
          maxLength: 20
          type: string
          description: City.
          nullable: true
      additionalProperties: false
    NetworkProcessingDTO:
      type: object
      properties:
        processingType:
          allOf:
            - $ref: '#/components/schemas/PaymentProcessingTypeEnum'
          description: "Processing type is used to define the initial or subsequent transaction in a recurring or installment stream.\r\n\r\n**If no value is supplied, a transaction is considered a one-time payment and will not be linked to the initial one.**"
        originalNetworkTransactionId:
          maxLength: 100
          minLength: 0
          type: string
          description: "Element defines the networkTransactionId returned in the response messages for Visa, Mastercard, and Discover Auth/Sale transactions.\r\nYou must include this element and the original value returned for subsequent (after the initial) recurring/installment payments."
      additionalProperties: false
    AmountResponseDTO:
      type: object
      properties:
        currency:
          maxLength: 3
          minLength: 3
          pattern: ^[A-Z]{3}$
          type: string
          description: "The three-character ISO currency code.\r\n\r\nDefault value: `USD`"
        value:
          maximum: 10000000
          minimum: 0
          type: number
          description: The amount of the transaction.
          format: double
      additionalProperties: false
    CreditCardViewDTO:
      type: object
      properties:
        binNumber:
          maxLength: 6
          minLength: 0
          pattern: ^\d{1,6}$
          type: string
          description: First 6 digits (BIN) of the card number.
        paymentLast4Digit:
          maxLength: 4
          minLength: 4
          pattern: ^\d{4}$
          type: string
          description: Payment card last 4 digits.
        paymentExpirationDate:
          maxLength: 4
          minLength: 0
          type: string
          description: The card expiration date.
          format: MMYY
          nullable: true
        accountUpdateMessage:
          maxLength: 500
          minLength: 0
          type: string
          description: Account updater message, if available.
        accountUpdateDateTime:
          maxLength: 20
          minLength: 0
          type: string
          description: UTC date-time of the last account updater event.
          format: YYYY-MM-DDThh:mm:ss
          nullable: true
        accountUpdateCode:
          maxLength: 50
          minLength: 0
          type: string
          description: Processor response code of the last account updater event.
      additionalProperties: false
      nullable: true
    ValidationFailure:
      type: object
      properties:
        propertyName:
          type: string
          nullable: true
        errorMessage:
          type: string
          nullable: true
        attemptedValue:
          nullable: true
        customState:
          nullable: true
        severity:
          $ref: '#/components/schemas/Severity'
        errorCode:
          type: string
          nullable: true
        formattedMessagePlaceholderValues:
          type: object
          additionalProperties:
            nullable: true
          nullable: true
      additionalProperties: false
    OrderProcessingChannelTypeEnum:
      enum:
        - Ecommerce
        - Moto
      type: string
    AmountDTO:
      required:
        - value
      type: object
      properties:
        currency:
          allOf:
            - $ref: '#/components/schemas/CurrencyEnum'
          description: "The three-character ISO currency code.\r\n\r\nDefault value: `USD`"
        value:
          maximum: 9999999.99
          minimum: 0
          type: number
          description: The amount information for the payment. Must NOT be less than zero.
          format: double
      additionalProperties: false
    PaymentProcessingTypeEnum:
      enum:
        - InitialRecurring
        - Recurring
        - InitialInstallment
        - Installment
      type: string
    Severity:
      enum:
        - Error
        - Warning
        - Info
      type: string
    CurrencyEnum:
      enum:
        - USD
        - AED
        - ALL
        - AMD
        - ANG
        - AOA
        - ARS
        - AUD
        - AWG
        - AZN
        - BAM
        - BBD
        - BDT
        - BGN
        - BHD
        - BMD
        - BND
        - BOB
        - BRL
        - BSD
        - BWP
        - BYN
        - BZD
        - CAD
        - CHF
        - CLP
        - CNH
        - CNY
        - COP
        - CRC
        - CUP
        - CVE
        - CZK
        - DJF
        - DKK
        - DOP
        - DZD
        - EGP
        - ETB
        - EUR
        - FJD
        - FKP
        - GBP
        - GEL
        - GHS
        - GIP
        - GMD
        - GNF
        - GTQ
        - GYD
        - HKD
        - HNL
        - HTG
        - HUF
        - IDR
        - ILS
        - INR
        - IQD
        - ISK
        - JMD
        - JOD
        - JPY
        - KES
        - KGS
        - KHR
        - KMF
        - KRW
        - KWD
        - KYD
        - KZT
        - LAK
        - LBP
        - LKR
        - LYD
        - MAD
        - MDL
        - MKD
        - MMK
        - MNT
        - MOP
        - MRU
        - MUR
        - MVR
        - MWK
        - MXN
        - MYR
        - MZN
        - NAD
        - NGN
        - NIO
        - NOK
        - NPR
        - NZD
        - OMR
        - PAB
        - PEN
        - PGK
        - PHP
        - PKR
        - PLN
        - PYG
        - QAR
        - RON
        - RSD
        - RUB
        - RWF
        - SAR
        - SBD
        - SCR
        - SEK
        - SGD
        - SHP
        - SLE
        - SOS
        - SRD
        - STN
        - SVC
        - SZL
        - THB
        - TND
        - TOP
        - TRY
        - TTD
        - TWD
        - TZS
        - UAH
        - UGX
        - UYU
        - UZS
        - VEF
        - VND
        - VUV
        - WST
        - XAF
        - XCD
        - XOF
        - XPF
        - YER
        - ZAR
        - ZMW
        - AFN
        - KPW
        - LRD
        - LSL
        - STD
        - SYP
        - TJS
        - ZMK
        - ZWD
        - SLL
        - MGA
        - HRK
        - CDF
        - BTN
        - BIF
      type: string
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````