# Submit Payment with Split Details

## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/v0/payment/submit:
    post:
      summary: Submit Payment with Split Details
      deprecated: false
      description: >-

        :::highlight purple 📌

        Use this API to initiate a payment while specifying split rules, so
        funds are automatically distributed across multiple accounts in a single
        transaction.

        :::
      operationId: submitPaymentDetail
      tags:
        - Payment Gateway/APIs - Payment Gateway /Split Settlement
        - order-controller
      parameters:
        - name: Authorization
          in: header
          description: ''
          required: true
          example: ''
          schema:
            type: string
        - name: merchantAccessKey
          in: header
          description: ''
          required: true
          example: ''
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              x-apidog-refs:
                01JD1RHNS8G77K5N27NB85901Y:
                  $ref: '#/components/schemas/OrderPaymentSubmitRequest'
                  x-apidog-overrides: {}
              properties:
                orderId:
                  type: string
                paymentDetail: &ref_0
                  $ref: '#/components/schemas/PaymentDetailDTO'
                splitSettlement:
                  $ref: '#/components/schemas/SplitSettlementDTO'
              required:
                - orderId
                - splitSettlement
              x-apidog-orders:
                - 01JD1RHNS8G77K5N27NB85901Y
                - splitSettlement
              x-apidog-ignore-properties:
                - orderId
                - paymentDetail
            example:
              orderId: string
              paymentDetail:
                paymentMode: NET_BANKING
                cardHolderName: string
                cardNumber: string
                cvv: string
                expiry: string
                bankCode: string
                bnplPaymentOptionId: string
                vpa: string
              splitSettlement:
                amountSplitType: FLAT
                splitSettlementDetails:
                  - splitAccountId: '63'
                    value: 60
                  - label: Test
                    value: 40
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationResponseSubmitPaymentDetail'
          headers: {}
          x-apidog-name: OK
      security: []
      x-apidog-folder: Payment Gateway/APIs - Payment Gateway /Split Settlement
      x-apidog-status: released
      x-run-in-apidog: https://app.apidog.com/web/project/616243/apis/api-11875172-run
