Feature Request - Purchase Order Number entry for any payment type

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
11 years ago
A PO number should not be a "Payment Method".  There are many cases in real world where a company chooses to pay with a credit card, check, etc. and still needs to enter a PO number.  PO numbers are used internally by businesses to track their own purchases - they really are not "payment methods".  The PO Number entry can be a separate text box on the Payment Selection page - e.g.:
        
http://img208.imageshack.us/img208/4623/purchaseorderforanypaym.png

http://img10.imageshack.us/img10/4623/purchaseorderforanypaym.png


I've created a "Net Terms" payment method which can optionally present a message and "accept" checkbox, or (as per previous feature request) skip payment info page altogether.

UPDATE:
It would also simplify 'check for PO number' - no need to check payment method - the PO number is a property of the order

\src\Presentation\Nop.Web\Controllers\OrderController.cs
    //-+
      ////purchase order number (we have to find a better to inject this information because it's related to a certain plugin)
      //if (paymentMethod != null && paymentMethod.PluginDescriptor.SystemName.Equals("Payments.PurchaseOrder", StringComparison.InvariantCultureIgnoreCase))
    if (!String.IsNullOrEmpty(order.PurchaseOrderNumber))              
    {
        model.DisplayPurchaseOrderNumber = true;
        model.PurchaseOrderNumber = order.PurchaseOrderNumber;
    }
    
\src\Presentation\Nop.Web\Administration\Controllers\OrderController.cs    
    //-+
      ////purchase order number (we have to find a better to inject this information because it's related to a certain plugin)
    var pm = _paymentService.LoadPaymentMethodBySystemName(order.PaymentMethodSystemName);
      //if (pm != null && pm.PluginDescriptor.SystemName.Equals("Payments.PurchaseOrder", StringComparison.InvariantCultureIgnoreCase))
    //purchase order number
    if (!String.IsNullOrEmpty(order.PurchaseOrderNumber))
    {
        model.DisplayPurchaseOrderNumber = true;
        model.PurchaseOrderNumber = order.PurchaseOrderNumber;
    }

    

And, I should mention that a PO number property needs to be added here to persist between pages
  _workContext.CurrentCustomer.PONumber;
11 years ago
Hi Dennis,

Thanks for suggestion. I've just created a work item
10 years ago
Is there any update to this option happening?? I have the same problem and it seems that it should just be a standard "option" for a customer to fill in a PO number without having to choose that as a Payment Option. Having a PO number is not strictly a means of payment, especially when dealing with B2B service providers and customers.
10 years ago
Hi,
I know your problem regarding to PO.This issue occured with many peoples which we are dealing with them. Mostly these issues are easily sorted by our expertise and they will give you the best solution regarding this. Contact us through- [email protected].
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.