Issue:
feat(mandates): recurring payment support for bank redirect and bank debit payment method for stripe

## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [X] New feature
- [ ] Enhancement
- [x] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
<!-- Describe your changes in detail -->
* Added support for bank debit recurring payment.
* Stored payment method data for bank debit in the mandate table's metadata column.
* Made changes in structure of stripes `PaymentIntentRequest` fields to support the new requirement

I have merged https://github.com/juspay/hyperswitch/pull/1231 to this branch since the changes were interdependent.
So merging this branch would automatically add features of https://github.com/juspay/hyperswitch/pull/1231

### Additional Changes

- [ ] 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. `config`
2. `crates/router/src/configs`
3. `loadtest/config`
-->


## 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 its an obvious bug or documentation fix
that will have little conversation).
-->


## 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)?
-->


## 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 submitted code
- [ ] I added unit tests for my changes where possible
- [ ] I added a [CHANGELOG](/CHANGELOG.md) entry if applicable


Resolution:
<think>
PR Context:
- Title: fix(connector): stripe mandate failure and other ui tests failures
- Merged: 2023-07-19T14:57:33Z
- Files changed: 7 files
- Commits: 17 commits

Implementation approach:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [x] Bugfix
- [ ] New feature
- [ ] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
<!-- Describe your changes in detail -->
1. Fix existing failures in UI tests of existing connectors
2. Stripe requires us to send a field called `payment_method_types[]` with all payment payment_intents. This is a list of all supported payment_method_types for that payment intent. 
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** fix(connector): stripe mandate failure and other ui tests failures (#1742)
Signed-off-by: chikke sru
Files to modify:


**crates/router/src/connector/stripe/transformers.rs**
  Modify existing code

**crates/router/tests/connectors/authorizedotnet_ui.rs**
  Modify existing code

**crates/router/tests/connectors/mollie_ui.rs**
  Modify existing code

**crates/router/tests/connectors/selenium.rs**
  Add:
    - function: private::retry_click

**crates/router/tests/connectors/worldline_ui.rs**
  Modify existing code