Thanks for your input BJ, a few points:
1. If you ask for the shipping address first you are no longer doing a full checkout process and might as well just take the PayPal as a payment method option. The point of offering Express Checkout is that for a PayPal user it is 'express', they log in select a shipping address, confirm the payment and they're done. 2. Building some sort of rate table might work for some custom implementations but it does not work for OFBiz, we support a vast number of approaches to shipping estimates such as weight breaks, quantity breaks, price breaks, geo restrictions, a number of external estimates and the potential for more.

I'm not particularly concerned about the 6 second timeout (although I will be testing it) and I think it is fairly unlikely that these default shipping options will ever appear but regardless they need to be taken into account and modeled.

Regards
Scott

On 5/08/2009, at 10:04 PM, BJ Freeman wrote:

I would approach it from the user level and ask for there paypal address
of record first.
i would then build the Shipping estimate tables so they are access fast.
note: this is a change from the manual maintainance of the shipping
estimate tables.
Then i would call paypal.
on the return request would do check if the address changed, if not then
use the previous.
would then check for for the zipcode to see if in same rate table, which
usually it is, then return the previous tables.
my experience in building the shipping estimates for USPS and UPS for a
rate table based on a zipcode is under a few seconds.
using the shipping estimate service should not be more than a few milli
seconds if the data is already there.
Also using this method once a rate table is built it is good for about 6
months.


Scott Gray sent the following on 8/4/2009 3:13 PM:
Hi All,

In order to be able to perform a full checkout with PayPal's Express
Checkout you are required to send 1 or more 'default' shipping
methods/estimates along with the request that initiates the checkout.
It's a bit of a PITA because you don't yet know the shipping address but
are required to provide estimates anyway.

Later in the checkout process PayPal sends you the shipping address as
soon as it is known and requests a new list of shipment
methods/estimates. If and only if that communication fails or times out
(6 seconds) are 'default' shipping methods/estimates used.

So I'm trying to figure out the best way to get these default shipment methods into the data model without affecting anything else, here's some
options so far:
1.  Create a new entity which is a join of PaymentGatewayConfigPayPal
and ShipmentCostEstimate and avoid the shipment estimate services.  I
haven't looked into how I could force a certain shipment cost when
creating the order yet.
2.  Add an estimateWithoutGeo field to ProductStoreShipmentMethod (or
perhaps to ShipmentCostEstimate) and support for it to the shipment
estimate services which allows an estimate to be calculated without
knowing the destination.

Any thoughts? Other suggestions?

Thanks
Scott

HotWax Media
http://www.hotwaxmedia.com

--
BJ Freeman
http://www.businessesnetwork.com/automation
http://bjfreeman.elance.com
http://www.linkedin.com/profile?viewProfile=&key=1237480&locale=en_US&trk=tab_pro
Systems Integrator.


Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to