Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(mandates): Allow connector_mandate_detail updation in case of 'Authorized' Payments #6379

Merged
merged 2 commits into from
Oct 21, 2024

Conversation

awasthi21
Copy link
Contributor

@awasthi21 awasthi21 commented Oct 21, 2024

Type of Change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring
  • Dependency updates
  • Documentation
  • CI/CD

Description

Earlier we used to store the connector mandate id only in case of charged payments, Ideally we should store for both authorized and charged

Additional Changes

  • This PR modifies the API contract
  • This PR modifies the database schema
  • This PR modifies application configuration/environment variables

Motivation and Context

How did you test it?

Earlier
CIT 3DS Auth

curl --location 'http://localhost:8080/payments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_l2PIg8yKpNpJYfXwnSgY8IppXOrB0Nz9OAfD36Y6Xtar5h5nyO5AgVhulydeirKW' \
--data-raw '{
    "currency":"USD",
    "amount": 300,
    "confirm": true,
    "amount_to_capture": 300,
    "customer_id": "malay12345",
    "capture_method": "manual",
    "capture_on": "2022-09-10T10:11:12Z",
    "authentication_type": "three_ds",
    "return_url": "https://www.google.com",
    "email": "[email protected]",
    "name": "Joseph Doe",
    "phone": "999999999",
    "phone_country_code": "+65",
    "description": "Its my first payment request",
    "statement_descriptor_name": "Juspay",
    "statement_descriptor_suffix": "Router",
    "payment_method": "card",
    "setup_future_usage":"off_session",
    "payment_method_type": "credit",
    "payment_method_data": {
        "card": {
            "card_number": "4242424242424242",
            "card_exp_month": "03",
            "card_exp_year": "2030",
            "card_holder_name": "joseph Doe",
            "card_cvc": "737"
        }
    },
    "billing": {
        "address": {
            "line1": "1467",
            "line2": "CA",
            "line3": "Harrison Street",
            "city": "San Fransico",
            "state": "CA",
            "zip": "94122",
            "country": "PL",
            "first_name": "joseph",
            "last_name": "Doe"
        },
        "phone": {
            "number": "8056594427",
            "country_code": "+91"
        }
    },
    "browser_info": {
        "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36",
        "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
        "language": "nl-NL",
        "color_depth": 24,
        "screen_height": 723,
        "screen_width": 1536,
        "time_zone": 0,
        "java_enabled": true,
        "java_script_enabled": true,
        "ip_address": "109.71.40.0"
    },
    "metadata": {
        "order_category": "applepay"
    },
    "order_details": [
        {
            "product_name": "Apple iphone 15",
            "quantity": 1,
            "amount": 300,
            "account_name": "transaction_processing"
        }
    ],
      "customer_acceptance": {
        "acceptance_type": "offline",
        "accepted_at": "1963-05-03T04:07:52.723Z",
        "online": {
            "ip_address": "in sit",
            "user_agent": "amet irure esse"
        }
    }
}'

Repsonse

