Issue:
Bug: [REFACTOR]: add `updated` field to payments response



Add a field called `updated` to the payments response. This field will have the ISO timestamp at which the payment was updated. 

This field should have the value from `modified_at` column from the `payment_intent` table.

The struct that is being used for the response is 
https://github.com/juspay/hyperswitch/blob/97fbc899c12a0c66ac89a7feaa6d45d39239a746/crates/api_models/src/payments.rs#L2910

In order to populate the field, use the builder method `.set_updated` when the response is generated
https://github.com/juspay/hyperswitch/blob/97fbc899c12a0c66ac89a7feaa6d45d39239a746/crates/router/src/core/payments/transformers.rs#L792

Pull request description:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [ ] New feature
- [ ] Enhancement
- [X] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
<!--  -->
This change adds the `updated` field to the PaymentResponse.
It takes the value from the `payment_intent.modified_at` field.

### Additional Changes

- [X] This PR modifies the API contract
- [ ] This PR modifies the database schema
- [ ] This PR modifies application configuration/environment variables

<!--
Provide links to the files with corresponding changes.

Following are the paths where you can find config files:
1. 
-->
https://github.com/juspay/hyperswitch/blob/97fbc899c12a0c66ac89a7feaa6d45d39239a746/crates/router/src/core/payments/transformers.rs#L792
https://github.com/juspay/hyperswitch/blob/97fbc899c12a0c66ac89a7feaa6d45d39239a746/crates/api_models/src/payments.rs#L3195


## Motivation and Context
<!--
Why is this change required? What problem does it solve?
If it fixes an open issue, please link to the issue here.

If you don't have an issue, we'd recommend starting with one first so the PR
can focus on the implementation (unless it is an obvious bug or documentation fix
that will have little conversation).
-->
Fixes https://github.com/juspay/hyperswitch/issues/4283

## How did you test it?
<!--
Did you write an integration/unit/API test to verify the code changes?
Or did you test this change manually (provide relevant screenshots)?
-->

- Create a payment with the below curl
```bash
curl --location 'https://integ-api.hyperswitch.io/payments' \
--header 'Content-Type: application/json' \
--header 'api-key: <api_key>' \
--data '{
    "amount": 6540,
    "currency": "USD",
    "confirm": true,
    "payment_method": "card",
    "payment_method_data": {
        "card": {
            "card_number": "4242424242424242",
            "card_exp_month": "10",
            "card_exp_year": "25",
            "card_holder_name": "Narayan Bhat",
            "card_cvc": "123"
        }
    }
}'
```

Check for the `updated` field in response.

## Checklist
<!-- Put an `x` in the boxes that apply -->

- [X] I formatted the code `cargo +nightly fmt --all`
- [X] I addressed lints thrown by `cargo clippy`
- [X] I reviewed the submitted code


Testing:


- Create a payment with the below curl
```bash
curl --location 'https://integ-api.hyperswitch.io/payments' \
--header 'Content-Type: application/json' \
--header 'api-key: <api_key>' \
--data '{
    "amount": 6540,
    "currency": "USD",
    "confirm": true,
    "payment_method": "card",
    "payment_method_data": {
        "card": {
            "card_number": "4242424242424242",
            "card_exp_month": "10",
            "card_exp_year": "25",
            "card_holder_name": "Narayan Bhat",
            "card_cvc": "123"
        }
    }
}'
```

Check for the `updated` field in response.

Patch:
diff --git a/crates/api_models/src/payments.rs b/crates/api_models/src/payments.rs
index de8142ddde2..99ae68c2e7d 100644
--- a/crates/api_models/src/payments.rs
+++ b/crates/api_models/src/payments.rs
@@ -3196,6 +3196,11 @@ pub struct PaymentsResponse {
     /// Payment Method Status
     #[schema(value_type = Option<PaymentMethodStatus>)]
     pub payment_method_status: Option<common_enums::PaymentMethodStatus>,
+
+    /// Date time at which payment was updated
+    #[schema(example = "2022-09-10T10:11:12Z")]
+    #[serde(default, with = "common_utils::custom_serde::iso8601::option")]
+    pub updated: Option<PrimitiveDateTime>,
 }
 
 #[derive(Setter, Clone, Default, Debug, PartialEq, serde::Serialize, ToSchema)]
diff --git a/crates/router/src/core/payments/transformers.rs b/crates/router/src/core/payments/transformers.rs
index 595ca3f94a9..7b1a8ffd0ff 100644
--- a/crates/router/src/core/payments/transformers.rs
+++ b/crates/router/src/core/payments/transformers.rs
@@ -773,6 +773,7 @@ where
                 .set_payment_method_status(payment_data.payment_method_info.map(|info| info.status))
                 .set_customer(customer_details_response.clone())
                 .set_browser_info(payment_attempt.browser_info)
+                .set_updated(Some(payment_intent.modified_at))
                 .to_owned(),
             headers,
         ))
diff --git a/openapi/openapi_spec.json b/openapi/openapi_spec.json
index aacc1386411..d2610a0d94c 100644
--- a/openapi/openapi_spec.json
+++ b/openapi/openapi_spec.json
@@ -14832,6 +14832,13 @@
               }
             ],
             "nullable": true
+          },
+          "updated": {
+            "type": "string",
+            "format": "date-time",
+            "description": "Date time at which payment was updated",
+            "example": "2022-09-10T10:11:12Z",
+            "nullable": true
           }
         }
       },