Rebates can get funky. I have a client that keeps track of rebates via an Access database and scripting. If an item is sold that has a rebate associated with it, the vendor promotion code is written to a line UDF which can be used for future reporting purposes. In an added twist, since pricing is based on standard cost, the script takes the rebate amount into account when computing the sales price. Wild, but it seems to work for the client.