improved

Flow Release Notes | Version 3.8.3

This release notes contains updates related to UPI Autopay.

Create Mandate API – Introducing presentation_sequence_id in Response Body

  • presentation_sequence_id appears only when is_downpayment OR is_first_txn_amount is true.
  • Field is completely hidden when both flags are false (no null values).
  • The same field will be added in the mandate registartion callback, only when is_downpayment/
    is_first_txn_amount logic is applicable.
  • Even if the mandate ends up rejected / failed / expired, In Get Presentation Status API it says "no
    presentation record found" for the given presentation_sequence_id.
  • This enables merchants to directly map the mandate creation response to the first scheduled presentation,
    improving reconciliation and downstream processing.
{
  "decentro_txn_id": "E20EAB451D8E4F478F4826E7A2D42776",
  "api_status": "SUCCESS",
  "message": "Mandate link created successfully.",
  "data": {
    "mandate_detail": {
      "decentro_mandate_id": "81F2C8CFB913414CAAD2ABDCC48D71C8",
      "mandate_status": "PENDING",
      "presentation_sequence_id": "DFN-XXXX-0001",
      "mandate_links": {
        "common_uri": "https://decpay.in/upi/mandate/XXXXXXX"
      }
    }
  },
  "response_key": "success_mandate_link_created"
}

Enhanced Presentation Failure Visibility – Introducing error_key_description

  • error_key_description appears only for FAILURE cases in presentation callback & Get Presentation
    Status API.
  • Hidden/omitted for SUCCESS or PENDING presentation status.
  • All existing fields (error_key, status_description) remain intact.
  • This enhancement will give merchants a clearer, more actionable reason for presentation failures (e.g., “U69 – Insufficient Funds”, “U14 – Invalid MPIN”), improving customer support flows and troubleshooting
    efficiency.
{
  "decentro_txn_id": "849AD58C03EF482E94F9E6A764969DFB",
  "api_status": "SUCCESS",
  "message": "Presentation status retrieved successfully",
  "data": {
    "presentation_detail": {
      "status": "FAILED",
      "status_description": "Remitter bank failed the transaction",
      "bank_reference_number": "53XXX0333166",
      "npci_txn_id": "YEScbaa0aXXXb7b89c57ed",
      "transaction_authentication_timestamp": "Dec 19, 2025 10:06:05 AM",
      "error_key": "error_at_remitter_bank",
      "error_key_description": "Z9 - DEBIT HAS BEEN FAILED",
      "remaining_representation_attempts": 0
    }
  },
  "response_key": "success_presentation_status_fetched"
}

First Presentation(Instant Presentations) Tracking via reference_id of Create Mandate API

  • Create Mandate API reference_id can now be used to fetch the status of the first debit presentation via Get Presentation Status API.
  • Instant presentation callback for presentation_sequence = 1 will now return the same reference_id sent in the Create Mandate API.
  • Applies only when is_first_txn_amount = true or is_downpayment = true.
  • For all other normal presentations (presentations raised via Presentation API) continues to have reference_id of Presentation API