Important Notice from AspDotNetStorefront
It is with dismay that we report that we have been forced, through the action of hackers, to shut off write-access to this forum. We are keen to leave the wealth of material available to you for research. We have opened a new forum from which our community of users can seek help, support and advice from us and from each other. To post a new question to our community, please visit: http://forums.vortx.com
Results 1 to 7 of 7

Thread: Need help customizing for Level 3 gateway

  1. #1
    gleapman is offline Member
    Join Date
    Apr 2009
    Location
    Golden, CO
    Posts
    45

    Default Need help customizing for Level 3 gateway

    Our client's storefront (version 8.2) does Business-to-Government sales, which qualifies them to do Level 3 payment processing to greatly reduce processing costs. For Level 3 processing, we need to provide to the gateway (3Delta Systems) descriptive line item detail about the products sold such as Product Part Number, Product Description, Quantity, Unit of Measure and Price.

    Before we purchase the source code to set up the site to handle Level 3 processing, we'd appreciate hearing from those who have done gateway modifications with ideas of how best to implement this, and alerts to any possible landmines. We've done a bunch of other site customizations (without source code), so we assume this customization should be fairly straightforward, but would like some confirmation before investing in the source code.

    Thanks.

  2. #2
    AspDotNetStorefront Staff - Scott's Avatar
    AspDotNetStorefront Staff - Scott is offline Administrator
    Join Date
    Mar 2007
    Location
    Ashland, OR
    Posts
    2,390

    Default

    That would definitely be possible, but it's going to take some changes in several spots throughout the gateway/payment handling logic. Gateway classes currently don't have access to that level of order detail (just things like ordertotal, shipping address, etc) so you'd have to make some modifications to pass all of that along to where you want to reference it.

  3. #3
    gleapman is offline Member
    Join Date
    Apr 2009
    Location
    Golden, CO
    Posts
    45

    Default

    Thanks Scott. I assume that means none of the existing gateway classes supports Level III. At least it's good to know in advance that it's possible. Do you know if I'll be modifying just c# code, or if I'll need to play with some XSLT as well?

    Once we get the source code, I may be back on the forum for help with getting all the information to the gateway class.

  4. #4
    webopius is offline Senior Member
    Join Date
    Nov 2008
    Location
    London, UK
    Posts
    440

    Default

    In v8, I'd probably take an existing gateway such as SagePay/Protx (Protx.cs) as a template guide.

    You should be able to get all of your level III info in C# alone. Then you could create a call from the Gateway.cs code to pass in the cart info and use SQL to extract the order line items.

    Adam

  5. #5
    gleapman is offline Member
    Join Date
    Apr 2009
    Location
    Golden, CO
    Posts
    45

    Default

    Adam, that's just the info I need. Thanks. I'm a C# guy. Whenever I need to play with the XSLT it's a struggle since I don't do enough of it to absorb the syntax.

  6. #6
    gleapman is offline Member
    Join Date
    Apr 2009
    Location
    Golden, CO
    Posts
    45

    Default

    Purchased the source code. Is there a reason I cannot easily retrieve the shopping cart information I need from within the gateway class code to get line item data with the following code (which I found in the GoogleCheckout.cs file)?

    Code:
    ThisCustomer = new Customer(CustomerID, true);
    ShoppingCart cart = new ShoppingCart(1, ThisCustomer, CartTypeEnum.ShoppingCart, 0, false);
    And then just loop thru it with

    foreach (CartItem ci in cart.CartItems) { }

  7. #7
    gleapman is offline Member
    Join Date
    Apr 2009
    Location
    Golden, CO
    Posts
    45

    Default

    Never mind. Dug thru the code and figured out I can send the cart to my custom gateway class from Gateway.cs.