{
    "payment_id": "pay_TZapMDLw1izXY80fkWEH",
    "merchant_id": "postman_merchant_GHAction_f1627cea-94e6-4ac1-a32c-f5b323bd2352",
    "status": "requires_customer_action",
    "amount": 300,
    "net_amount": 300,
    "shipping_cost": null,
    "amount_capturable": 300,
    "amount_received": 0,
    "connector": "stripe",
    "client_secret": "pay_TZapMDLw1izXY80fkWEH_secret_Fa5P4Jmz6jprceQncpGy",
    "created": "2024-10-21T11:06:52.457Z",
    "currency": "USD",
    "customer_id": "malay12345",
    "customer": {
        "id": "malay12345",
        "name": "Joseph Doe",
        "email": "[email protected]",
        "phone": "999999999",
        "phone_country_code": "+65"
    },
    "description": "Its my first payment request",
    "refunds": null,
    "disputes": null,
    "mandate_id": null,
    "mandate_data": null,
    "setup_future_usage": "off_session",
    "off_session": null,
    "capture_on": null,
    "capture_method": "manual",
    "payment_method": "card",
    "payment_method_data": {
        "card": {
            "last4": "4242",
            "card_type": null,
            "card_network": null,
            "card_issuer": null,
            "card_issuing_country": null,
            "card_isin": "424242",
            "card_extended_bin": null,
            "card_exp_month": "03",
            "card_exp_year": "2030",
            "card_holder_name": null,
            "payment_checks": null,
            "authentication_data": null
        },
        "billing": null
    },
    "payment_token": null,
    "shipping": null,
    "billing": {
        "address": {
            "city": "San Fransico",
            "country": "PL",
            "line1": "1467",
            "line2": "CA",
            "line3": "Harrison Street",
            "zip": "94122",
            "state": "CA",
            "first_name": "joseph",
            "last_name": "Doe"
        },
        "phone": {
            "number": "8056594427",
            "country_code": "+91"
        },
        "email": null
    },
    "order_details": [
        {
            "brand": null,
            "amount": 300,
            "category": null,
            "quantity": 1,
            "product_id": null,
            "product_name": "Apple iphone 15",
            "product_type": null,
            "sub_category": null,
            "product_img_link": null,
            "product_tax_code": null,
            "requires_shipping": null
        }
    ],
    "email": "[email protected]",
    "name": "Joseph Doe",
    "phone": "999999999",
    "return_url": "https://www.google.com/",
    "authentication_type": "three_ds",
    "statement_descriptor_name": "Juspay",
    "statement_descriptor_suffix": "Router",
    "next_action": {
        "type": "redirect_to_url",
        "redirect_to_url": "http://localhost:8080/payments/redirect/pay_TZapMDLw1izXY80fkWEH/postman_merchant_GHAction_f1627cea-94e6-4ac1-a32c-f5b323bd2352/pay_TZapMDLw1izXY80fkWEH_1"
    },
    "cancellation_reason": null,
    "error_code": null,
    "error_message": null,
    "unified_code": null,
    "unified_message": null,
    "payment_experience": null,
    "payment_method_type": "credit",
    "connector_label": null,
    "business_country": null,
    "business_label": "default",
    "business_sub_label": null,
    "allowed_payment_method_types": null,
    "ephemeral_key": {
        "customer_id": "",
        "created_at": 1729508812,
        "expires":,
        "secret": ""
    },
    "manual_retry_allowed": null,
    "connector_transaction_id": "",
    "frm_message": null,
    "metadata": {
        "order_category": "applepay"
    },
    "connector_metadata": null,
    "feature_metadata": null,
    "reference_id": "",
    "payment_link": null,
    "profile_id": "",
    "surcharge_details": null,
    "attempt_count": 1,
    "merchant_decision": null,
    "merchant_connector_id": "",
    "incremental_authorization_allowed": null,
    "authorization_count": null,
    "incremental_authorizations": null,
    "external_authentication_details": null,
    "external_3ds_authentication_attempted": false,
    "expires_on": "2024-10-21T11:21:52.457Z",
    "fingerprint": null,
    "browser_info": {
        "language": "nl-NL",
        "time_zone": 0,
        "ip_address": "109.71.40.0",
        "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36",
        "color_depth": 24,
        "java_enabled": true,
        "screen_width": 1536,
        "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
        "screen_height": 723,
        "java_script_enabled": true
    },
    "payment_method_id": "pm_xoZahWXv8FU7pce7ZjsK",
    "payment_method_status": "inactive",
    "updated": "2024-10-21T11:06:53.794Z",
    "charges": null,
    "frm_metadata": null,
    "merchant_order_reference_id": null,
    "order_tax_amount": null,
    "connector_mandate_id": ""
}

connector_mandate_details not populated after the successful Authorization+Capture call,
Screenshot 2024-10-21 at 4 44 40 PM

After the Changes
CIT

