Guillaume Posted June 10, 2021 Share Posted June 10, 2021 Hi, I believe there is no solution for this problem, but I am still raising it, just in case there is actually one, or in case Cubecart is interested in developping it. After discussing with the payment provider of the gateways I developped (Systempay), for their fraud assessment policy, they asked me to input: The shipping provider (that's easy, I get it from basket['shipping']['product'] But they also want a couple of structured data, and I wonder whether Cubecart offers a standard for that: Shipping type (which can be "delivery at address", "delivery at pick-up point", "claim in store", etc.) Shipping speed (which is PRIORITY, EXPRESS or STANDARD, depending on whether the delivery is the same day, within 2 working days, or longer) Shipping delay (which in the case the shipping speed is PRIORITY) defines how fast the delivery is (immediate, less than one hour, more than one hour) I absolutely understand that, to enable such a mapping, I would need the shipping modules to fill in that information (if it exists). But my immediate question is rather whether Cubecart has any solution, should the shipping modules wish to support the above? Cheers, Guillaume Link to comment Share on other sites More sharing options...
bsmither Posted June 10, 2021 Share Posted June 10, 2021 I don't recall any kind of standard structured data for a solution to these shipping details. Shipping Type: there is a store setting on the Features tab, Misc section, "Allow delivery to non-invoice address". This would be available at: $GLOBALS['config']->get('config','basket_allow_non_invoice_address'); Taking into account this setting, your structured data item could reflect where the item is allowed to go. Comparing the billing address against the delivery address would indicate that the customer chose to deliver to a possible third-party location. Then there is whether you allow for in-store pick-up, etc. Shipping Speed: That data item would depend on the shipping module used. If those words are contained in the basket['shipping']['product'], you can use strpos() to try to find them. Shipping Delay: Your shipper's Rate Request API might send back a lot of information. For example, (last I looked) the USPS sent back estimated shipping times for the myriad services it provides. Link to comment Share on other sites More sharing options...
Guillaume Posted June 14, 2021 Author Share Posted June 14, 2021 I could do what you recommend for shipping_type indeed. For shipping_speed and shipping_delay, I belive I do not really want to have anything specific to a given shipping company, in the payment gateway. I believe an interesting improvement in Cubecart would be either: to allow, for a given payment gateway a setting (say: shipping_speed) which could be instantiated on each and every shipping product or to allow defining such standard settings (shipping_speed, shipping_delay, etc. but not sure everyone needs the same as I do, maybe expected_delivery_datetime would sound better) so that the shipping module could fill it in and the payment gateway module could read it Link to comment Share on other sites More sharing options...
bsmither Posted June 14, 2021 Share Posted June 14, 2021 "I do not really want to have anything specific to a given shipping company, in the payment gateway." Ah! Of course. If we can't determine with any accuracy what any given shipper can promise for shipping delivery characteristics, maybe we can state generally, on a per-product basis, that "This product could take 3-5 business days to arrive." where '3-5' is settable per product. The gateway module can iterate across the basket contents and use the largest shipping time found. Link to comment Share on other sites More sharing options...
Guillaume Posted June 14, 2021 Author Share Posted June 14, 2021 I'd very happily do this. I could even use the selected shipping product, without the need to iterate. But would we have this "3" or "5" value in a parameter? Or are you saying that this would be a prospective development for Cubecart? Link to comment Share on other sites More sharing options...
bsmither Posted June 14, 2021 Share Posted June 14, 2021 I have a plugin "Additional Product Fields". So, this would be a specific solution for you as opposed to a general incorporation of this feature in CubeCart's core code. The added product fields can be whatever you want. One field for the minimum and a second for the maximum, or a single field for a specifically formatted 'range'. Link to comment Share on other sites More sharing options...
Guillaume Posted June 23, 2021 Author Share Posted June 23, 2021 Thanks. That would make my plugin somewhat dependant on the plugin "Additional Product Fields", but this is an interesting idea, I'll give it a try! Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.