Looking in the database, erp.orderDtl has a column LineType which can be PART or CONTRACT, but for the life of me I can’t see how to add a line item for a contract to a sales order.
I am wanting to put our service contract as lines on sales orders and bill them that way, as opposed to just doing contract billing… if its possible.
Why?
provide a natural place to store the customer’s PO
when customers buy a contract we allow them to pay for it using their “Loyalty Credits” (a customization we have in place). We have a LOYALTY CREDIT part that we put on a line, and our BPMs deduct its price from the sales order price and also from our “Loyalty_Balance_c” UD field on the customer (simplistically speaking, there’s probably a bit more to them than that)
We would need to reimplement the BPMs on service contract entry on service contract entry otherwise, which is our fallback position.
Separate thought: If we can add the contract as a sale order line, I assume we leave “ready to Invoice” unchecked on the sales orders so the Sales order handles the invoicing and we don’t get a double up?
The service contract offering is notoriously weak in Epicor, which is why we are writing our own. In classic Epicor, there was a ‘New Contract Line’ option is Order Entry. is that not available in Kinetic ?
@Hally I wasn’t directly involved in the implementation, but I believe we have a LOYALTYCREDIT part we can put on sales orders at whatever value we decide, and a BPM fires to adjust dbo.Customer.LoyaltyBalance_c (we also track loyalty spent and earnt as well as the balance). It also adds the LOYALTY CREDIT part line at $0 price with a discount thus reducing the overall order price. Certain classes of part we sell earn loyalty credits also via BPMs, but there’s no BPMs on service contracts at the moment.
@AndyGHA I also found the New Contract Line menu option but not having much luck with it; I enter the contract number, (pink as its a test environment )
But I need to ship the sales order to invoice it, and I then get stuck:
I don’t understand what its on about, line and release both have order qty 1: ** UPDATE this error message is coming from one of our own BPMs, will look at with our BPM developer **
We were able to successfully put the contract on a sales order, which allowed us to add our loyalty discount part, and invoice it successfully.
Key points:
Don’t mark contract as ready to invoice , so it doesn’t get picked up by contract billing when invoicing.
After sales order is invoiced, Contract state changes to invoiced. (Like you would normally expect, but somehow with Epicor it came as a pleasant surprise!)
I think we will mix direct contract billing with contract billing via sales order. The latter adds some extra steps but at least provides a natural home to record the customer PO and a means to do our discounting when needed.
Anyone else doing contract billing have any other guidance as to pros and cons of one approach vs the other?