3DS Auth
curl --location 'http://localhost:8080/payments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_l2PIg8yKpNpJYfXwnSgY8IppXOrB0Nz9OAfD36Y6Xtar5h5nyO5AgVhulydeirKW' \
--data-raw '{
    "currency":"USD",
    "amount": 300,
    "confirm": true,
    "amount_to_capture": 300,
    "customer_id": "malay123456",
    "capture_method": "manual",
    "capture_on": "2022-09-10T10:11:12Z",
    "authentication_type": "three_ds",
    "return_url": "https://www.google.com",
    "email": "[email protected]",
    "name": "Joseph Doe",
    "phone": "999999999",
    "phone_country_code": "+65",
    "description": "Its my first payment request",
    "statement_descriptor_name": "Juspay",
    "statement_descriptor_suffix": "Router",
    "payment_method": "card",
    "setup_future_usage":"off_session",
    "payment_method_type": "credit",
    "payment_method_data": {
        "card": {
            "card_number": "4242424242424242",
            "card_exp_month": "03",
            "card_exp_year": "2030",
            "card_holder_name": "joseph Doe",
            "card_cvc": "737"
        }
    },
    "billing": {
        "address": {
            "line1": "1467",
            "line2": "CA",
            "line3": "Harrison Street",
            "city": "San Fransico",
            "state": "CA",
            "zip": "94122",
            "country": "PL",
            "first_name": "joseph",
            "last_name": "Doe"
        },
        "phone": {
            "number": "8056594427",
            "country_code": "+91"
        }
    },
    "browser_info": {
        "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36",
        "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
        "language": "nl-NL",
        "color_depth": 24,
        "screen_height": 723,
        "screen_width": 1536,
        "time_zone": 0,
        "java_enabled": true,
        "java_script_enabled": true,
        "ip_address": "109.71.40.0"
    },
    "metadata": {
        "order_category": "applepay"
    },
    "order_details": [
        {
            "product_name": "Apple iphone 15",
            "quantity": 1,
            "amount": 300,
            "account_name": "transaction_processing"
        }
    ],
      "customer_acceptance": {
        "acceptance_type": "offline",
        "accepted_at": "1963-05-03T04:07:52.723Z",
        "online": {
            "ip_address": "in sit",
            "user_agent": "amet irure esse"
        }
    }
}'

