# UPI Mandate Callback

## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /post:
    post:
      summary: UPI Mandate Callback
      deprecated: false
      description: >-

        :::highlight purple 📌

        EnKash sends a callback (webhook) to your server whenever there’s an
        update to a UPI mandate—such as approval, rejection, or revocation. Use
        this to automatically track mandate status changes and keep your systems
        in sync without manual checks.

        :::
      tags:
        - Payment Gateway/APIs - Payment Gateway /UPI Autopay
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                umn:
                  type: string
                referenceId:
                  type: string
                amount:
                  type: integer
                amountRule:
                  type: string
                currency:
                  type: string
                payee:
                  type: object
                  properties:
                    vpa:
                      type: string
                    name:
                      type: string
                    mcc:
                      type: string
                  required:
                    - vpa
                    - name
                    - mcc
                  x-apidog-orders:
                    - vpa
                    - name
                    - mcc
                payer:
                  type: object
                  properties:
                    name:
                      type: string
                    vpa:
                      type: string
                    account:
                      type: string
                    accountValidation:
                      type: boolean
                  required:
                    - name
                    - vpa
                    - account
                    - accountValidation
                  x-apidog-orders:
                    - name
                    - vpa
                    - account
                    - accountValidation
                name:
                  type: string
                expireAt:
                  type: integer
                blockFund:
                  type: boolean
                revokeableByPayer:
                  type: boolean
                recurrence:
                  type: object
                  properties:
                    period:
                      type: string
                    rule:
                      type: string
                    value:
                      type: integer
                  required:
                    - period
                    - rule
                    - value
                  x-apidog-orders:
                    - period
                    - rule
                    - value
                validity:
                  type: object
                  properties:
                    startAt:
                      type: integer
                    endAt:
                      type: integer
                  required:
                    - startAt
                    - endAt
                  x-apidog-orders:
                    - startAt
                    - endAt
                pausePeriod:
                  type: object
                  properties:
                    start_at:
                      type: integer
                    end_at:
                      type: integer
                  required:
                    - start_at
                    - end_at
                  x-apidog-orders:
                    - start_at
                    - end_at
                upiReferenceUrl:
                  type: string
                description:
                  type: string
                upiPurposeCode:
                  type: string
                upiResponseCode:
                  type: string
                status:
                  type: string
                createdAt:
                  type: integer
                mandateId:
                  type: string
              required:
                - umn
                - referenceId
                - mandateId
                - amount
                - amountRule
                - currency
                - payee
                - payer
                - name
                - expireAt
                - blockFund
                - revokeableByPayer
                - recurrence
                - validity
                - pausePeriod
                - upiReferenceUrl
                - description
                - upiPurposeCode
                - upiResponseCode
                - status
                - createdAt
              x-apidog-orders:
                - umn
                - referenceId
                - mandateId
                - amount
                - amountRule
                - currency
                - payee
                - payer
                - name
                - expireAt
                - blockFund
                - revokeableByPayer
                - recurrence
                - validity
                - pausePeriod
                - upiReferenceUrl
                - description
                - upiPurposeCode
                - upiResponseCode
                - status
                - createdAt
            example:
              umn: XYZ987
              referenceId: TXN6543210
              mandateTransactionId: ENKA00001234
              amount: 1722
              amountRule: EXACT | MAX
              currency: usd
              payee:
                vpa: merchant@abc
                name: ABC Pvt. Ltd.
                mcc: '1234'
              payer:
                name: Jane Smith
                vpa: 1234567890.prod@bank
                account: '5678901234'
                accountValidation: true
              name: Subscription Payment
              expireAt: 1823418099
              blockFund: true
              revokeableByPayer: true
              recurrence:
                period: >-
                  ONE_TIME | DAILY | WEEKLY | FORTNIGHTLY | MONTHLY | BIMONTHLY
                  | QUARTERLY | HALF_YEARLY | YEARLY | AS_PRESENTED
                rule: after
                value: 3
              validity:
                startAt: 1823418099
                endAt: 1924519100
              pausePeriod:
                start_at: 1722317078
                end_at: 1722317078
              upiReferenceUrl: https://www.example.com/
              description: Automated Recurring Mandate
              upiPurposeCode: '10'
              upiResponseCode: '99'
              status: pending
              createdAt: 1823418099
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
                x-apidog-orders: []
          headers: {}
          x-apidog-name: OK
      security: []
      x-apidog-folder: Payment Gateway/APIs - Payment Gateway /UPI Autopay
      x-apidog-status: released
      x-run-in-apidog: https://app.apidog.com/web/project/616243/apis/api-13730813-run
components:
  schemas: {}
  securitySchemes: {}
servers:
  - url: https://ekpayout-uat.enkash.in
    description: Testing Env
security: []

```
