# Multiple Payment Method on Toolkit

**URL:** https://community.rapyd.net/t/multiple-payment-method-on-toolkit/11393
**Category:** ⚙️ API
**Tags:** checkout-toolkit
**Created:** [June 27, 2022, 4:02pm UTC](https://community.rapyd.net/t/multiple-payment-method-on-toolkit/11393 "2022-06-27T16:02:39Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![salvosav](https://sea2.discourse-cdn.com/flex016/user_avatar/community.rapyd.net/salvosav/32/4396_2.png) [@salvosav](https://community.rapyd.net/u/salvosav)
#### Post date: [June 27, 2022, 4:02pm UTC](https://community.rapyd.net/t/multiple-payment-method-on-toolkit/11393/1 "2022-06-27T16:02:39Z")

</div>

Hello all,  
here I am again.

I’ve successfully integrated the checkout with the toolkit, handle cards and banks payment.  
Now I’m just trying to have both together but it doesn’t want to work.

I’ve tried to:

- specified the paramenter: payment\_method\_type\_categories with **bank\_redirect** and **card**. The system seems to accept only the first parameter. It doesn’t return any error, it just shows only the first paramenter whatever is it;
- making a GET request to retrieve the list of available payment methods based on country code and then setting payment\_method\_types\_include with the result. Again no errors, though only the first kind of payment method that come from the GET request are shown.

Is there anything that I am missing?

---

<div class="post-metadata">

### Author: ![Community\_Team](https://avatars.discourse-cdn.com/v4/letter/c/46a35a/32.png) [@Community\_Team](https://community.rapyd.net/u/Community_Team)
#### Post date: [June 27, 2022, 6:50pm UTC](https://community.rapyd.net/t/multiple-payment-method-on-toolkit/11393/2 "2022-06-27T18:50:10Z")

</div>

Thanks @salvosav,

Great question. Have you checked out [Configuring List of Payment Methods](https://docs.rapyd.net/build-with-rapyd/reference/checkout-page-object#configuring-list-of-payment-methods)?

What country and currency are you including? Would love to try and recreate your response.

Here’s what I got from just the [checkout page](https://docs.rapyd.net/build-with-rapyd/reference/checkout-page-object).  
`// Request URL: POST https://sandboxapi.rapyd.net/v1/checkout`

Request

```auto
{
    "amount": 425.00,
    "complete_payment_url": "http://example.com/complete",
    "country": "GB",
    "currency": "GBP",
    "customer": "cus_77ebe87010ab257134948171c16a2190",
    "error_payment_url": "http://example.com/error",
    "merchant_reference_id": "950ae8c6-78",
    "cardholder_preferred_currency": true,
    "language": "en",
    "metadata": {
        "merchant_defined": true
    },
    "payment_method_types_include": [
      
    ],
     "payment_method_type_categories": [
      "card",
      "bank_redirect"
    ],
    "expiration": 1672279867,
    "payment_method_types_exclude": [],
      "custom_elements": {

         "save_card_default":true

      }
}

```

Response

```auto
{
    "status": {
        "error_code": "",
        "status": "SUCCESS",
        "message": "",
        "response_code": "",
        "operation_id": "f6a5e5c5-b1f7-4f9d-9779-f073861cd52b"
    },
    "data": {
        "id": "checkout_72a4f630cda5c343f1621a7573565505",
        "status": "NEW",
        "language": "en",
        "merchant_color": "323fff",
        "merchant_logo": null,
        "merchant_website": "http://rapyd.net",
        "merchant_customer_support": {
            "url": "http://support.rapyd.net",
            "email": "support@rapyd.net",
            "phone_number": "555-555-5555"
        },
        "merchant_alias": "Test Business",
        "merchant_terms": null,
        "merchant_privacy_policy": null,
        "page_expiration": 1657563096,
        "redirect_url": "https://sandboxcheckout.rapyd.net?token=checkout_72a4f630cda5c343f1621a7573565505",
        "merchant_main_button": "pay_now",
        "cancel_checkout_url": "http://rapyd.net",
        "complete_checkout_url": "http://rapyd.net",
        "country": "GB",
        "currency": "GBP",
        "amount": 425,
        "payment": {
            "id": null,
            "amount": 425,
            "original_amount": 0,
            "is_partial": false,
            "currency_code": "GBP",
            "country_code": "GB",
            "status": null,
            "description": "Payment via Checkout",
            "merchant_reference_id": "950ae8c6-78",
            "customer_token": "cus_77ebe87010ab257134948171c16a2190",
            "payment_method": null,
            "payment_method_data": {},
            "expiration": 1672279867,
            "captured": false,
            "refunded": false,
            "refunded_amount": 0,
            "receipt_email": null,
            "redirect_url": null,
            "complete_payment_url": "http://example.com/complete",
            "error_payment_url": "http://example.com/error",
            "receipt_number": null,
            "flow_type": null,
            "address": null,
            "statement_descriptor": null,
            "transaction_id": null,
            "created_at": 0,
            "updated_at": 0,
            "metadata": {
                "merchant_defined": true
            },
            "failure_code": null,
            "failure_message": null,
            "paid": false,
            "paid_at": 0,
            "dispute": null,
            "refunds": null,
            "order": null,
            "outcome": null,
            "visual_codes": {},
            "textual_codes": {},
            "instructions": {},
            "ewallet_id": null,
            "ewallets": [],
            "payment_method_options": {},
            "payment_method_type": null,
            "payment_method_type_category": null,
            "fx_rate": null,
            "merchant_requested_currency": null,
            "merchant_requested_amount": null,
            "fixed_side": null,
            "payment_fees": null,
            "invoice": null,
            "escrow": null,
            "group_payment": null,
            "cancel_reason": null,
            "initiation_type": "customer_present",
            "mid": null,
            "next_action": "not_applicable"
        },
        "payment_method_type": null,
        "payment_method_type_categories": [
            "card",
            "bank_redirect"
        ],
        "payment_method_types_include": [],
        "payment_method_types_exclude": [],
        "customer": "cus_77ebe87010ab257134948171c16a2190",
        "custom_elements": {
            "save_card_default": true,
            "display_description": false,
            "payment_fees_display": true,
            "merchant_currency_only": false,
            "billing_address_collect": false,
            "dynamic_currency_conversion": false
        },
        "timestamp": 1656353496,
        "payment_expiration": null,
        "cart_items": [],
        "escrow": null,
        "escrow_release_days": null
    }
}

```

Page Example  
 ![checkout-page-categories](https://us1.discourse-cdn.com/flex016/uploads/rapyd/original/2X/1/1bd8b4a4ba90e6c35e6d7e384629404963533b69.gif)

---

<div class="post-metadata">

### Author: ![salvosav](https://sea2.discourse-cdn.com/flex016/user_avatar/community.rapyd.net/salvosav/32/4396_2.png) [@salvosav](https://community.rapyd.net/u/salvosav)
#### Post date: [June 28, 2022, 11:34pm UTC](https://community.rapyd.net/t/multiple-payment-method-on-toolkit/11393/3 "2022-06-28T23:34:06Z")

</div>

Hello @Community_Team , thanks for the detailed solution.

Though this solution works ONLY for the checkout implementation. If you use the Toolkit the same exact code will provide a different output.

Specifically:

```auto
"payment_method_type_categories": [
      "card",
      "bank_redirect"
    ],

```

This will show only Card payment.

```auto
"payment_method_type_categories": [
      "bank_redirect",
      "card"
    ],

```

This will show only bank\_redirect payment.

It’s weird but that’s what it actually happens.  
It seems to me there has to be some difference on how the library handles Checkout integration and Toolkit.

---

<div class="post-metadata">

### Author: ![Community\_Team](https://avatars.discourse-cdn.com/v4/letter/c/46a35a/32.png) [@Community\_Team](https://community.rapyd.net/u/Community_Team)
#### Post date: [June 29, 2022, 1:01am UTC](https://community.rapyd.net/t/multiple-payment-method-on-toolkit/11393/4 "2022-06-29T01:01:18Z")

</div>

Hi @salvosav

Yes, with the toolkit you are allowed to use only one payment method type category. This is the design:

You need to specify **one** payment method type category in Create Checkout request, or alternatively, **one** payment method type or **one** list of payment method types of the same category.

The paragraph above is written in the following documentation:

> **[Rapyd Documentation](https://docs.rapyd.net/build-with-rapyd/docs/checkout-toolkit)**
>
> Liberate global commerce with all the tools you need for payments, payouts, and business everywhere.

---

<div class="post-metadata">

### Author: ![salvosav](https://sea2.discourse-cdn.com/flex016/user_avatar/community.rapyd.net/salvosav/32/4396_2.png) [@salvosav](https://community.rapyd.net/u/salvosav)
#### Post date: [June 29, 2022, 1:32am UTC](https://community.rapyd.net/t/multiple-payment-method-on-toolkit/11393/5 "2022-06-29T01:32:43Z")

</div>

Hello @Community_Team ,  
thanks for the reference.  
I had read that part and intented as: to filter: specify one.  
I got even more on the wrong direction because you can completely skip these parameteres (not declaring them at all) and it will just load cards payment.

Anyway I’ve changed my implementation to directly init 2 different checkouts and show both of them to the user under 2 different tabs: card & bank.
