cancel
Showing results for 
Search instead for 
Did you mean: 

How to Include Address on Accept.js Hosted Form?

By Accept.js Hosted Form, I'm referring to the one described in: https://developer.authorize.net/api/reference/features/acceptjs.html#Using_the_Hosted_Payment_Inform...

 

We use the Hosted Form version in order to conform to PCI-DSS SAQ A compliance. Currently such form accepts the following fields:

 

  • Card Number
  • Exp. Date
  • Card Code
  • First Name
  • Last Name
  • Zip

 

Our customers have requested for Address to be included in order to reduce fraud. Is there a way to customize the Hosted Form to accept other Address fields in addition to Zip Code? If so how do we go about doing that?

waihon55
Contributor
12 REPLIES 12

Hi @waihon55

 

You can either use Accept.js with your custom form or  use the Accepted Hosted form https://developer.authorize.net/api/reference/features/accept_hosted.html

 

for accepting address also . 

 

Thanks





Send feedback at developer_feedback@authorize.net
Anurag
Moderator Moderator
Moderator

Hi Anurag,

 

My client said they would accept a hosted Accept.js form that is currently without a street address but with a zip code provided that the zip code entered by a customer will be validated before an authorization of payment is granted.

 

Could you please confirm the above?

 

 

Regards,

Waihon

Hi @waihon55

 

You need to make sure the merchant has enabled the AVS setting . 

 

https://developer.authorize.net/api/reference/features/payment_transactions.html#Basic_Fraud_Setting...

 

The Address Verification Service (AVS) is a system designed by bankcard processors to help detect suspicious credit card transaction activity. AVS matches billing address information provided by the cardholder with the cardholder's billing address on file at the credit card issuing bank.

The processing network then sends an AVS response code indicating the results of the match to the payment gateway.

The AVS response code can be found in the payment gateway transaction response as well as on the Transaction Detail page in the Merchant Interface.

Based on the merchant's AVS rejection settings, the transaction is accepted or rejected. Rejected transactions display a transaction status of Declined (AVS Mismatch) on the Transaction Detail page.

It is important to note that the merchant cannot retrieve address information from the issuing bank; the bank provides only match or no-match information.

 

 

 To manage AVS rejection settings, log in to the Merchant Interface and choose Account > Settings > Security Settings > Basic Fraud Settings > AVS.





Send feedback at developer_feedback@authorize.net

Hi Anurag,

 

We've updated the AVS setting of our test account as follows:

 

* Decline: Response codes B, E, R, G, U, S, N, A

* Allow: Response codes Z, W, Y (Zip Code Matched regardless of Street Address and Extended Zip)

 

 

We've tested the above AVS setting using Accept.js hosted form by entering relevant zip code from the testing guide (https://developer.authorize.net/hello_world/testing_guide/).

 

We entered test zip code 46205 and 46201 that represent "Zip Code Not Matched" but the transactions still went through without any error. 

 

We suspect the Zip Code that was entered on the Accept.js hosted form might not be passed to Authorize.net backend:

* Invalid zip codes (as described aboved) didn't result in declined transactions

* Acorrding to Authorize.net CIM page, payment profiles created have blank zip code even though zip code was entered on Accept.js hosted form.

 

Since the Zip Code field is available on the Accept.js hosted form, we'd expect that it will be passed to Authorize.net backend and sent to AVS for validation.

 

Could you check and confirm the above observation, and whether it's by design, a bug, or a feature that would be built (and if so when we could expect that to happen)?

 

 

 

Regards,

Waihon

Hi 

 

I just tried the same zipcode on our Sample Accept Hosted and got an error "The transaction has been declined because of an AVS mismatch. The address provided does not match billing address of cardholder."

 

I will suggest you to use the try it tab to test the createTransaction APIs with your sandbox credentials .

 

https://developer.authorize.net/api/reference/index.html#payment-transactions-charge-a-credit-card

 

 

Also do check the sample app https://github.com/AuthorizeNet/accept-sample-app 

 

Thanks

Anurag





Send feedback at developer_feedback@authorize.net

Hi Anurag,

 

Thank you for your quick response!

 

As mentioned earlier, my web app integrates with Accept.js hosted form (https://developer.authorize.net/api/reference/features/acceptjs.html#Using_the_Hosted_Payment_Inform...).

 

I believe that is technically different from Accept Hosted that you mentioned (https://developer.authorize.net/api/reference/features/accept_hosted.html).

 

Could you please check and confirm if the Accept.js hosted form exhibits the same behavior as Accept Hosted form?

 

 

 

Regards,

Waihon

Hi @waihon55

 

Looks like you are using Accept.js UI which will provide you the one time payment nonce . 

 

When you are calling the createTransaction API with that payment nonce 

 

https://developer.authorize.net/api/reference/features/acceptjs.html#Using_the_Payment_Nonce_in_an_A...

 

You are passing the zip code in the billTo in the request?

 

Can you provide the request/response you getting for createTransaction ?

 

Thanks





Send feedback at developer_feedback@authorize.net

Hi Anurag,

 

Previously I thought that the Accept.js hosted payment information form would handle AVS similar to Accept Hosted as per the second screenshot below Error Handling section (

https://developer.authorize.net/api/reference/features/accept_hosted.html#Error_Handling)

 

Could you confirm whether Accept.js hosted form has such handling or otherwise?

 

Though the zip code is available on the Accept.js hosted payment information form, it's somehow not part of its response as per the Handling the Response section of the documentation (https://developer.authorize.net/api/reference/features/acceptjs.html#Handling_the_Response).

 

Therefore I currently have no way to pass a zip code (that was entered on Accept.js hosted form) to the billTo in the request.

 

Could you check and confirm how to retrieve the zip code from the response returned by Accept.js hosted form?

 

 

 

Regards,

Waihon

Hi @waihon55

 

The Accept Token which you get from the Accept.js UI also has the zip code in it . 

 

If you pass the token  in the createTransaction and dont put anything in the billTo , we internally pass the zipCode in the billTo fields so if zip code verficiation fail , the payment should fail . 

 

Hope it helps !

 

Thanks





Send feedback at developer_feedback@authorize.net