Repsonse 
{
    "payment_id": "pay_f0asI05qFiTpX56aytDw",
    "merchant_id": "postman_merchant_GHAction_f1627cea-94e6-4ac1-a32c-f5b323bd2352",
    "status": "requires_customer_action",
    "amount": 300,
    "net_amount": 300,
    "shipping_cost": null,
    "amount_capturable": 300,
    "amount_received": 0,
    "connector": "stripe",
    "client_secret": "pay_f0asI05qFiTpX56aytDw_secret_K3fvrqKOfg2zUt4WlnCA",
    "created": "2024-10-21T11:16:29.680Z",
    "currency": "USD",
    "customer_id": "malay123456",
    "customer": {
        "id": "malay123456",
        "name": "Joseph Doe",
        "email": "[email protected]",
        "phone": "999999999",
        "phone_country_code": "+65"
    },
    "description": "Its my first payment request",
    "refunds": null,
    "disputes": null,
    "mandate_id": null,
    "mandate_data": null,
    "setup_future_usage": "off_session",
    "off_session": null,
    "capture_on": null,
    "capture_method": "manual",
    "payment_method": "card",
    "payment_method_data": {
        "card": {
            "last4": "4242",
            "card_type": null,
            "card_network": null,
            "card_issuer": null,
            "card_issuing_country": null,
            "card_isin": "424242",
            "card_extended_bin": null,
            "card_exp_month": "03",
            "card_exp_year": "2030",
            "card_holder_name": null,
            "payment_checks": null,
            "authentication_data": null
        },
        "billing": null
    },
    "payment_token": null,
    "shipping": null,
    "billing": {
        "address": {
            "city": "San Fransico",
            "country": "PL",
            "line1": "1467",
            "line2": "CA",
            "line3": "Harrison Street",
            "zip": "94122",
            "state": "CA",
            "first_name": "joseph",
            "last_name": "Doe"
        },
        "phone": {
            "number": "8056594427",
            "country_code": "+91"
        },
        "email": null
    },
    "order_details": [
        {
            "brand": null,
            "amount": 300,
            "category": null,
            "quantity": 1,
            "product_id": null,
            "product_name": "Apple iphone 15",
            "product_type": null,
            "sub_category": null,
            "product_img_link": null,
            "product_tax_code": null,
            "requires_shipping": null
        }
    ],
    "email": "[email protected]",
    "name": "Joseph Doe",
    "phone": "999999999",
    "return_url": "https://www.google.com/",
    "authentication_type": "three_ds",
    "statement_descriptor_name": "Juspay",
    "statement_descriptor_suffix": "Router",
    "next_action": {
        "type": "redirect_to_url",
        "redirect_to_url": "http://localhost:8080/payments/redirect/pay_f0asI05qFiTpX56aytDw/postman_merchant_GHAction_f1627cea-94e6-4ac1-a32c-f5b323bd2352/pay_f0asI05qFiTpX56aytDw_1"
    },
    "cancellation_reason": null,
    "error_code": null,
    "error_message": null,
    "unified_code": null,
    "unified_message": null,
    "payment_experience": null,
    "payment_method_type": "credit",
    "connector_label": null,
    "business_country": null,
    "business_label": "default",
    "business_sub_label": null,
    "allowed_payment_method_types": null,
    "ephemeral_key": {
        "customer_id": "malay123456",
        "created_at": 1729509389,
        "expires": 1729512989,
        "secret": "epk_66072a2ebcc04f94a9030ec641d12bbb"
    },
    "manual_retry_allowed": null,
    "connector_transaction_id": "pi_3QCJb8D5R7gDAGff1zOIY34p",
    "frm_message": null,
    "metadata": {
        "order_category": "applepay"
    },
    "connector_metadata": null,
    "feature_metadata": null,
    "reference_id": "pi_3QCJb8D5R7gDAGff1zOIY34p",
    "payment_link": null,
    "profile_id": "pro_hywyKTTMR8vbgRrlByUs",
    "surcharge_details": null,
    "attempt_count": 1,
    "merchant_decision": null,
    "merchant_connector_id": "mca_kUu56HqR9wmzMl8Eyw37",
    "incremental_authorization_allowed": null,
    "authorization_count": null,
    "incremental_authorizations": null,
    "external_authentication_details": null,
    "external_3ds_authentication_attempted": false,
    "expires_on": "2024-10-21T11:31:29.680Z",
    "fingerprint": null,
    "browser_info": {
        "language": "nl-NL",
        "time_zone": 0,
        "ip_address": "109.71.40.0",
        "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36",
        "color_depth": 24,
        "java_enabled": true,
        "screen_width": 1536,
        "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
        "screen_height": 723,
        "java_script_enabled": true
    },
    "payment_method_id": "pm_TqA1v1swJWaIAosbngS7",
    "payment_method_status": "inactive",
    "updated": "2024-10-21T11:16:30.793Z",
    "charges": null,
    "frm_metadata": null,
    "merchant_order_reference_id": null,
    "order_tax_amount": null,
    "connector_mandate_id": "pm_1QCJb8D5R7gDAGffQQgPIlwV"
}

Connector_mandate_details updated
Screenshot 2024-10-21 at 4 51 01 PM

MIT Payments

curl --location 'http://localhost:8080/payments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_l2PIg8yKpNpJYfXwnSgY8IppXOrB0Nz9OAfD36Y6Xtar5h5nyO5AgVhulydeirKW' \
--data '{
    "amount": 999,
    "currency": "USD",
    "confirm": true,
    "customer_id": "malay123456",
    "return_url": "https://google.com",
    "recurring_details": {
        "type": "payment_method_id",
        "data": "pm_TqA1v1swJWaIAosbngS7"
    },
    "off_session": true,
    "billing": {
        "address": {
            "first_name": "John",
            "last_name": "Doe",
            "line1": "1467",
            "line2": "Harrison Street",
            "line3": "Harrison Street",
            "city": "San Fransico",
            "state": "California",
            "zip": "94122",
            "country": "US"
        },
        "phone": {
            "number": "8056594427",
            "country_code": "+91"
        }
    }
}'

