Design Doc 015: Merchant backoffice Routing ########################################### Summary ======= This document describe the complete list features for orders management and how will be shown. Motivation ========== User will use the backoffice to manage their orders and verify the status of the current and past orders. Listing orders ============== .. image:: ../backoffice-order-list.png :width: 800 Will show the SearchBar component that allow multiple filter. Filter will allow paid, refounded, wired status and date. 4 tabs will be show for a easy access to common filter * paid (default) * refounded * not wired * all (empty filter box) Columns for the order listings will be: * date in 'dd/MM/yyyy HH:mm:ss' format * amount: value and currency * summary Actions per row: * refound: pop up with amount and reason (select box and text) * copy payment id * send receipt (pop up with email) * view details An export button will allow the user to download the result page in CSV format. An infinity scroll is propose instead of a pagination, reasons: * users usually does not jump from one page to anoter using random access * if the user want to search, is going to limit the result using filters * no need to go back after loading more result * it could be triggered by scrollin, with buttons (or both) Create orders ============= Form with 4 fields: * amount * summary * time until refound ( dropdown: 1week, 2weeks, custom ) * description * payment method Success page ------------ Payment successful We've processed your charge for $10.00. actions: * create another payment: go to the create payment page again * view details: show details of the payment (see page) * send receipt: pop up asking for email Order details ============= Status text should be set with a backgournd color for easier recognition when indicated: (paid: green, claimed: light-green, unpaid: grey, refounded: red) * paid: green * claimed: light-green * unpaid: grey * refounded: red Header ------ This is a resume of most important information * big status with color * date * total * deposit_total (if not refounded) * refund_amount (if status is refounded) * deposit_total - refound amount (if refounded partially) * order_status_url * taler_pay_uri (if unpaid) * actions: refound (if not refounded), add note, copy order_status_url Timeline of events ------------------ Event of status changed over time describe vertically. Sorted from newest to oldest On line per status updated, with time and short description. Info taken from: * refund_details * wire_reports * wire_details * contractTerm.extra for custom notes ({date: timestamp, description: string}) Do we have the date-time of when the order goes from these states? * claimed => paid (maybe last wire_details.execution_time with confirmed = true ) * unpaid => claimed (maybe contractTerm.timestamp) Payment details --------------- * summary * amount (deposit_total) * fee * refund_amount (if status is refounded) * net (amount - fee - refound) * current status Contract Terms -------------- collapsed as default disabled if unpaid should show merchant information? * summary * amount * fulfillment_url, if present * max fee * max fire fee * wire_fee_amortization * list of (exchange | auditor) name and url * products table: list of products, one row per product * description * quantity * total price * total tax * sum at the bottom * horizontal timeline of importants dates in the contract * start at contract creation time * show current date * pay_deadline * wire_transfer_deadline * refund_deadline * delivery_date (immediately if null) * auto_refund Exchange responses ------------------ collapsed as default