components:
  schemas:
    SplitSettlementDTO:
      type: object
      properties:
        amountSplitType:
          type: string
          enum:
            - FLAT
            - PERCENTAGE
          x-apidog-enum:
            - value: FLAT
              name: ''
              description: ''
            - value: PERCENTAGE
              name: ''
              description: ''
        splitSettlementDetails:
          type: array
          items:
            $ref: '#/components/schemas/SplitSettlementDetail'
      x-apidog-orders:
        - amountSplitType
        - splitSettlementDetails
      required:
        - amountSplitType
        - splitSettlementDetails
      x-apidog-ignore-properties: []
      x-apidog-folder: ''
    SplitSettlementDetail:
      type: object
      properties:
        splitAccountId:
          type: string
          description: Required of label not provided
        label:
          type: string
          description: Required if splitAccountId not provided
        value:
          type: number
      x-apidog-orders:
        - splitAccountId
        - label
        - value
      required:
        - value
      x-apidog-ignore-properties: []
      x-apidog-folder: ''
    PaymentDetailDTO:
      required:
        - paymentMode
      type: object
      description: >-
        For card transactions, cardNumber, cvv and expiry must be sent as Base64
        encoded values. For tokenized card transactions, cardTokenPan,
        cardTokenExpiry, cardTokenCrypto and tokenRequestorId must be sent as
        plain text values.
      properties:
        paymentMode:
          type: string
          description: Payment mode to be used for the transaction.
          enum:
            - NET_BANKING
            - UPI
            - CREDIT_CARD
            - DEBIT_CARD
            - PREPAID_CARD
            - PAY_LATER
            - WALLET
            - CORPORATE_CARD
          x-apidog-enum:
            - name: ''
              value: NET_BANKING
              description: ''
            - name: ''
              value: UPI
              description: ''
            - name: ''
              value: CREDIT_CARD
              description: ''
            - name: ''
              value: DEBIT_CARD
              description: ''
            - name: ''
              value: PREPAID_CARD
              description: ''
            - name: ''
              value: PAY_LATER
              description: ''
            - name: ''
              value: WALLET
              description: ''
            - name: ''
              value: CORPORATE_CARD
              description: ''
          examples:
            - CREDIT_CARD
          nullable: true
        cardHolderName:
          type: string
          description: Name as printed on the card. Required for Card payment modes.
          examples:
            - John Doe
        cardNumber:
          type: string
          description: >-
            Base64 encoded card number. Required for Card payment modes when
            tokenType is not provided.
          examples:
            - NDAxMjAwMTAzNzE0MTExMg==
        cvv:
          type: string
          description: >-
            Required for all Card transactions (New Card and Alt ID). Value must
            be Base64 encoded. Example: Base64 of '123' → 'MTIz'. Not required
            for network token transactions.
          examples:
            - MTIz
        expiry:
          type: string
          description: >-
            Base64 encoded card expiry in MM/YY format. Required for Card
            payment modes when tokenType is not provided. Example plain value:
            05/30.
          examples:
            - MDUvMzA=
        bankCode:
          type: string
          description: >-
            Bank, wallet, or pay-later provider code. Required for NET_BANKING,
            WALLET and PAY_LATER payment modes.
          examples:
            - NB026
        bnplPaymentOptionId:
          type: string
          description: BNPL payment option identifier. Required for PAY_LATER payment mode.
          examples:
            - BNPL_001
        vpa:
          type: string
          description: Virtual Payment Address (VPA). Required for UPI payment mode.
          examples:
            - customer@upi
        tokenType:
          type: string
          description: >-
            Indicates the type of tokenized transaction. Required for tokenized
            card transactions.
          enum:
            - TOKEN
            - ALT_ID
          x-apidog-enum:
            - value: TOKEN
              name: ''
              description: For token based transaction
            - value: ALT_ID
              name: ''
              description: For altId based transaction
          examples:
            - TOKEN
        cardTokenPan:
          type: string
          description: Plain text token PAN. Required when tokenType is provided.
          examples:
            - 520424XXXXXX1234
        cardTokenCrypto:
          type: string
          description: >-
            Plain text token cryptogram. Required when tokenType is provided.
            Max length 40 characters
          examples:
            - AgAAAAAABk4DWZ4C28yUQAAAAAA=
          maxLength: 40
        cardTokenExpiry:
          type: string
          description: >-
            Plain text token expiry in MM/YY format. Required when tokenType is
            provided.
          examples:
            - 05/30
        tokenRequestorId:
          type: string
          description: >-
            Plain text Token Requestor ID (TRID). Required only for external
            token transactions.
          examples:
            - '50110030273'
        last4Digits:
          type: string
          description: >-
            Last 4 digits of the original card number. Required when tokenType
            is provided.
          examples:
            - '1112'
      x-apidog-orders:
        - paymentMode
        - cardHolderName
        - cardNumber
        - cvv
        - expiry
        - bankCode
        - bnplPaymentOptionId
        - vpa
        - tokenType
        - cardTokenPan
        - cardTokenCrypto
        - cardTokenExpiry
        - tokenRequestorId
        - last4Digits
      x-apidog-ignore-properties: []
      x-apidog-folder: ''
    OrderPaymentSubmitRequest:
      required:
        - orderId
      type: object
      properties:
        orderId:
          type: string
        paymentDetail: *ref_0
      x-apidog-orders:
        - orderId
        - paymentDetail
      x-apidog-ignore-properties: []
      x-apidog-folder: ''
    ApplicationResponseSubmitPaymentDetail:
      type: object
      properties:
        response_code:
          type: integer
          format: int32
        response_message:
          type: string
        payload:
          $ref: '#/components/schemas/OrderPaymentSubmitResponse'
      x-apidog-orders:
        - response_code
        - response_message
        - payload
      x-apidog-ignore-properties: []
      x-apidog-folder: ''
    OrderPaymentSubmitResponse:
      type: object
      properties:
        redirectionUrl:
          type: string
        transactionId:
          type: string
      x-apidog-orders:
        - redirectionUrl
        - transactionId
      x-apidog-ignore-properties: []
      x-apidog-folder: ''
  securitySchemes: {}
servers:
  - url: https://ekpayout-uat.enkash.in
    description: Testing Env
security: []

```
