# Ratepay API Payment-Change Logic **Manage customer requirements and customer complaints with ease!** The gateway `PAYMENT_CHANGE` is used to manage - shopping cart modifications - (partial) cancellations - (partial) returns - goodwill refunds Learn how to use the `` element correctly. On the next pages we are going to modify **one single transaction** multiple times. ## Purchase Order Every transaction starts with a purchase. ```xml PAYMENT_REQUEST ``` ### Assumption Let's imagine a shopper bought three items. One item has a discount. Then there are some shipping fees and our customer redeemed a voucher. The shopping basket amount is 305 Euros in total. Try to reconstruct the total basket value. **XML request** ```xml PAYMENT_REQUEST.xml Bed Linen Towel Scarf Voucher UPS Standard ``` **Result** | | # | Price | Cart | | --- | --- | --- | --- | | `` | A | 90 € | 2 | | `` | B | 40 € | 2 | | `` | D | 25 € | 2 | | `` | | -10 € | -10 € | | `` | | 5 € | 5 € |