26 / 28
Feb 2014

Just an update on what Development found in researching this matter:



For card-based Direct Payments, we're transmitting the Billing Phone as PHONENUM and Shipping Phone as SHIPTOPHONENUM, which is what they document for those fields. It sounds like PayPal just isn't displaying Shipping Phone numbers at all for Direct Payments (at least not where you were looking), though this doesn't explain why you ended up with no phones in QuickBooks for 0VV058426M9160518 which does show both numbers in our log, so that sounds like a bug in your QB integration service.



We did discover a bug in our integration with Express Checkouts going thru PayPal's checkout site; we weren't correctly capturing the Shipping Phone from them, so that number wasn't making it into our Transaction Logs, which would explain why you wound up with a Shipping Phone in your QuickBooks that wasn't present in your EJ log for 4YK2779580957415P.

Paypal sent me a sample string of what they are receiving from e-junkie - see below



this string does not include PHONENUM or SHIPTOPHONENUM



DoDirectPaymentRequest

method "DoDirectPayment"

version "58"

user "XXXXXXXXXXX"

subject "XXXXXXXXXXX"

paymentaction "Sale"

ipaddress "XX.XXX.XXX.XXX"

currencycode "USD"

amt "665"

itemamt "665"

shippingamt "0"

taxamt "0"

custom "XXXXX"

invnum "XXXXXXXXXXXX"

buttonsource "E-JUNKIE_ShoppingCart_DP_US"

notifyurl "https://www.fatfreecartpro.com/ecom/12103/ipnres_cart.php"

name "BK901 Bunk Bed FREE SHIPPING Twin over Twin Stairway Bunk Bed + 2 Extra Drawers\, Honey"

number "BK901-HONEY-DRAWERS"

qty "1"

desc "BK901 Bunk Bed FREE SHIPPING Twin over Twin Stairway Bunk Bed + 2 Extra Drawers\, Honey"

creditcardtype "MasterCard"

expdate XXXXXX

firstname "XXXX"

city "XXXXX"

state "XX"

zip "XXXXX"

countrycode "XX"

shiptoname "XXXX"

shiptocity "XX"

shiptostate "XX"

shiptozip "XXXXX"

shiptocountry "XX"

Hi Denis,



Whatever stage they're getting that data from, it's after the stage where they're losing the values we're sending them. I'm the one that initially confirmed our code does in fact send the values, and I just turned on debug capture for our submissions for your account, and they are there. I'll send you an email through our helpdesk here shortly with a couple of the example captures showing that; maybe we can get in on your discussion with PayPal MTS and help them figure this out?

Thanks



can you please send me that email so I can send it to paypal - maybe you can also speak to your paypal contact?

It appears Development already sent that to your bunkbedking.com email on Sunday evening; I've forwarded a copy of that to your bedzking.com email just now.

26 days later

I've referred this to Development, so the matter's in their hands now.

18 days later

To continue



We have the phone number as mandatory in our settings



But the billing phone number is not mandatory (no red asterisk)



But if a customer leaves the billing phone number blank and then enters a shipping phone number - they get the message " Please enter a valid telephone number"



Very confusing for the customer - we only ask them for the shipping phone number, but then when they only provide a shipping phone number, they cannot proceed with the checkout.



Suggest you give us the option to make the billing phone number mandatory (red asterisk) - or change your code so if the billing number is blank and a shipping phone number is entered, the charge will process



Also, any news on :



can you change the request that is made to paypal and have them remove the PHONENUM parameter?



Can you try replacing the "PHONENUM" variable with "SHIPTOPHONENUM". I believe this is the reason it's not returned as it's not a valid parameter for the "DoDirectPayment".



You can find a list of parameters here:

https://developer.paypal.com/webapps/developer/docs/classic/api/ merchant/DoDirectPaymentAPI_Operation_NVP/





POSTED ON: January 14, 2014 @ 06:32 GMT -7

I've just now reminded Development again that your issue remains unresolved.

will development also address:



We have the phone number as mandatory in our settings



But the billing phone number is not mandatory (no red asterisk)



But if a customer leaves the billing phone number blank and then enters a shipping phone number - they get the message " Please enter a valid telephone number"



Very confusing for the customer - we only ask them for the shipping phone number, but then when they only provide a shipping phone number, they cannot proceed with the checkout.



Suggest you give us the option to make the billing phone number mandatory (red asterisk) - or change your code so if the billing number is blank and a shipping phone number is entered, the charge will process

I've referred Development to this forum thread, so they will be aware of all the points you have raised here.

Development has now removed the PHONENUM variable entirely from what we transmit to PayPal Pro for card-based Direct Payment checkouts, so now we will only transmit SHIPTOPHONENUM, which is the sole phone number variable they currently document for the DoDirectPayment API.



Curiously, the old PHONENUM wasn't throwing an error (as would happen for an entirely unsupported variable), and formally deprecated variables would be documented as such, and at least mentioned in Release Notes, rather than just quietly disappearing from the docs. It seems they adopted the SHIPTOPHONENUM variable name to make it clearer which type of phone it refers to, yet without removing support for PHONENUM, presumably to grandfather older integrations that were still using that. I have to wonder if these may actually be interchangeable names for the same, single variable, so the fact that we were passing both (even with identical values) may have been confusing their system somehow.



Regarding the required-phone validation issue, Development thought they'd sorted that already, but then they realized our form validation scripting differs among some of the checkout pages we manage, so they should now have it sorted for our PayPal Pro Direct Payment checkout page. Let us know if you see any remaining issues with that.

OK



just tested the phone validation - still not working correctly.



If I try to pay with a credit card, the billing phone number is not a required field (no red asterisk)



So I leave it blank



then when I check shipping same as billing, no phone number appears in the shipping phone number and it will not allow me to enter a phone number - but it will allow me to process the credit card transaction with no phone number in either the billing or shipping field - my preference is set to must have a phone number, but now this can be bypassed



The only way a customer can enter a phone number in the shipping field in this scenario is to enter one in the billing phone field and then check copy billing to shipping



very confusing

Thanks for bringing that to our attention; I'll refer this back to Development.

Development has found and fixed the issue, so when phone is required, Billing phone should now become required if "shipping same as billing" is checked. I notice the indicator asterisk doesn't move from the Shipping to Billing phone in this case, so I'll ask Development if it's feasible to make that happen as well.

Development has found and fixed the issue, so when phone is required, Billing phone should now become required if "shipping same as billing" is checked. I notice the indicator asterisk doesn't move from the Shipping to Billing phone in this case, so I'll ask Development if it's feasible to make that happen as well.

OK



Just checked and it seems to be working - thanks!



Still not getting the phone numbers from paypal - I will check with them