Overview ======== Receiving happens when an order is delivered to the retailer after being shipped from the vendor. In most cases an invoice will accompany the order. Depending on the retailer, in some cases the purchase order will already exist, e.g. in Rattail or the POS system. Rattail considers the primary concerns for this phase to be: * update inventory counts * (optional) record costs from invoice * (optional) request credits from vendor * (optional) detect/highlight other anomalies Note that recording costs is "optional" mostly because that can be handled in a separate third phase; see :doc:`/features/purchasing/accounting/index`. Vendor credits are not always applicable but often will be. Anomalies refers to anything you want it to, e.g. if a product cost has increased too much. Receiving is done via batch. The user creates a batch via one of the supported workflows: * From Scratch - aka. just start scanning items * From Invoice - upload invoice file, then scan "against" it * From Purchase Order - choose existing PO, then scan against it * From Purchase Order, with Invoice - choose PO *and* upload invoice file, scan against it We say "scan" above, as it is possible to do these tasks with a mobile phone and bluetooth scanner. But paper-based receiving is also a supported method; in this case after paper check-in has been completed, user would "auto-update" all line items to be "received" and then *undo* that for any exceptions (credits). The user then will review the batch, add/modify line items as appropriate. Once satisfied that all data is correct, batch is executed, which typically will update the master purchase record etc.