From 238b4f39f30f0da88c0226023838d50955525a8e Mon Sep 17 00:00:00 2001 From: androidlover5842 Date: Fri, 30 Jan 2026 08:43:56 +0530 Subject: [PATCH] Allow POST PayU return endpoints --- .../controller/PayuReturnController.kt | 13 +++++++++++++ .../trisolarisserver/security/PublicEndpoints.kt | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/kotlin/com/android/trisolarisserver/controller/PayuReturnController.kt b/src/main/kotlin/com/android/trisolarisserver/controller/PayuReturnController.kt index 86d4355..883d13c 100644 --- a/src/main/kotlin/com/android/trisolarisserver/controller/PayuReturnController.kt +++ b/src/main/kotlin/com/android/trisolarisserver/controller/PayuReturnController.kt @@ -3,6 +3,7 @@ package com.android.trisolarisserver.controller import org.springframework.http.HttpStatus import org.springframework.web.bind.annotation.GetMapping import org.springframework.web.bind.annotation.PathVariable +import org.springframework.web.bind.annotation.PostMapping import org.springframework.web.bind.annotation.RequestMapping import org.springframework.web.bind.annotation.ResponseStatus import org.springframework.web.bind.annotation.RestController @@ -18,9 +19,21 @@ class PayuReturnController { // PayU redirect target; no-op. } + @PostMapping("/success") + @ResponseStatus(HttpStatus.NO_CONTENT) + fun successPost(@PathVariable propertyId: UUID) { + // PayU redirect target; no-op. + } + @GetMapping("/failure") @ResponseStatus(HttpStatus.NO_CONTENT) fun failure(@PathVariable propertyId: UUID) { // PayU redirect target; no-op. } + + @PostMapping("/failure") + @ResponseStatus(HttpStatus.NO_CONTENT) + fun failurePost(@PathVariable propertyId: UUID) { + // PayU redirect target; no-op. + } } diff --git a/src/main/kotlin/com/android/trisolarisserver/security/PublicEndpoints.kt b/src/main/kotlin/com/android/trisolarisserver/security/PublicEndpoints.kt index abef703..d80acb5 100644 --- a/src/main/kotlin/com/android/trisolarisserver/security/PublicEndpoints.kt +++ b/src/main/kotlin/com/android/trisolarisserver/security/PublicEndpoints.kt @@ -26,7 +26,7 @@ internal object PublicEndpoints { || (roomTypes.matches(path) && method == "GET") || roomTypeImages.matches(path) || (payuWebhook.matches(path) && method == "POST") - || (payuReturn.matches(path) && method == "GET") + || payuReturn.matches(path) || (path == "/image-tags" && method == "GET") || path == "/icons/png" || iconPngFile.matches(path)