Response

{
    "payment_id": "pay_6Rke8ssTgVD8tpgdzAoY",
    "merchant_id": "postman_merchant_GHAction_f1627cea-94e6-4ac1-a32c-f5b323bd2352",
    "status": "succeeded",
    "amount": 999,
    "net_amount": 999,
    "shipping_cost": null,
    "amount_capturable": 0,
    "amount_received": 999,
    "connector": "stripe",
    "client_secret": "pay_6Rke8ssTgVD8tpgdzAoY_secret_kMoLCmtZNaYBjz7PiakM",
    "created": "2024-10-21T11:22:13.696Z",
    "currency": "USD",
    "customer_id": "malay123456",
    "customer": {
        "id": "malay123456",
        "name": "Joseph Doe",
        "email": "[email protected]",
        "phone": "999999999",
        "phone_country_code": "+65"
    },
    "description": null,
    "refunds": null,
    "disputes": null,
    "mandate_id": null,
    "mandate_data": null,
    "setup_future_usage": null,
    "off_session": true,
    "capture_on": null,
    "capture_method": null,
    "payment_method": "card",
    "payment_method_data": {
        "card": {
            "last4": "4242",
            "card_type": null,
            "card_network": null,
            "card_issuer": null,
            "card_issuing_country": null,
            "card_isin": "424242",
            "card_extended_bin": null,
            "card_exp_month": "03",
            "card_exp_year": "2030",
            "card_holder_name": "joseph Doe",
            "payment_checks": null,
            "authentication_data": null
        },
        "billing": null
    },
    "payment_token": null,
    "shipping": null,
    "billing": {
        "address": {
            "city": "San Fransico",
            "country": "US",
            "line1": "1467",
            "line2": "Harrison Street",
            "line3": "Harrison Street",
            "zip": "94122",
            "state": "California",
            "first_name": "John",
            "last_name": "Doe"
        },
        "phone": {
            "number": "8056594427",
            "country_code": "+91"
        },
        "email": null
    },
    "order_details": null,
    "email": "[email protected]",
    "name": "Joseph Doe",
    "phone": "999999999",
    "return_url": "https://google.com/",
    "authentication_type": "no_three_ds",
    "statement_descriptor_name": null,
    "statement_descriptor_suffix": null,
    "next_action": null,
    "cancellation_reason": null,
    "error_code": null,
    "error_message": null,
    "unified_code": null,
    "unified_message": null,
    "payment_experience": null,
    "payment_method_type": "credit",
    "connector_label": null,
    "business_country": null,
    "business_label": "default",
    "business_sub_label": null,
    "allowed_payment_method_types": null,
    "ephemeral_key": {
        "customer_id": "malay123456",
        "created_at": 1729509733,
        "expires": 1729513333,
        "secret": "epk_0f6a979a0fa74288af9da2b3d966814a"
    },
    "manual_retry_allowed": false,
    "connector_transaction_id": "pi_3QCJggD5R7gDAGff1FIsbuSL",
    "frm_message": null,
    "metadata": null,
    "connector_metadata": null,
    "feature_metadata": null,
    "reference_id": "pi_3QCJggD5R7gDAGff1FIsbuSL",
    "payment_link": null,
    "profile_id": "pro_hywyKTTMR8vbgRrlByUs",
    "surcharge_details": null,
    "attempt_count": 1,
    "merchant_decision": null,
    "merchant_connector_id": "mca_kUu56HqR9wmzMl8Eyw37",
    "incremental_authorization_allowed": null,
    "authorization_count": null,
    "incremental_authorizations": null,
    "external_authentication_details": null,
    "external_3ds_authentication_attempted": false,
    "expires_on": "2024-10-21T11:37:13.696Z",
    "fingerprint": null,
    "browser_info": null,
    "payment_method_id": "pm_TqA1v1swJWaIAosbngS7",
    "payment_method_status": "active",
    "updated": "2024-10-21T11:22:14.920Z",
    "charges": null,
    "frm_metadata": null,
    "merchant_order_reference_id": null,
    "order_tax_amount": null,
    "connector_mandate_id": "pm_1QCJb8D5R7gDAGffQQgPIlwV"
}

