Adds CCV code support for Authorize.net CIM transactions #159

Closed
wants to merge 11 commits into
from

Conversation

Projects
None yet
4 participants
Contributor

tgarnett commented Jul 18, 2011

Adds CCV code support for Authorize.net CIM transactions. Since CCV codes are not stored as part of the payment profile they must be supplied with any transaction (including validateCustomerPaymentProfile) that wishes to use CCV.

Adds some additional fields to the direct response parsing for Authorize.net CIM gateway.

Updates the Authorize.net CIM tests to use prior_auth_capture instead of capture_only in the auth then capture unit test. This is a better/more correct example as capture only is not supposed to be used with auth_only. A stripped down version of the capture_only test is left behind (with a usage warning) to provide some assurances on that method. I did not update any of the remote tests as I don't have a suitable test account to use at the moment to check them. However, we are using this on our production server which see a fair bit of activity, so they would be expected to work.

Adds CCV code support for Authorize.net CIM transactions. Since CCV c…
…odes are not stored as part of the payment profile they must be supplied with any transaction (including validateCustomerPaymentProfile) that wishes to use CCV.

Adds some additional fields to the direct response parsing for Authorize.net CIM gateway.

Updates the Authorize.net CIM tests to use prior_auth_capture instead of capture_only in the auth then capture unit test. This is a better/more correct example as capture only is not supposed to be used with auth_only.  Rather it is intended to be used with transations that were authorized through some other system or required voice authorization.
@@ -78,6 +78,8 @@ def test_successful_profile_create_get_update_and_delete
assert_equal 'new email address', response.params['profile']['email']
end
+ # FIXME - prior_auth_capture should be used to complete a auth_only request
@ntalbott

ntalbott Feb 27, 2012

Contributor

Is this a FIXME that this commit should address?

@tgarnett

tgarnett Feb 28, 2012

Contributor

More of a warning that this particular existing test is using an incorrect flow that shouldn't be emulated in a production environment as it will leak unclaimed authorizations (which was a problem on our site for a while). However I was hesitant to change or remove this test without being able to run it easily. The test is using :capture_only when it should be using :prior_auth_capture

@ntalbott

ntalbott Feb 28, 2012

Contributor

Just to clarify: you're saying this test should be calling a different method, but since you're not set up to run the remote tests you're not comfortable making the change? If so, fair enough; I guess we need someone who's set up to run remote tests against the CIM.

@tgarnett

tgarnett Feb 28, 2012

Contributor

Exactly

Contributor

ntalbott commented Feb 27, 2012

If you can address the above comments and get the applying cleanly against master I'd be happy to merge.

jcoleman and others added some commits Jan 25, 2012

Don't fail expiration date parsing on leading zeros.
Passing in an expiration month of say "09" no longer raises the following exception: ArgumentError: invalid value for Integer(): "09".
Merge pull request #255 from jcoleman/patch-1
Payflow: Handle dates with leading zeros.
Merge pull request #250 from exviva/add_more_options_to_paypal_express
PayPal Express: Add support for BrandName and Custom fields.
Merge pull request #281 from exviva/note_about_changelog_policy_in_pu…
…ll_requests

Add a note on not touching CHANGELOG when contributing.
Adds CCV code support for Authorize.net CIM transactions. Since CCV c…
…odes are not stored as part of the payment profile they must be supplied with any transaction (including validateCustomerPaymentProfile) that wishes to use CCV.

Adds some additional fields to the direct response parsing for Authorize.net CIM gateway.

Updates the Authorize.net CIM tests to use prior_auth_capture instead of capture_only in the auth then capture unit test. This is a better/more correct example as capture only is not supposed to be used with auth_only.  Rather it is intended to be used with transations that were authorized through some other system or required voice authorization.
Contributor

tgarnett commented Feb 28, 2012

Sent a new pull request that should apply cleanly.

It also removes the code that was adding in new response fields (looks like someone else already did it since I sent the original pull request) and updates the comments.

@tgarnett tgarnett closed this Feb 28, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment