# Configure fees

This topic covers several tutorials with steps you must take to set and verify the following fees:

- [Sending fee](#sending-fee)
- [Receiving fee](#receiving-fee)
- [Partner fee](#partner-fee)
- [Account fee](#account-fee)
- [Payout method fee](#payout-method-fee)


Tip
For conceptual details about RippleNet fees, see [Fees](/products/payments-odl/api-docs/ripplenet/best-practices/fees).

## Scenario

All of the tutorials in this topic refer to an example set of RippleNet instances, one in San Francisco (SF) and one in London. The sending SF instance handles FX conversion and holds a nostro relationship account on the London instance.

The following diagram shows the example instances, and their account liquidity and peer relationship:

![RippleNet Fees with Two Instance Path](/assets/fees-tutorial-two-node-path.833161c685ad4911665dab25dc932a17caee93db1a8e4a39196ebf0fba14681a.7135dee1.svg)

The FX conversion takes place in San Francisco, converting `1` USD to `0.77` GBP.

Note
This tutorial assumes access and basic familiarity with the RippleNet API.

## Sending fee

Follow the steps in this tutorial to configure a fee on your RippleNet that collects value from a payment transfer when the account acts as the sending account to another account on your server's ledger.

### Sending fee details

Set a fee that will be collected by an account on your instance with the following configuration details:

- The account acts in the sending role of transfers to other accounts on the instance.
- Your RippleNet instance initiates the payment, acting as the first instance in the RippleNet payment.
- The currency is in USD.
- The fee applies only to regular (non-return) payments.
- The fee collected is flat value (not percentage of payment).
- The amount of the fee is `5`.


#### Request

Here is the API request for the sending fee:


```json
POST /v4/config/fees
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
  "currency_code": "USD",
  "fee_type": "FLAT_RATE",
  "node_type": "INITIAL",
  "payment_type": "REGULAR",
  "role_type": "SENDING",
  "value": 5.00
}
```

#### Response (`200`)

The successful response indicates you set the fee for `5` USD. RippleNet assigns a `feeId` for this fee for reference.

You can also review the details of the fee by calling Get fee by ID and passing the `feeId` as a path parameter.


```json
{
    "value": "5.00",
    "currency_code": "USD",
    "role_type": "SENDING",
    "payment_type": "REGULAR",
    "node_type": "INITIAL",
    "fee_type": "FLAT_RATE",
    "partner_name": null,
    "account_name": null,
    "upper_limit": null,
    "lower_limit": null,
    "feeId": "542e97c1-1308-4d1f-8f65-343b96598ce5",
    "payout_method": null
}
```

For more information, see the *Get fee by ID* operation in the API Reference.  

### Review fee impact with payment object

To review how the fee impacts the RippleNet Payment Object, request two quote collections. One for a `500` USD sender quote type payment and the other an equivalent `385` GBP receiver quote type between the transactional accounts in San Francisco and London. The details in the `quote_elements` of the quotes returned highlight the impact of the sender fee on the sending and receiving amounts.

### Create quote collections

With the `5` USD sending fee set, use the *Create quote collection* operation to retrieve all available quotes for two quote types:

- A quote type of [sender amount](#sending-fee---sender-amount-quote-request) `500` USD.
- A quote type of [receiver amount](#sending-fee---receiver-amount-quote-request) `500` USD.


#### Sending fee - sender amount quote (Request)


```json
POST /v4/quote_collections/
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
	"sending_address": "trans_usd_sf@g.us.ca.san_francisco",
	"receiving_address": "trans_gbp_lon@g.eu.uk.london",
	"amount": 500,
	"currency": "USD",
	"quote_type": "SENDER_AMOUNT"
}
```

#### Sending fee - sender amount quote (Response) (`200`)


```json
{
    "quote_collection_id": "4c0c3d28-2696-4ec7-abd1-99c21b59f589",
    "quotes": [
        {
            "quote_id": "6212809e-b9e2-4d00-aa2e-fe8c526e72b3",
            "created_at": "2020-01-28T21:07:11.127Z",
            "expires_at": "2020-01-28T22:07:11.127Z",
            "type": "SENDER_AMOUNT",
            "price_guarantee": "FIRM",
            "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
            "receiver_address": "trans_gbp_lon@g.eu.uk.london",
            "amount": "500",
            "currency_code": "USD",
            "currency_code_filter": null,
            "service_type": null,
            "quote_elements": [
                {
                    "quote_element_id": "33b0dc8c-54ae-4a1d-9250-0c877997df97",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "1",
                    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "495.00",
                    "sending_fee": "5.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "USD"
                },
                {
                    "quote_element_id": "0412d48f-60ae-4511-ac42-4294a23bd067",
                    "quote_element_type": "EXCHANGE",
                    "quote_element_order": "2",
                    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "381.15",
                    "sending_fee": "0",
                    "receiving_fee": "0",
                    "sending_currency_code": "USD",
                    "receiving_currency_code": "GBP",
                    "fx_rate": {
                        "rate": "0.770000000",
                        "base_currency_code": "USD",
                        "counter_currency_code": "GBP",
                        "type": "buy"
                    },
                    "transfer_currency_code": null
                },
                {
                    "quote_element_id": "2b93af42-45fc-4232-a941-9b0767f0c724",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "3",
                    "sender_address": "conct_gbp_sf@g.eu.uk.london",
                    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
                    "sending_amount": "381.15",
                    "receiving_amount": "381.15",
                    "sending_fee": "0.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "GBP"
                }
            ],
            "liquidity_warning": null,
            "payment_method": null
        }
    ],
    "quote_errors": []
}
```

#### Initial quote element

`33b0dc8c-54ae-4a1d-9250-0c877997df97`

The first quote element in the quote describes the payment transfer between the SF transactional account and the SF connector account. This quote element includes the `5` USD sending fee that you set previously:


```json
{
    "quote_element_id": "33b0dc8c-54ae-4a1d-9250-0c877997df97",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "1",
    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
    "sending_amount": "495.00",
    "receiving_amount": "495.00",
    "sending_fee": "5.00",
    "receiving_fee": "0.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "USD"
}
```

##### Fee calculation

Your quote requested a payment for `500` USD, but the first quote element shows a sending amount of `495.00`. This is because RippleNet subtracts the `5` USD sending fee from the payment transfer amount before it calculates the resulting sending amount:


```json
{
    "sending_amount": "495.00",
    "receiving_amount": "495.00",
    "sending_fee": "5.00",
    "receiving_fee": "0.00"
}
```

Note
Sending fees impact transfer amounts before `sending_amount` values are calculated.

#### FX conversion quote element

`0412d48f-60ae-4511-ac42-4294a23bd067`

The second quote element shows the FX conversion from USD to GBP that takes place on the SF instance. There is no fee in this quoted transfer:


```json
{
     "quote_element_id": "0412d48f-60ae-4511-ac42-4294a23bd067",
     "quote_element_type": "EXCHANGE",
     "quote_element_order": "2",
     "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
     "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
     "sending_amount": "495.00",
     "receiving_amount": "381.15",
     "sending_fee": "0",
     "receiving_fee": "0",
     "sending_currency_code": "USD",
     "receiving_currency_code": "GBP",
     "fx_rate": {
        "rate": "0.770000000",
        "base_currency_code": "USD",
        "counter_currency_code": "GBP",
        "type": "buy"
     },
     "transfer_currency_code": null
}
```

#### Terminal quote element

`2b93af42-45fc-4232-a941-9b0767f0c724`

The last quote element in this quote describes the transfer from the San Francisco connector account on the London instance to the London transactional account:


```json
{
    "quote_element_id": "2b93af42-45fc-4232-a941-9b0767f0c724",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "3",
    "sender_address": "conct_gbp_sf@g.eu.uk.london",
    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
    "sending_amount": "381.15",
    "receiving_amount": "381.15",
    "sending_fee": "0.00",
    "receiving_fee": "0.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "GBP"
}
```

There are no fees set for transfers between these accounts. The [Receiving fee](#receiving-fee) tutorial sets a fee for this scenario.

##### Payout calculation

The last quote element shows a transfer with the `receiving_amount` of `381.15` GBP, and the element shows no receiving fee. If there were a receiving fee, the payout would be the difference after subtracting the fee.

The `500` USD sender amount payment pays out `381.15 GBP.`

#### Sending fee - receiver amount quote (Request)

Create a quote for receiver amount `385` GBP, which is the equivalent of `500` USD with a 0.77 FX conversion rate to GBP.


```json
POST /v4/quote_collections/
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
	"sending_address": "trans_usd_sf@g.us.ca.san_francisco",
	"receiving_address": "trans_gbp_lon@g.eu.uk.london",
	"amount": 500,
	"currency": "USD",
	"quote_type": "RECEIVER_AMOUNT"
}
```

#### Sending fee - receiver amount quote (Response) (`200`)


```json
{
    "quote_collection_id": "2d514ceb-2160-494f-8b25-9c7ad9abf4cb",
    "quotes": [
        {
            "quote_id": "9c5aee52-b11d-483a-b307-9ccde9eedef9",
            "created_at": "2020-02-01T05:57:24.462Z",
            "expires_at": "2020-02-01T06:57:24.462Z",
            "type": "RECEIVER_AMOUNT",
            "price_guarantee": "FIRM",
            "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
            "receiver_address": "trans_gbp_lon@g.eu.uk.london",
            "amount": "385",
            "currency_code": "GBP",
            "currency_code_filter": null,
            "service_type": null,
            "quote_elements": [
                {
                    "quote_element_id": "cf99af2b-13b2-4af0-a439-00ef0b285b24",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "1",
                    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "sending_amount": "500.00",
                    "receiving_amount": "500.00",
                    "sending_fee": "5.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "USD"
                },
                {
                    "quote_element_id": "5237fed0-036b-4536-ba9b-0ecb6d4c1c53",
                    "quote_element_type": "EXCHANGE",
                    "quote_element_order": "2",
                    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
                    "sending_amount": "500.00",
                    "receiving_amount": "385.00",
                    "sending_fee": "0",
                    "receiving_fee": "0",
                    "sending_currency_code": "USD",
                    "receiving_currency_code": "GBP",
                    "fx_rate": {
                        "rate": "0.770000000",
                        "base_currency_code": "USD",
                        "counter_currency_code": "GBP",
                        "type": "buy"
                    },
                    "transfer_currency_code": null
                },
                {
                    "quote_element_id": "0e69a31b-7073-4068-a3c1-cca72ba665c2",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "3",
                    "sender_address": "conct_gbp_sf@g.eu.uk.london",
                    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
                    "sending_amount": "385.00",
                    "receiving_amount": "385.00",
                    "sending_fee": "0.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "GBP"
                }
            ],
            "liquidity_warning": null,
            "payment_method": null
        }
    ],
    "quote_errors": []
}
```

#### Initial quote element

`cf99af2b-13b2-4af0-a439-00ef0b285b24`

The first quote element in the quote describes the payment transfer between the SF transactional account and the SF connector account. This quote element includes the `5` USD sending fee that you set previously:


```json
{
    "quote_element_id": "cf99af2b-13b2-4af0-a439-00ef0b285b24",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "1",
    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
    "sending_amount": "500.00",
    "receiving_amount": "500.00",
    "sending_fee": "5.00",
    "receiving_fee": "0.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "USD"
}
```

##### Fee calculation

Your quote requested a payment with a payout `385` GBP by using a receiver amount quote type. The first quote element shows a sending amount of `500.00`, with a sending fee of  `5.00`. The sender must originate the payment with `505.00` USD. This is because RippleNet adds the `5` USD sending fee to the `sending_amount` to calculate the amount to originate the payment.


```json
{
    "sending_amount": "500.00",
    "receiving_amount": "500.00",
    "sending_fee": "5.00",
    "receiving_fee": "0.00"
}
```

Note
RippleNet subtracts sending fees from origination amounts to produce `sending_amount` values.

#### FX conversion quote element

`5237fed0-036b-4536-ba9b-0ecb6d4c1c53`

The second quote element shows the FX conversion from USD to GBP that takes place on the SF instance. There is no fee in this quoted transfer:


```json
{
    "quote_element_id": "5237fed0-036b-4536-ba9b-0ecb6d4c1c53",
    "quote_element_type": "EXCHANGE",
    "quote_element_order": "2",
    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
    "sending_amount": "500.00",
    "receiving_amount": "385.00",
    "sending_fee": "0",
    "receiving_fee": "0",
    "sending_currency_code": "USD",
    "receiving_currency_code": "GBP",
    "fx_rate": {
        "rate": "0.770000000",
        "base_currency_code": "USD",
        "counter_currency_code": "GBP",
        "type": "buy"
    },
    "transfer_currency_code": null
}
```

#### Terminal quote element

`0e69a31b-7073-4068-a3c1-cca72ba665c2`

The last quote element in this quote describes the transfer from the San Francisco connector account on the London instance to the London transactional account:


```json
{
    "quote_element_id": "0e69a31b-7073-4068-a3c1-cca72ba665c2",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "3",
    "sender_address": "conct_gbp_sf@g.eu.uk.london",
    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
    "sending_amount": "385.00",
    "receiving_amount": "385.00",
    "sending_fee": "0.00",
    "receiving_fee": "0.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "GBP"
}
```

There are no fees set for transfers between these accounts. See the [Receiving fee](#receiving-fee) tutorial to set a fee for this scenario.

##### Fee calculation

The last quote element shows a transfer with the `receiving_amount` of `385.00` GBP, and the element shows no receiving fee, so the payment pays out `385.00 GBP.` If there were a receiving fee, the payout would be the difference after subtracting the fee.

## Receiving fee

Follow the steps in this tutorial to configure a fee on your RippleNet that collects value from a payment transfer when the account acts as the receiving account from another account on your server's ledger.

### Receiving fee details

Set a fee that will be collected by an account on your instance with the following configuration details:

- The account acts in the receiving role of transfers from other accounts on the instance.
- Your RippleNet instance terminates the payment, acting as the final instance in the RippleNet payment.
- The currency is in GBP.
- The fee applies only to regular (non-return) payments.
- The fee collected is flat value (not percentage of payment).
- The amount of the fee is `5`.


#### Request

Here is the API request for the receiving fee:


```json
POST /v4/config/fees
Host: lon-bank.ripple.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
  "currency_code": "GBP",
  "fee_type": "FLAT_RATE",
  "node_type": "TERMINAL",
  "payment_type": "REGULAR",
  "role_type": "RECEIVING",
  "value": 5.00
}
```

#### Response (`200`)

The successful response indicates you set the fee for `5` USD. RippleNet assigns a `feeId` for this fee for reference.

You can also review the details of the fee by calling Get fee by ID and passing the `feeId` as a path parameter.


```json
{
    "value": "5.00",
    "currency_code": "GBP",
    "role_type": "RECEIVING",
    "payment_type": "REGULAR",
    "node_type": "TERMINAL",
    "fee_type": "FLAT_RATE",
    "partner_name": null,
    "account_name": null,
    "upper_limit": null,
    "lower_limit": null,
    "feeId": "753407d0-1b59-4f9a-bc0c-213a63646c8d",
    "payout_method": null
}
```

For more information, see the *Get fee by ID* operation in the API Reference.  

### Review fee impact with payment object

To review how the fee impacts the RippleNet Payment Object, request two quote collections. One for a `500` USD sender quote type payment and the other an equivalent `385` GBP receiver quote type between the transactional accounts in San Francisco and London. The details in the `quote_elements` of the quotes returned highlight the impact of the sender fee on the sending and receiving amounts.

### Create quote collections

With the `5` USD sending fee set, use the *Create quote collection* operation to retrieve all available quotes for two quote types:

- A quote type of [sender amount](#receiving-fee---sender-amount-quote-request) `500` USD.
- A quote type of [receiver amount](#receiving-fee---receiver-amount-quote-request) `500` USD.


Note
The SF instance has one sender fee set, which was previously created in the [Sending fee](#sending-fee) tutorial.

#### Receiving fee - sender amount quote (Request)


```json
POST /v4/quote_collections/
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
	"sending_address": "trans_usd_sf@g.us.ca.san_francisco",
	"receiving_address": "trans_gbp_lon@g.eu.uk.london",
	"amount": 500,
	"currency": "USD",
	"quote_type": "SENDER_AMOUNT"
}
```

#### Receiving fee - sender amount quote (Response) (`200`)


```json
{
    "quote_collection_id": "a495c71c-56fe-48e1-96ed-90b4bcd19bc0",
    "quotes": [
        {
            "quote_id": "fb071c2f-d19a-4989-9ca4-1df312d39e78",
            "created_at": "2020-02-01T06:11:39.021Z",
            "expires_at": "2020-02-01T07:11:39.021Z",
            "type": "SENDER_AMOUNT",
            "price_guarantee": "FIRM",
            "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
            "receiver_address": "trans_gbp_lon@g.eu.uk.london",
            "amount": "500",
            "currency_code": "USD",
            "currency_code_filter": null,
            "service_type": null,
            "quote_elements": [
                {
                    "quote_element_id": "3063d609-c29a-42de-8850-27e65bf19cb9",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "1",
                    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "495.00",
                    "sending_fee": "5.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "USD"
                },
                {
                    "quote_element_id": "9b318ee2-0321-42fa-9da0-47e3de599d53",
                    "quote_element_type": "EXCHANGE",
                    "quote_element_order": "2",
                    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "381.15",
                    "sending_fee": "0",
                    "receiving_fee": "0",
                    "sending_currency_code": "USD",
                    "receiving_currency_code": "GBP",
                    "fx_rate": {
                        "rate": "0.770000000",
                        "base_currency_code": "USD",
                        "counter_currency_code": "GBP",
                        "type": "buy"
                    },
                    "transfer_currency_code": null
                },
                {
                    "quote_element_id": "0d2fd22d-e93a-47f9-ab5a-b4500c344a1a",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "3",
                    "sender_address": "conct_gbp_sf@g.eu.uk.london",
                    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
                    "sending_amount": "381.15",
                    "receiving_amount": "381.15",
                    "sending_fee": "0.00",
                    "receiving_fee": "5.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "GBP"
                }
            ],
            "liquidity_warning": null,
            "payment_method": null
        }
    ],
    "quote_errors": []
}
```

#### Initial quote element

`3063d609-c29a-42de-8850-27e65bf19cb9`

The first quote element in the quote describes the payment transfer between the SF transactional account and the SF connector account. This quote element includes the `5` USD sending fee that you set previously:


```json
{
    "quote_element_id": "3063d609-c29a-42de-8850-27e65bf19cb9",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "1",
    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
    "sending_amount": "495.00",
    "receiving_amount": "495.00",
    "sending_fee": "5.00",
    "receiving_fee": "0.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "USD"
}
```

##### Fee calculation

Your quote requested a payment for `500` USD, but the first quote element shows a sending amount of `495.00`. This is because RippleNet subtracts the `5` USD sending fee from the payment transfer amount before it calculates the resulting sending amount:


```json
{
    "sending_amount": "495.00",
    "receiving_amount": "495.00",
    "sending_fee": "5.00",
    "receiving_fee": "0.00"
}
```

Note
Sending fees impact transfer amounts before `sending_amount` values are caclulated.

#### FX conversion quote element

`9b318ee2-0321-42fa-9da0-47e3de599d53`

The second quote element shows the FX conversion from USD to GBP that takes place on the SF instance. There is no fee in this quoted transfer:


```json
{
    "quote_element_id": "9b318ee2-0321-42fa-9da0-47e3de599d53",
    "quote_element_type": "EXCHANGE",
    "quote_element_order": "2",
    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
    "sending_amount": "495.00",
    "receiving_amount": "381.15",
    "sending_fee": "0",
    "receiving_fee": "0",
    "sending_currency_code": "USD",
    "receiving_currency_code": "GBP",
    "fx_rate": {
        "rate": "0.770000000",
        "base_currency_code": "USD",
        "counter_currency_code": "GBP",
        "type": "buy"
    },
    "transfer_currency_code": null
}
```

#### Terminal quote element

`0d2fd22d-e93a-47f9-ab5a-b4500c344a1a`

The last quote element in this quote describes the transfer from the San Francisco connector account on the London instance to the London transactional account:


```json
{
    "quote_element_id": "0d2fd22d-e93a-47f9-ab5a-b4500c344a1a",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "3",
    "sender_address": "conct_gbp_sf@g.eu.uk.london",
    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
    "sending_amount": "381.15",
    "receiving_amount": "381.15",
    "sending_fee": "0.00",
    "receiving_fee": "5.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "GBP"
}
```

There are no fees set for transfers between these accounts. The [Receiving fee](#receiving-fee) tutorial sets a fee for this scenario.

##### Payout calculation

The last quote element shows a transfer with the `receiving_amount` of `381.15` GBP, and the element shows the `5` GBP receiving fee. The payout is the difference from the `receiving_amount` value after subtracting the fee.

The `500` USD sender amount payment pays out `376.15` GBP.

#### Receiving fee - receiver amount quote (Request)

Create a quote for receiver amount `385` GBP, which is the equivalent of `500` USD with a 0.77 FX conversion rate to GBP.


```json
POST /v4/quote_collections/
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
	"sending_address": "trans_usd_sf@g.us.ca.san_francisco",
	"receiving_address": "trans_gbp_lon@g.eu.uk.london",
	"amount": 385,
	"currency": "GBP",
	"quote_type": "RECEIVER_AMOUNT"
}
```

#### Receiving fee - receiver amount quote (Response) (`200`)


```json
{
    "quote_collection_id": "c6b671b9-1d51-4a76-a16c-13b3208a614e",
    "quotes": [
        {
            "quote_id": "763fc1a6-4a2f-46c7-9b64-0b3244df8a45",
            "created_at": "2020-02-01T06:14:01.592Z",
            "expires_at": "2020-02-01T07:14:01.592Z",
            "type": "RECEIVER_AMOUNT",
            "price_guarantee": "FIRM",
            "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
            "receiver_address": "trans_gbp_lon@g.eu.uk.london",
            "amount": "385",
            "currency_code": "GBP",
            "currency_code_filter": null,
            "service_type": null,
            "quote_elements": [
                {
                    "quote_element_id": "c5c7c0a9-f18d-49c6-9776-cb376c17009c",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "1",
                    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "sending_amount": "506.49",
                    "receiving_amount": "506.49",
                    "sending_fee": "5.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "USD"
                },
                {
                    "quote_element_id": "8355a8db-ae60-4ebd-abbd-acc75186ebb5",
                    "quote_element_type": "EXCHANGE",
                    "quote_element_order": "2",
                    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
                    "sending_amount": "506.49",
                    "receiving_amount": "390.00",
                    "sending_fee": "0",
                    "receiving_fee": "0",
                    "sending_currency_code": "USD",
                    "receiving_currency_code": "GBP",
                    "fx_rate": {
                        "rate": "0.770000000",
                        "base_currency_code": "USD",
                        "counter_currency_code": "GBP",
                        "type": "buy"
                    },
                    "transfer_currency_code": null
                },
                {
                    "quote_element_id": "6be73ca9-6fac-498b-828d-6dd852ba72f3",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "3",
                    "sender_address": "conct_gbp_sf@g.eu.uk.london",
                    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
                    "sending_amount": "390.00",
                    "receiving_amount": "390.00",
                    "sending_fee": "0.00",
                    "receiving_fee": "5.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "GBP"
                }
            ],
            "liquidity_warning": null,
            "payment_method": null
        }
    ],
    "quote_errors": []
}
```

#### Initial quote element

`c5c7c0a9-f18d-49c6-9776-cb376c17009c`

The first quote element in the quote describes the payment transfer between the SF transactional account and the SF connector account. This quote element includes the `5` USD sending fee that was set previously:


```json
{
    "quote_element_id": "c5c7c0a9-f18d-49c6-9776-cb376c17009c",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "1",
    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
    "sending_amount": "506.49",
    "receiving_amount": "506.49",
    "sending_fee": "5.00",
    "receiving_fee": "0.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "USD"
},
```

##### Fee calculation

Your quote requested a payment with a payout `385` GBP by using a receiver amount quote type. The first quote element shows a sending amount of `506.49`, with a sending fee of  `5.00`. The sender must originate the payment with `511.49` USD. This is because RippleNet adds the `5` USD sending fee to the `sending_amount` to calculate the amount to originate the payment.


```json
{
    "sending_amount": "506.49",
    "receiving_amount": "506.49",
    "sending_fee": "5.00",
    "receiving_fee": "0.00"
}
```

Note
RippleNet subtracts sending fees from origination amounts to produce `sending_amount` values.

#### FX conversion quote element

`8355a8db-ae60-4ebd-abbd-acc75186ebb5`

The second quote element shows the FX conversion from USD to GBP that takes place on the SF instance. There is no fee in this quoted transfer:


```json
{
    "quote_element_id": "8355a8db-ae60-4ebd-abbd-acc75186ebb5",
    "quote_element_type": "EXCHANGE",
    "quote_element_order": "2",
    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
    "sending_amount": "506.49",
    "receiving_amount": "390.00",
    "sending_fee": "0",
    "receiving_fee": "0",
    "sending_currency_code": "USD",
    "receiving_currency_code": "GBP",
    "fx_rate": {
        "rate": "0.770000000",
        "base_currency_code": "USD",
        "counter_currency_code": "GBP",
        "type": "buy"
    },
    "transfer_currency_code": null
},
```

#### Terminal quote element

`6be73ca9-6fac-498b-828d-6dd852ba72f3`

The last quote element in this quote describes the transfer from the San Francisco connector account on the London instance to the London transactional account:


```json
{
    "quote_element_id": "6be73ca9-6fac-498b-828d-6dd852ba72f3",
    "quote_element_type": "TRANSFER",
    "quote_element_order": "3",
    "sender_address": "conct_gbp_sf@g.eu.uk.london",
    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
    "sending_amount": "390.00",
    "receiving_amount": "390.00",
    "sending_fee": "0.00",
    "receiving_fee": "5.00",
    "sending_currency_code": null,
    "receiving_currency_code": null,
    "fx_rate": null,
    "transfer_currency_code": "GBP"
}
```

##### Fee calculation

The last quote element shows a transfer with the `receiving_amount` of `390.00` GBP, and the element shows a receiving fee of `5` USD, so the payment pays out `385.00 GBP.` The payout amount is the difference of the `receiving_amount` value and the `receiving_fee` value in GBP.

## Partner fee

Follow the steps in this tutorial to configure a fee on your RippleNet that collects value from a payment transfer when the sender or receiver is a specified partner.

### Partner fee details

Set a fee that will be collected by an account on your instance with the following configuration details:

- The account collecting the fee acts in the receiving role of transfers to other accounts on the instance.
- Your RippleNet instance receives the payment, acting as the terminal instance in the RippleNet payment.
- The currency is in GBP.
- The fee applies only to regular (non-return) payments.
- The fee collected is flat value (not percentage of payment).
- The amount of the fee is `1.00`.
- The partner involved in the payment is San Francisco, specified as `g.us.ca.san_francisco`.


Note
- You set this fee's `role_type` to `receiving`. In this partner fee, your account only collects a fee if the specified San Francisco partner does the sending of the transfer. This is because when you configure a fee, you configure it for the account that collects the fee, and the `role_type` indicates the role that account plays.
- Partner fees only appear in the Quote Element Object when the fee's `partner_name` matches the `owner` of the account charged with the fee. For example, if you set a fee's `partner_name` to `g.us.ca.san_francisco`, then you must ensure that the `owner` field of the account charged with the fee is also set to `g.us.ca.san_francisco`. Otherwise, the fee will not be applied to the quote.


#### Request

Specify the partner's RippleNet address as the value for the `partner_name` field to set the fee for that partner.

Here is the API request for the sending fee:


```json
POST /v4/config/fees
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
  "currency_code": "GBP",
  "fee_type": "FLAT_RATE",
  "node_type": "TERMINAL",
  "payment_type": "REGULAR",
  "role_type": "RECEIVING",
  "value": 1.00,
  "partner_name": "g.us.ca.san_francisco"
}
```

#### Response (`200`)

The successful response indicates you set the fee for `1` GBP. RippleNet assigns a `feeId` for this fee for reference.

You can also review the details of the fee by calling Get fee by ID and passing the `feeId` as a path parameter.


```json
{
    "value": "1.00",
    "currency_code": "GBP",
    "role_type": "TERMINAL",
    "payment_type": "REGULAR",
    "node_type": "RECEIVING",
    "fee_type": "FLAT_RATE",
    "partner_name": "g.us.ca.san_francisco",
    "account_name": null,
    "upper_limit": null,
    "lower_limit": null,
    "feeId": "48979ba3-bb06-49a0-8393-6edc820d8b5e",
    "payout_method": null
}
```

For more information, see the *Get fee by ID* operation in the API Reference.  

## Account fee

Follow the steps in this tutorial to configure a fee on your RippleNet that collects value from a payment transfer when the account acts as the receiving account to another account on your server's ledger.

The account fee will only apply when transfers that include the specified partner's account are involved in the payment.

### Account fee details

Set a fee that will be collected by an account on your instance with the following configuration details:

- The account acts in the receiving role of transfers to other accounts on the instance.
- Your RippleNet instance receives the payment, acting as the terminal instance in the RippleNet payment.
- The currency is in GBP.
- The fee applies only to regular (non-return) payments.
- The fee collected is flat value (not percentage of payment).
- The amount of the fee is `0.5`.
- The partner involved in the payment is San Francisco, specified as `g.us.ca.san_francisco`.
- The account involved in the payment is the transactional account, specified as `conct_gbp_sf`.


Note
You set this fee's `role_type` to `receiving`. In this account fee, your account only collects a fee if the specified San Francisco partner's account does the sending of the transfer. This is because when you configure a fee, you configure it for the account that collects the fee, and the `role_type` indicates the role that account plays.

#### Request

Specify the account and partner RippleNet details to set the fee for an account.

To set a fee for an account you must do the following:

- Specify the partner's RippleNet address as the value for the `partner_name` field
- Specify the account name as the value for the `account_name` field.


Here is the API request for the sending fee:


```json
POST /v4/config/fees
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
  "currency_code": "GBP",
  "fee_type": "FLAT_RATE",
  "node_type": "TERMINAL",
  "payment_type": "REGULAR",
  "role_type": "RECEIVING",
  "value": 0.50,
  "partner_name": "g.us.ca.san_francisco",
  "account_name": "conct_gbp_sf"
}
```

#### Response (`200`)

The successful response indicates you set the fee for `.50` GBP. RippleNet assigns a `feeId` for this fee for reference.

You can also review the details of the fee by calling Get fee by ID and passing the `feeId` as a path parameter.


```json
{
    "value": "0.50",
    "currency_code": "GBP",
    "role_type": "RECEIVING",
    "payment_type": "REGULAR",
    "node_type": "TERMINAL",
    "fee_type": "FLAT_RATE",
    "partner_name": "g.us.ca.san_francisco",
    "account_name": "conct_gbp_sf",
    "upper_limit": null,
    "lower_limit": null,
    "feeId": "7381b7ea-3cc2-4940-91ce-21481b8ada2d",
    "payout_method": null
}
```

For more information, see the *Get fee by ID* operation in the API Reference.  

## Payout method fee

The `payout_method` field in the fee specifies the unique string for the fee. Use this tutorial if you want to set fees for payout method or partner account.

### Add payout methods

Before adding fees for any payout methods, you must create the payout methods for the London instance. One will be for customers who want cash payouts and the other for payout to bank accounts.

#### Add a cash payout method

Use the Create payout method to add a payout method to the London instance for customers who want a cash payout.

Note
The string used to assign the `payout_method` value must be unique among payout methods.

##### Request


```json
POST /v4/config/payout_methods
Host: lon-bank.ripple.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
	"payout_method": "cash",
	"description": "Cash payout method."
}
```

##### Response (`200`)

The successful request returns a JSON body with a UUID for the payout method.


```json
{
    "payout_method_id": "636538f1-b68d-43bf-9a38-bbc8dc9d77c5",
    "payout_method": "cash",
    "description": "Cash payout method."
}
```

#### Add a bank account payout method

Add a payout method to the London instance for customers who want a bank account payout using the Create payout method.

Note
The string used for the `payout_method` value must be unique among payout methods.

##### Request


```json
POST /v4/config/payout_methods
Host: lon-bank.ripple.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey
{
	"payout_method": "bank_account",
	"description": "Payout method for bank accounts."
}
```

##### Response (`200`)

The successful request returns a JSON body with a UUID for the payout method.


```json
{
    "payout_method_id": "7b3af0b2-dae9-4c87-b1be-c1f2af812427",
    "payout_method": "bank_account",
    "description": "Payout method for bank accounts."
}
```

### Add payout method fees

Follow the steps in this tutorial to configure a fee on your RippleNet that collects value from a payment transfer when the quote requests specific payout methods:

- A fee for the [`cash`](#fee-details-for-cash-payout-method) payout method.
- A fee for the [`bank_account`](#fee-details-for-cash-payout-method) payout method.


#### Fee details for `cash` payout method

Set a fee that will be collected by an account on your instance with the following configuration details:

- The account acts in the receiving role of transfers from other accounts on the instance.
- Your RippleNet instance terminates the payment, acting as the final instance in the RippleNet payment.
- The currency is in GBP.
- The fee applies only to regular (non-return) payments.
- The fee collected is flat value (not percentage of payment).
- The amount of the fee is `9.50`.
- The payout method is cash.


##### Request

Here is the API request for the `cash` payout method fee:


```json
POST /v4/config/fees
Host: lon-bank.ripple.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
  "currency_code": "GBP",
  "fee_type": "FLAT_RATE",
  "node_type": "TERMINAL",
  "payment_type": "REGULAR",
  "role_type": "RECEIVING",
  "value": 9.50,
  "payout_method": "cash"
}
```

##### Response (`200`)

The successful response indicates you set the fee for `9.50` GBP. RippleNet assigns a `feeId` for this fee for reference.

You can also review the details of the fee by calling Get fee by ID and passing the `feeId` as a path parameter.


```json
{
    "value": "9.50",
    "currency_code": "GBP",
    "role_type": "RECEIVING",
    "payment_type": "REGULAR",
    "node_type": "TERMINAL",
    "fee_type": "FLAT_RATE",
    "partner_name": null,
    "account_name": null,
    "upper_limit": null,
    "lower_limit": null,
    "feeId": "481d8bae-b806-4662-b3bb-6052206ea1df",
    "payout_method": "cash"
}
```

For more information, see the *Get fee by ID* operation in the API Reference.  

#### Fee details for `bank_account` payout method

Set a fee that will be collected by an account on your instance with the following configuration details:

- The account acts in the receiving role of transfers from other accounts on the instance.
- Your RippleNet instance terminates the payment, acting as the final instance in the RippleNet payment.
- The currency is in GBP.
- The fee applies only to regular (non-return) payments.
- The fee collected is flat value (not percentage of payment).
- The amount of the fee is `5.00`.
- The payout method is bank account.


##### Request

Here is the API request for the `bank_account` payout method fee:


```json
POST /v4/config/fees
Host: lon-bank.ripple.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
  "currency_code": "GBP",
  "fee_type": "FLAT_RATE",
  "node_type": "TERMINAL",
  "payment_type": "REGULAR",
  "role_type": "RECEIVING",
  "value": 5.00,
  "payout_method": "bank_account"
}
```

##### Response (`200`)

The successful response indicates you set the fee for `5.00` GBP. RippleNet assigns a `feeId` for this fee for reference.

You can also review the details of the fee by calling Get fee by ID and passing the `feeId` as a path parameter.


```json
{
    "value": "5.00",
    "currency_code": "GBP",
    "role_type": "RECEIVING",
    "payment_type": "REGULAR",
    "node_type": "TERMINAL",
    "fee_type": "FLAT_RATE",
    "partner_name": null,
    "account_name": null,
    "upper_limit": null,
    "lower_limit": null,
    "feeId": "d4a8f8eb-424a-4603-b7ef-2c705f70a220",
    "payout_method": "bank_account"
}
```

For more information, see the *Get fee by ID* operation in the API Reference.  

### View payout method quotes

With the `cash` and `bank_account` payout method fees set, use the *Create quote collection* operation to retrieve all available quotes for the following quotes:

- The quotes for [all payout methods](#quotes-for-all-payout-methods) that are enabled for a sender amount payment `500` USD.
- The quotes for only the [`cash`](#create-quote-collection-with-cash-payment-method) payout method for a sender amount payment of `500` USD.


#### Quotes for all payout methods

Pass the `enable_quote_per_payout_method` flag, set to true, with your request to return quotes for all payout methods that apply to the quote.

##### Request


```json
POST /v4/quote_collections/
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
	"sending_address": "trans_usd_sf@g.us.ca.san_francisco",
	"receiving_address": "trans_gbp_lon@g.eu.uk.london",
	"amount": 500,
	"currency": "USD",
	"quote_type": "SENDER_AMOUNT",
	"enable_quote_per_payout_method": true
}
```

##### Response (`200`)

The quote collection that RippleNet returns includes quotes for both the `cash` and `bank_account` payout methods, and includes the fees for each.


```json
{
    "quote_collection_id": "67f96691-4b7a-4b18-b1df-f974b873b082",
    "quotes": [
        {
            "quote_id": "d10fd357-f7b7-4ea3-898d-77159a95242b",
            "created_at": "2020-02-01T06:42:06.804Z",
            "expires_at": "2020-02-01T07:42:06.804Z",
            "type": "SENDER_AMOUNT",
            "price_guarantee": "FIRM",
            "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
            "receiver_address": "trans_gbp_lon@g.eu.uk.london",
            "amount": "500",
            "currency_code": "USD",
            "currency_code_filter": null,
            "service_type": null,
            "quote_elements": [
                {
                    "quote_element_id": "dc525444-55f6-400c-8656-4a12a27da800",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "1",
                    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "495.00",
                    "sending_fee": "5.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "USD"
                },
                {
                    "quote_element_id": "92dbd3ac-1241-4c7b-ad4b-6cc719948d0d",
                    "quote_element_type": "EXCHANGE",
                    "quote_element_order": "2",
                    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "381.15",
                    "sending_fee": "0",
                    "receiving_fee": "0",
                    "sending_currency_code": "USD",
                    "receiving_currency_code": "GBP",
                    "fx_rate": {
                        "rate": "0.770000000",
                        "base_currency_code": "USD",
                        "counter_currency_code": "GBP",
                        "type": "buy"
                    },
                    "transfer_currency_code": null
                },
                {
                    "quote_element_id": "684f6164-524e-4596-a048-7c4acbc48298",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "3",
                    "sender_address": "conct_gbp_sf@g.eu.uk.london",
                    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
                    "sending_amount": "381.15",
                    "receiving_amount": "381.15",
                    "sending_fee": "0.00",
                    "receiving_fee": "9.50",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "GBP"
                }
            ],
            "liquidity_warning": null,
            "payment_method": "cash"
        },
        {
            "quote_id": "d6e195e9-44a1-423a-9399-27d6ff9e732d",
            "created_at": "2020-02-01T06:42:06.852Z",
            "expires_at": "2020-02-01T07:42:06.852Z",
            "type": "SENDER_AMOUNT",
            "price_guarantee": "FIRM",
            "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
            "receiver_address": "trans_gbp_lon@g.eu.uk.london",
            "amount": "500",
            "currency_code": "USD",
            "currency_code_filter": null,
            "service_type": null,
            "quote_elements": [
                {
                    "quote_element_id": "0c01266d-f6f5-4da1-bb80-11be602614d3",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "1",
                    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "495.00",
                    "sending_fee": "5.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "USD"
                },
                {
                    "quote_element_id": "c70a9434-116b-435a-96cf-eee46ae4b187",
                    "quote_element_type": "EXCHANGE",
                    "quote_element_order": "2",
                    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "381.15",
                    "sending_fee": "0",
                    "receiving_fee": "0",
                    "sending_currency_code": "USD",
                    "receiving_currency_code": "GBP",
                    "fx_rate": {
                        "rate": "0.770000000",
                        "base_currency_code": "USD",
                        "counter_currency_code": "GBP",
                        "type": "buy"
                    },
                    "transfer_currency_code": null
                },
                {
                    "quote_element_id": "0b92294a-4dd6-4815-ad90-7044be80256b",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "3",
                    "sender_address": "conct_gbp_sf@g.eu.uk.london",
                    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
                    "sending_amount": "381.15",
                    "receiving_amount": "381.15",
                    "sending_fee": "0.00",
                    "receiving_fee": "5.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "GBP"
                }
            ],
            "liquidity_warning": null,
            "payment_method": "bank_account"
        }
    ],
    "quote_errors": []
}
```

#### Create quote collection with `cash` payment method

You can now chose to request quotes for only the `cash` payment method.

Tip
Payout method fees must be set using the `payout_method` field in the *Create fee* operation, but when you request a quote collection, *Create quote collection* accepts values for the `payment_method` field. Notice the difference.

##### Request


```json
POST /v4/quote_collections/
Host: sf-bank.ripplenet.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlFUazFNa1V3TkVGQ04wVTNPRFl4TlRCRE0wRTROVVl6UlVJMk9UUXpNalpHUXpJM1JUbEZRZyJ9.ey

{
	"sending_address": "trans_usd_sf@g.us.ca.san_francisco",
	"receiving_address": "trans_gbp_lon@g.eu.uk.london",
	"amount": 500,
	"currency": "USD",
	"quote_type": "SENDER_AMOUNT",
	"payment_method": "cash"
}
```

##### Response (`200`)


```json
{
    "quote_collection_id": "a8a27b47-c44a-4db6-88a4-5b2abb5f8829",
    "quotes": [
        {
            "quote_id": "df86d1f1-708a-4bf2-9503-fe7b1ea9571c",
            "created_at": "2020-02-01T07:09:25.279Z",
            "expires_at": "2020-02-01T08:09:25.279Z",
            "type": "SENDER_AMOUNT",
            "price_guarantee": "FIRM",
            "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
            "receiver_address": "trans_gbp_lon@g.eu.uk.london",
            "amount": "500",
            "currency_code": "USD",
            "currency_code_filter": null,
            "service_type": null,
            "quote_elements": [
                {
                    "quote_element_id": "d83f0b8f-90a4-479b-80e3-ae0110da337d",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "1",
                    "sender_address": "trans_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "495.00",
                    "sending_fee": "5.00",
                    "receiving_fee": "0.00",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "USD"
                },
                {
                    "quote_element_id": "a616a17b-58a1-475f-9df8-068af34c9847",
                    "quote_element_type": "EXCHANGE",
                    "quote_element_order": "2",
                    "sender_address": "conct_usd_sf@g.us.ca.san_francisco",
                    "receiver_address": "alias_gbp_sf@g.us.ca.san_francisco",
                    "sending_amount": "495.00",
                    "receiving_amount": "381.15",
                    "sending_fee": "0",
                    "receiving_fee": "0",
                    "sending_currency_code": "USD",
                    "receiving_currency_code": "GBP",
                    "fx_rate": {
                        "rate": "0.770000000",
                        "base_currency_code": "USD",
                        "counter_currency_code": "GBP",
                        "type": "buy"
                    },
                    "transfer_currency_code": null
                },
                {
                    "quote_element_id": "172133dd-7436-4bf1-8eb2-502c4f7969bb",
                    "quote_element_type": "TRANSFER",
                    "quote_element_order": "3",
                    "sender_address": "conct_gbp_sf@g.eu.uk.london",
                    "receiver_address": "trans_gbp_lon@g.eu.uk.london",
                    "sending_amount": "381.15",
                    "receiving_amount": "381.15",
                    "sending_fee": "0.00",
                    "receiving_fee": "9.50",
                    "sending_currency_code": null,
                    "receiving_currency_code": null,
                    "fx_rate": null,
                    "transfer_currency_code": "GBP"
                }
            ],
            "liquidity_warning": null,
            "payment_method": "cash"
        }
    ],
    "quote_errors": []
}
```

Notice the payment method is `cash`, and the receiving fee is `9.50` GBP, which is the value you set for the `cash` payout method fee.