forked from activemerchant/active_merchant
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sync with orgiginal gem #7
Open
tarek-elsayyad
wants to merge
1,762
commits into
master
Choose a base branch
from
sync-with-orgiginal-gem
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add additional error detail when paymentNetworkResponseErrorMessage might be more useful. CE-482 Unit: 33 tests, 131 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 35 tests, 77 assertions, 6 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 82.8571% passed
CE-769 Unit: 22 tests, 99 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 24 tests, 67 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Add additional error detail when paymentNetworkResponseErrorMessage might be more useful. CE-482 Unit: 33 tests, 131 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 35 tests, 77 assertions, 6 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 82.8571% passed Closes PR activemerchant#3717
XML parse error observed if this field comes after partnerSolutionId. Switch order and add tests. Also check merchant_descriptor in case that could cause issues. Unit: 96 tests, 467 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 95 tests, 489 assertions, 5 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 94.7368% passed (all known, unrelated failures)
CE-710 Unit: 94 tests, 557 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 36 tests, 185 assertions, 4 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 88.8889% passed Unrelated, previously failing remote tests: - test_successful_american_express_authorization_with_3ds - test_successful_american_express_purchase_with_3ds - test_successful_master_authorization_with_3ds - test_successful_master_purchase_with_3ds Rubocop lint fixes. Add add_card_indicators to the authorize action. Unit:: 95 tests, 561 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Update credit_card number for visa 22 tests were failing on master with previous card_number, change to visa card number fixed most of those failures with the exception of 3ds tests that are still failing (total of 4 failed tests) Unit: 95 tests, 561 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 36 tests, 185 assertions, 4 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 88.8889% passed
PC3Dtllinetot changed to PC3DtlLineTot CE-762 Unit: 93 tests, 553 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 35 tests, 181 assertions, 5 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 85.7143% passed Failed tests appear to be new and unrelated to changes made in Active Merchant Removing redundant conditional
Currently we are sending ‘X-Device-Session-Id’ in the header. The correct header we should be sending is 'X-meli-session-id'. Unit tests: 38 tests, 175 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed 32 tests, 87 assertions, 5 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 84.375% passed The five failing tests are also failing on Master: test_partial_capture failing with "Invalid parameters for payment_method API" test_successful_authorize_and_capture_with_cabal failing with "Deferred capture not supported" test_successful_purchase_with_processing_mode_gateway failing with "Unauthorized use of processing mode gateway" test_successful_purchase_with_taxes_and_net_amount failing with "The name of the following parameters is wrong : taxes" test_successful_void_with_cabal failing with "Deferred capture not supported" Did not update the changelog since it is a fix.
Fixes the RuboCop to-do for [Style/TrailingCommaInHashLiteral](https://docs.rubocop.org/rubocop/0.85/cops_style.html#styletrailingcommainhashliteral). All unit tests: 4534 tests, 72191 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Fixes the RuboCop to-do for [Naming/PredicateName](https://docs.rubocop.org/rubocop/0.85/cops_naming.html#namingpredicatename). All unit tests: 4543 tests, 72248 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Fixes the RuboCop to-do for [Style/Attr](https://docs.rubocop.org/rubocop/0.85/cops_style.html#styleattr). All unit tests: 4544 tests, 72251 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
For rev share flagging purposes, Payflow requires the corresponding code to be included as ExtData field BUTTONSOURCE, similar to Paypal. Example structure as follows, confirmed by paypal/payflow support (https://stackoverflow.com/a/19414626): ``` <Sale> <PayData> (Invoice) (Tender) </PayData> (ExtData)* </Sale> ``` This PR updates sale and auth requests to set this field appropriately when application_id is provided Unit: 49 tests, 243 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 38 tests, 156 assertions, 12 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 68.4211% passed (unrelated failures preexist on master)
Currently, if you try to issue a refund using a capture as your reference transaction, you will get an error. This is because the authorization value here only refers to the capture, with no connection to the auth. In other adapters, we solve for this by building up an authorization value that includes references to the current transaction as well as reference transactions (and potentially other data). This allows us to parse this field to return the correct reference transaction for supplemental actions. This PR updates HPS to build an authorization value including the authorize transaction id for captures. It also adds in logic to pluck off the appropriate value when issuing a refund on a capture txn. Unit: 54 tests, 267 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 52 tests, 143 assertions, 3 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 94.2308% passed (preexisting failures also on master)
This fixes a bug caused by submitting an empty string for the state field (which is submitted as 'region' to Quickbooks). While `nil` values for this field are fine because the field is then simply omitted from the request sent to Quickbooks, sending an empty string results in the error message `card.address.region is invalid`. ECS-1355 Unit: 22 tests, 118 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 18 tests, 44 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed All unit tests: 4544 tests, 72251 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Fully support `transaction-meta-data` field. See documentation on [meta-data](https://developers.bluesnap.com/v8976-XML/docs/meta-data) field. CE-697 Unit: 35 tests, 199 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 45 tests, 158 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Add level 3 fields to capture transactions. Revert a previous 'fix' where PC3DtlLineTot was incorrectly assumed to be the correct tag (should be `PC3Dtllinetot`). CE-930 Unit: 95 tests, 561 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 37 tests, 192 assertions, 2 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 94.5946% passed
Credorax now requires the following parameters when issuing CFT payouts: * j5 - Fund recipient's first name * j13 - Fund recipient's surname Updates the referral_cft action to set these two fields, and checks for their presence in the tests. Remote: 41 tests, 152 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit: 69 tests, 329 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Confirm that card_indicators is being passed to the gateway. I confirm that card_indicators is being passed with options. See options hash below. 3DS tests on orbital are still failing, as they have been on master. {:order_id=>"bc8b1fd1ca40f4d8ba6e072cfa11f38f", :address=>{:name=>"Jim Smith", :address1=>"456 My Street", :address2=>"Apt 1", :company=>"Widgets Inc", :city=>"Ottawa", :state=>"ON", :zip=>"K1C2N6", :country=>"CA", :phone=>"(555)555-5555", :fax=>"(555)555-6666"}, :merchant_id=>"merchant1234", :soft_descriptors=>{:merchant_name=>"Merch", :product_description=>"Description", :merchant_email=>"email@example"}, :card_indicators=>"y"} Orbital: correct ordering for CardIndicators Unit: 95 tests, 561 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 36 tests, 189 assertions, 2 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 94.4444% passed Unrelated, previously failing remote tests: - test_successful_american_express_authorization_with_3ds - test_successful_american_express_purchase_with_3ds Updated CHANGELOG
Previously, when an empty string was submitted for the `[:billing_address][:country]`, CyberSource would response with an error message since this field is required. When a payment method that contained only a phone number with no other address information was used, this resulted in the payment failing. To resolve this issue, the `setup_address_hash` method was updated to match the intent of the already existing comment: to always supply the default address to CyberSource regardless of whether a `nil` value or an empty string was initially submitted as the value for `country` or any other required address field. ECS-1363 Unit: 97 tests, 470 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 95 tests, 490 assertions, 5 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 94.7368% passed All unit tests: 4551 tests, 72299 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
* Partial Refund reject on Pending status * update condition for greater and less * update for The Travis CI build failed Co-authored-by: Rocky Lee <[email protected]>
Add support for following fields: - card-holder-info/address - card-holder-info/address2 - card-holder-info/phone - shipping-contact-info/first-name - shipping-contact-info/last-name - shipping-contact-info/address1 - shipping-contact-info/address2 - shipping-contact-info/city - shipping-contact-info/state - shipping-contact-info/zip - shipping-contact-info/country CE-913 Unit: 37 tests, 217 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 47 tests, 162 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
A recent commit added support for receiving meta-data on BlueSnap but did not protect against a `nil` key being submitted for that field. This change protects against `{ transaction_meta_data: nil }` for BlueSnap. 4556 tests, 72358 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 692 files inspected, no offenses detected
…roller::Parameters` When `ActionController::Parameters` is passed to Cybersource, the default address fields are used instead of the passed parameters. See following comment for more information. References: activemerchant#3747 (comment)
In df60a2c when execute_threeds is false it is assigned to the additionalData as a whole instead of additively, so previously added additionalData fields were destroyed. This change adds the field safely. Remote: 92 tests, 353 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit: 70 tests, 330 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Closes activemerchant#2756
CE-1176 Local: 4722 tests, 73466 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: Loaded suite test/remote/gateways/remote_qvalent_test 22 tests, 70 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Rubocop: 699 files inspected, no offenses detected
Add support for reccuring payment types. Extract networkTransId into response. Set originalNetworkTransId for all MIT transactions. Set isFirstRecurringPayment if it is a first recurring transaction. ECS-1817 Unit: 107 tests, 637 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 73 tests, 269 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Messing with the github workflow to try and get a new runner.
This reverts commit 7865287.
CE-1541 Remote: 98 tests, 502 assertions, 6 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 93.8776% passed The following remote tests are currently failing on master as well as this branch: test_successful_validate_pinless_debit_card test_successful_pinless_debit_card_purchase test_successful_tax_calculation test_successful_authorization_and_failed_capture test_successful_3ds_validate_authorize_request test_successful_3ds_validate_purchase_request Local: 4731 tests, 73512 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Rubocop: 699 files inspected, no offenses detected
…e call (activemerchant#3983) * Add 'unmaskExpirationDate' and 'includeIssuerInfo' to customer profile call Currently the 'unmaskExpirationDate' option only exists when getting a customer payment profile. If you get a customer profile, which in turn includes connected customer payment profiles, this option is not available. That would mean in cases where you may be trying to get a default card, or just a list of cards, you need to make 2..n calls in order to get the expiration date. Additionally, the Auth.net CIM api allows for getting the issuer info: - The Issuer Identification Number (IIN) - Also sometimes known as the Bank Identification Number (BIN) - Not all issuers are banks This adds the issuer info option as well to both the customer profile call and the customer payment profile call.
CE-798 Local: 4719 tests, 73458 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 6 tests, 28 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Rubocop: 699 files inspected, no offenses detected
Allows ssl_vendor_id to be passed via gateway credentials as well as options hash. CE-1660 Remote: 35 tests, 165 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Local: 4732 tests, 73513 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Rubocop: 699 files inspected, no offenses detected
* Bump braintree gem version * Changes to support braintree 3.0.x There are two changes required to support braintree 3.0.x 1. lib/active_merchant/billing/gateways/braintree_blue.rb is hardcoded to support specific braintree versions. I have updated this to support versions 3.0.x 2. The android_pay_card parameter has been renamed to google_pay_card. I have modified Billing::Gateways::BraintreeBlue#add_payment_method to hand in google_pay_card, instead of android_pay_card. * updated tests to use google_pay_card * Update changelog
Lift restriction on the Braintree gem version to allow for versions older than 3.* to work with AM. A part of this is to dynamically determine the key name for pay card (`google_pay_card` for versions > 3 and `android_pay_card` for older versions). CE-1579 Unit: 83 tests, 190 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 84 tests, 444 assertions, 2 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 97.619% passed
…merchant session id field (activemerchant#3994)
Verify call was not passing the currency code to the Payment Express aka Windcave gateway. It appears it was not passing an amount originally, which is needed in order to verify with a currency code. Local: 4733 tests, 73517 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit: 37 tests, 263 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 17 tests, 79 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed rubocop fixes
When adding the AVSName element, if there is no name on the payment method itself, look in the billing address hash for a name instead. Remote: 68 tests, 316 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit: 120 tests, 701 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Unit: 5 tests, 15 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 7 tests, 21 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Metadata information added to request payment, capture, refund, and void. Found here in [Checkout's documentation](https://api-reference.checkout.com/#operation/requestAPaymentOrPayout) CE-1043 Local: 4735 tests, 73541 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit 34 tests, 169 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote 38 tests, 99 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Add support to pass `networkTxReference`, from initial auth transactions, to subsequent MIT requests. We also extract the `networkTxReference` from the gateway response and add it to the `network_transaction_id` field in the Response object. CE-1603 Unit: 76 tests, 397 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 99 tests, 378 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
- Support the following standard AM methods: authorize, capture, purchase, void, refund, store and verify - Authorize and purchase methods support receiving PAN or vaulted customer ID - Support additional general methods: redact - [PayTrace API documentation](https://developers.paytrace.com/support/home) CE-1601 Local: 4752 tests, 73583 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit: 16 tests, 47 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 21 tests, 55 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Hardcoded amount of $1 for verify calls per convention. Local 4757 tests, 73618 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit 37 tests, 263 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 17 tests, 79 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
CE-1549 Unit: 7 tests, 22 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 11 tests, 36 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
Closes activemerchant#3974 bundle exec rake test:local 4773 tests, 73667 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Running RuboCop... 705 files inspected, no offenses detected Loaded suite test/unit/gateways/pay_arc_test 14 tests, 42 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Loaded suite test/remote/gateways/remote_pay_arc_test 17 tests, 43 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed --------- Added live API URL updated the home page url Updated comments Removed duplicate currency description in the comments. Corrected the successful_purchase_response method. Added some value to last name Removed money parameter in token method Changed the implementation of Verify mehtod to re-use token generation, which itself verifies the card details Removed money from token method Moved Customer name in to add_creditcard method. Moved Customer name in to add_creditcard method and removed customer_data method Converted options keys to symbols when we are using it. Fixed the RegEx bug in scrubbing test case. Fixed the bug in params in token method..
NMI is now using `cardholder_auth` to determine the `eci` value at the gateway level. Local: 4757 tests, 73618 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit: 46 tests, 352 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Remote: 42 tests, 156 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed
…chant into sync-with-orgiginal-gem
Abdelrahman-Atia
approved these changes
Jun 22, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.