cancel
Showing results for 
Search instead for 
Did you mean: 

CreatePaymentProfile CC vs UpdatePaymentProfile CC billTo requirements

I'm finding I can create a CC payment profile without billTo information, but then if I try to update that same profile and again do not include billTo I get "There is one or more missing or invalid required fields." The documentation appears to list this field as not required in both create and update, I'm looking for clarification on this. 

 

Thanks in advance

bobbydoogle
Contributor
1 ACCEPTED SOLUTION

Accepted Solutions

@bobbydoogle,

 

Under liveMode validation, same requirements applies on all requests (e.g. CreatePaymentProfile, UpdatePaymentProfile), I assume validationMode is set to testMode in your createCustomerPaymentProfileRequest, while it is set to liveMode in your updateCustomerPaymentProfileRequest.

 

validationMode can either be set to testMode or liveMode:

  1. testMode: this validation perform a Luhn mod-10 check on the card number, no authorization request is sent to the processor.
  2. liveMode: this validation submit a $0 or $0.01 authorization request to the processor to confirm the card number belongs to an active credit or debit account. billTo.address & billTo.zip are required for cards/processor that support $0 authorization.

 

I hope this helps.

 

Mansour

View solution in original post

6 REPLIES 6

Hello

If you set validationMode to liveMode, address is required for some cards/processors.

liveMode: A $0 or $0.01 (depending on card type and processor) live transaction is processed against the card and then immediately voided. Address is required for cards that support $0 authorizations and will be validated along with card code if submitted.

Mansour
MansourH
Moderator Moderator
Moderator

This largely answers my question, but why can I create and not update with the same info / cards? These are btw the test visa cards from Authorize.net. What is best practice, should I just require address info? How much of this address info is required specifically, I'm not sure where this is documented or how to test it quickly.

Whats confusing me is I updated from v1 to v2 api. Previously I did not require this info to update credit card payment information. Now it appears I must include a bill to, and the entire bill to object first/last/address/city/stawte/zip/country/phone number. Otherwise its saying missing info.

@bobbydoogle,

 

Under liveMode validation, same requirements applies on all requests (e.g. CreatePaymentProfile, UpdatePaymentProfile), I assume validationMode is set to testMode in your createCustomerPaymentProfileRequest, while it is set to liveMode in your updateCustomerPaymentProfileRequest.

 

validationMode can either be set to testMode or liveMode:

  1. testMode: this validation perform a Luhn mod-10 check on the card number, no authorization request is sent to the processor.
  2. liveMode: this validation submit a $0 or $0.01 authorization request to the processor to confirm the card number belongs to an active credit or debit account. billTo.address & billTo.zip are required for cards/processor that support $0 authorization.

 

I hope this helps.

 

Mansour

Great, this is helpful, as you mentioned I'm in testMode on create, and liveMode on update, I can now fix my problem. One small question that I couldn't find in the docs, is the benefit / reason to do liveMode lower fees for some cards / processing? Otherwise I wouldn't see the benefit of providing address / zip information.

 

Thank you

The main benefit of using liveMode validation is to only store customer payment profiles that were validated (i.e. only store valid payment card details), this is achieved by submitting the smallest supported amount for authorization ($0 or $0.01) and only store the data if and only if the request has been authorized by the cardholder issuing bank.

 

If you wish to only use testMode validation at profile creation/update, you can always at a later date validate the details of a given customer payment profile if needs be, by calling validateCustomerPaymentProfileRequest.

 

Mansour