juspay / hyperswitch

An open source payments switch written in Rust to make payments fast, reliable and affordable
https://hyperswitch.io/
Apache License 2.0
12.08k stars 1.27k forks source link

refactor(payment_methods): Unify bank types across payment methods/payouts #5099

Open Sarthak1799 opened 3 months ago

Sarthak1799 commented 3 months ago

…d payouts

Type of Change

Description

Unified bank types across payment methods and payouts.

Additional Changes

Motivation and Context

How did you test it?

Create a payment method with the new bank type

curl --location --request POST 'http://localhost:8080/payment_methods' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_cHN6hMdCFUUrNWjYSxnwhiuMsg83rXTX9jBmtHmCL6sq9a43PswY304MSt3a9blR' \
--data-raw '{
    "customer_id": "cus_LALaPcTuxxmCBORKevPC",
    "payment_method": "bank_transfer",
    "bank_transfer": {
        "bank_account_data": {
            "ach": {
                "bank_account_number": "000123456",
                "bank_routing_number": "110000000"
            }
        }
    }
}'

Response -

{
    "merchant_id": "sarthak1",
    "customer_id": "cus_LALaPcTuxxmCBORKevPC",
    "payment_method_id": "pm_fvuJyhwwOdSYjkv3xXV5",
    "payment_method": "bank_transfer",
    "payment_method_type": null,
    "card": null,
    "recurring_enabled": false,
    "installment_payment_enabled": false,
    "payment_experience": [
        "redirect_to_url"
    ],
    "metadata": null,
    "created": "2024-06-24T10:07:09.264Z",
    "bank_transfer": {
        "bank_name": null,
        "bank_country_code": null,
        "bank_city": null,
        "bank_branch": null,
        "bank_account_data": {
            "ach": {
                "bank_account_number": "000123456",
                "bank_routing_number": "110000000"
            }
        }
    },
    "last_used_at": "2024-06-24T10:07:09.264Z",
    "client_secret": "pm_fvuJyhwwOdSYjkv3xXV5_secret_sxRtjLR6g2sgPErCOg8P"
}

Checklist