Checklist

  • I formatted the code cargo +nightly fmt --all
  • I addressed lints thrown by cargo clippy
  • I reviewed the submitted code
  • I added unit tests for my changes where possible

@awasthi21 awasthi21 requested a review from a team as a code owner October 21, 2024 11:23
Copy link

semanticdiff-com bot commented Oct 21, 2024

Review changes with SemanticDiff.

Analyzed 1 of 1 files.

Overall, the semantic diff is 73% smaller than the GitHub diff.

Filename Status
✔️ crates/router/src/core/payments/operations/payment_response.rs 72.42% smaller

@awasthi21 awasthi21 changed the base branch from main to hotfix-2024.10.18.0 October 21, 2024 11:28
@awasthi21 awasthi21 requested review from a team as code owners October 21, 2024 11:28
@hyperswitch-bot hyperswitch-bot bot added the M-api-contract-changes Metadata: This PR involves API contract changes label Oct 21, 2024
@awasthi21 awasthi21 closed this Oct 21, 2024
@awasthi21 awasthi21 force-pushed the 7191-mandate-on-successful-charge/authorization branch from 7bed86d to 9597215 Compare October 21, 2024 11:30
@hyperswitch-bot hyperswitch-bot bot removed the M-api-contract-changes Metadata: This PR involves API contract changes label Oct 21, 2024
@awasthi21 awasthi21 reopened this Oct 21, 2024
@awasthi21 awasthi21 removed request for a team October 21, 2024 11:33
@awasthi21 awasthi21 self-assigned this Oct 21, 2024
@awasthi21 awasthi21 added the A-core Area: Core flows label Oct 21, 2024
@awasthi21 awasthi21 changed the base branch from hotfix-2024.10.18.0 to main October 21, 2024 11:47
@awasthi21 awasthi21 force-pushed the 7191-mandate-on-successful-charge/authorization branch from bdcf39c to 3d67c94 Compare October 21, 2024 11:49
@awasthi21 awasthi21 changed the title fix(mandates): handle the connector_mandate creation once and only if the payment is charged or Authorized fix(mandates): Handle connector_mandate Creation for Payments with Status 'Authorized' Oct 21, 2024
@awasthi21 awasthi21 changed the title fix(mandates): Handle connector_mandate Creation for Payments with Status 'Authorized' fix(mandates):Allow connector_mandate_detail updation in case of 'Authorized' Payments Oct 21, 2024
@@ -1556,8 +1556,9 @@ async fn payment_response_update_tracker<F: Clone, T: types::Capturable>(
} else {
None
};

if router_data.status == enums::AttemptStatus::Charged {
if router_data.status == enums::AttemptStatus::Charged
Copy link
Contributor

@sai-harsha-vardhan sai-harsha-vardhan Oct 21, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add relevant code comment here, and also use matches!

@awasthi21 awasthi21 changed the title fix(mandates):Allow connector_mandate_detail updation in case of 'Authorized' Payments fix(mandates): Allow connector_mandate_detail updation in case of 'Authorized' Payments Oct 21, 2024
@likhinbopanna likhinbopanna added this pull request to the merge queue Oct 21, 2024
Merged via the queue into main with commit d09a805 Oct 21, 2024
19 of 21 checks passed
@likhinbopanna likhinbopanna deleted the 7191-mandate-on-successful-charge/authorization branch October 21, 2024 14:18
awasthi21 added a commit that referenced this pull request Oct 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-core Area: Core flows
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants