# Quotes Before a payment can be completed, all parties involved must agree to the terms of the payment. Those terms can include foreign exchange rates (if the payment involves currency exchange) and fees. Any of the parties involved in the payment, including intermediate instances, can set these terms. It’s important that the sender and **receiver** know what terms affect the payment, and what amount will finally make it to the **receiver** and **beneficiary** after all fees and exchange rates are applied. Payment *quotes* allow the sender to review terms before requesting to send a payment. The following sequence diagram shows how payment quotes are processed within RippleNet. ![Quote process](/assets/quote-process.913a77dc73e52dbeb70c98c65f4d55985a038b5b84e631233decda674f2b5a69.ac9c5631.svg) 1. A *payment quote* begins when a sender creates a *payment quote request*. The quote request defines important payment parameters such as currency, amount, and **receiver**. It may also define additional parameters that include sending and receiving RippleNet accounts and payout methods to the **beneficiary** such as a cash payout or book transfer. 2. Once the **sender** defines a quote request, they submit it to RippleNet through their RippleNet instance. 3. RippleNet gets each **intermediary** institution’s exchange rate (if applicable) and possible fees. RippleNet does not ask each institution for a quote, it simply checks the institutions’ RippleNet instances. Each instance posts its institution’s standard exchange rates and fees. 4. RippleNet retrieves the **receiver**’s posted exchange rates and fees from the **receiver**’s instance. 5. RippleNet applies retrieved exchange rates and fees to the payment defined by the quote request to create one or more payment quotes. 6. RippleNet returns the payment quotes to the **sender**. Each quote spells out the parties in the payment chain, what exchange rates and fees apply at each step, and what payment amounts result after exchange rates are applied and fees subtracted. 7. If the **sender** agrees with the payment terms in a quote, they accept the quote and send payment details. 8. RippleNet creates a payment request based on the accepted quote. 9. RippleNet sends the payment request to the intermediate instance(s). 10. RippleNet sends the payment request to the **receiver** for locking consideration. If the **receiver** declines to lock the payment, they effectively reject the payment request. There are many possible outcomes once a payment request is presented to involved parties. [Payment States](/products/payments-odl/introduction/concepts/payment-states) describes possible steps.