mattbauer-activemerchant 1.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +459 -0
- data/CONTRIBUTERS +118 -0
- data/MIT-LICENSE +20 -0
- data/README +134 -0
- data/Rakefile +153 -0
- data/gem-public_cert.pem +20 -0
- data/init.rb +3 -0
- data/lib/active_merchant.rb +60 -0
- data/lib/active_merchant/billing/avs_result.rb +98 -0
- data/lib/active_merchant/billing/base.rb +57 -0
- data/lib/active_merchant/billing/check.rb +68 -0
- data/lib/active_merchant/billing/credit_card.rb +159 -0
- data/lib/active_merchant/billing/credit_card_formatting.rb +21 -0
- data/lib/active_merchant/billing/credit_card_methods.rb +125 -0
- data/lib/active_merchant/billing/cvv_result.rb +38 -0
- data/lib/active_merchant/billing/expiry_date.rb +34 -0
- data/lib/active_merchant/billing/gateway.rb +158 -0
- data/lib/active_merchant/billing/gateways.rb +3 -0
- data/lib/active_merchant/billing/gateways/authorize_net.rb +657 -0
- data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +703 -0
- data/lib/active_merchant/billing/gateways/beanstream.rb +102 -0
- data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +233 -0
- data/lib/active_merchant/billing/gateways/beanstream_interac.rb +54 -0
- data/lib/active_merchant/billing/gateways/bogus.rb +98 -0
- data/lib/active_merchant/billing/gateways/braintree.rb +17 -0
- data/lib/active_merchant/billing/gateways/card_stream.rb +230 -0
- data/lib/active_merchant/billing/gateways/cyber_source.rb +406 -0
- data/lib/active_merchant/billing/gateways/data_cash.rb +595 -0
- data/lib/active_merchant/billing/gateways/efsnet.rb +229 -0
- data/lib/active_merchant/billing/gateways/elavon.rb +106 -0
- data/lib/active_merchant/billing/gateways/eway.rb +277 -0
- data/lib/active_merchant/billing/gateways/exact.rb +222 -0
- data/lib/active_merchant/billing/gateways/first_pay.rb +172 -0
- data/lib/active_merchant/billing/gateways/instapay.rb +164 -0
- data/lib/active_merchant/billing/gateways/linkpoint.rb +396 -0
- data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +154 -0
- data/lib/active_merchant/billing/gateways/merchant_ware.rb +283 -0
- data/lib/active_merchant/billing/gateways/modern_payments.rb +36 -0
- data/lib/active_merchant/billing/gateways/modern_payments_cim.rb +214 -0
- data/lib/active_merchant/billing/gateways/moneris.rb +295 -0
- data/lib/active_merchant/billing/gateways/moneris_usa.rb +258 -0
- data/lib/active_merchant/billing/gateways/net_registry.rb +189 -0
- data/lib/active_merchant/billing/gateways/netbilling.rb +168 -0
- data/lib/active_merchant/billing/gateways/ogone.rb +259 -0
- data/lib/active_merchant/billing/gateways/pay_junction.rb +392 -0
- data/lib/active_merchant/billing/gateways/pay_secure.rb +120 -0
- data/lib/active_merchant/billing/gateways/payflow.rb +236 -0
- data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +207 -0
- data/lib/active_merchant/billing/gateways/payflow/payflow_express_response.rb +39 -0
- data/lib/active_merchant/billing/gateways/payflow/payflow_response.rb +13 -0
- data/lib/active_merchant/billing/gateways/payflow_express.rb +138 -0
- data/lib/active_merchant/billing/gateways/payflow_express_uk.rb +15 -0
- data/lib/active_merchant/billing/gateways/payflow_uk.rb +21 -0
- data/lib/active_merchant/billing/gateways/payment_express.rb +230 -0
- data/lib/active_merchant/billing/gateways/paypal.rb +121 -0
- data/lib/active_merchant/billing/gateways/paypal/paypal_common_api.rb +325 -0
- data/lib/active_merchant/billing/gateways/paypal/paypal_express_response.rb +38 -0
- data/lib/active_merchant/billing/gateways/paypal_ca.rb +13 -0
- data/lib/active_merchant/billing/gateways/paypal_express.rb +130 -0
- data/lib/active_merchant/billing/gateways/paypal_express_common.rb +20 -0
- data/lib/active_merchant/billing/gateways/plugnpay.rb +292 -0
- data/lib/active_merchant/billing/gateways/psigate.rb +214 -0
- data/lib/active_merchant/billing/gateways/psl_card.rb +306 -0
- data/lib/active_merchant/billing/gateways/quickpay.rb +213 -0
- data/lib/active_merchant/billing/gateways/realex.rb +200 -0
- data/lib/active_merchant/billing/gateways/sage.rb +146 -0
- data/lib/active_merchant/billing/gateways/sage/sage_bankcard.rb +88 -0
- data/lib/active_merchant/billing/gateways/sage/sage_core.rb +110 -0
- data/lib/active_merchant/billing/gateways/sage/sage_virtual_check.rb +97 -0
- data/lib/active_merchant/billing/gateways/sage_pay.rb +308 -0
- data/lib/active_merchant/billing/gateways/secure_pay.rb +31 -0
- data/lib/active_merchant/billing/gateways/secure_pay_au.rb +157 -0
- data/lib/active_merchant/billing/gateways/secure_pay_tech.rb +113 -0
- data/lib/active_merchant/billing/gateways/skip_jack.rb +442 -0
- data/lib/active_merchant/billing/gateways/smart_ps.rb +254 -0
- data/lib/active_merchant/billing/gateways/trans_first.rb +127 -0
- data/lib/active_merchant/billing/gateways/transax.rb +26 -0
- data/lib/active_merchant/billing/gateways/trust_commerce.rb +418 -0
- data/lib/active_merchant/billing/gateways/usa_epay.rb +194 -0
- data/lib/active_merchant/billing/gateways/verifi.rb +228 -0
- data/lib/active_merchant/billing/gateways/viaklix.rb +189 -0
- data/lib/active_merchant/billing/gateways/wirecard.rb +318 -0
- data/lib/active_merchant/billing/integrations.rb +22 -0
- data/lib/active_merchant/billing/integrations/action_view_helper.rb +79 -0
- data/lib/active_merchant/billing/integrations/bogus.rb +22 -0
- data/lib/active_merchant/billing/integrations/bogus/helper.rb +17 -0
- data/lib/active_merchant/billing/integrations/bogus/notification.rb +11 -0
- data/lib/active_merchant/billing/integrations/bogus/return.rb +10 -0
- data/lib/active_merchant/billing/integrations/chronopay.rb +22 -0
- data/lib/active_merchant/billing/integrations/chronopay/helper.rb +81 -0
- data/lib/active_merchant/billing/integrations/chronopay/notification.rb +156 -0
- data/lib/active_merchant/billing/integrations/chronopay/return.rb +10 -0
- data/lib/active_merchant/billing/integrations/gestpay.rb +26 -0
- data/lib/active_merchant/billing/integrations/gestpay/common.rb +42 -0
- data/lib/active_merchant/billing/integrations/gestpay/helper.rb +70 -0
- data/lib/active_merchant/billing/integrations/gestpay/notification.rb +83 -0
- data/lib/active_merchant/billing/integrations/gestpay/return.rb +10 -0
- data/lib/active_merchant/billing/integrations/helper.rb +93 -0
- data/lib/active_merchant/billing/integrations/hi_trust.rb +26 -0
- data/lib/active_merchant/billing/integrations/hi_trust/helper.rb +58 -0
- data/lib/active_merchant/billing/integrations/hi_trust/notification.rb +59 -0
- data/lib/active_merchant/billing/integrations/hi_trust/return.rb +67 -0
- data/lib/active_merchant/billing/integrations/nochex.rb +87 -0
- data/lib/active_merchant/billing/integrations/nochex/helper.rb +68 -0
- data/lib/active_merchant/billing/integrations/nochex/notification.rb +94 -0
- data/lib/active_merchant/billing/integrations/nochex/return.rb +10 -0
- data/lib/active_merchant/billing/integrations/notification.rb +62 -0
- data/lib/active_merchant/billing/integrations/paypal.rb +40 -0
- data/lib/active_merchant/billing/integrations/paypal/helper.rb +119 -0
- data/lib/active_merchant/billing/integrations/paypal/notification.rb +154 -0
- data/lib/active_merchant/billing/integrations/paypal/return.rb +10 -0
- data/lib/active_merchant/billing/integrations/quickpay.rb +18 -0
- data/lib/active_merchant/billing/integrations/quickpay/helper.rb +72 -0
- data/lib/active_merchant/billing/integrations/quickpay/notification.rb +74 -0
- data/lib/active_merchant/billing/integrations/return.rb +35 -0
- data/lib/active_merchant/billing/integrations/two_checkout.rb +23 -0
- data/lib/active_merchant/billing/integrations/two_checkout/helper.rb +59 -0
- data/lib/active_merchant/billing/integrations/two_checkout/notification.rb +114 -0
- data/lib/active_merchant/billing/integrations/two_checkout/return.rb +17 -0
- data/lib/active_merchant/billing/response.rb +32 -0
- data/lib/active_merchant/lib/connection.rb +170 -0
- data/lib/active_merchant/lib/country.rb +319 -0
- data/lib/active_merchant/lib/error.rb +4 -0
- data/lib/active_merchant/lib/post_data.rb +22 -0
- data/lib/active_merchant/lib/posts_data.rb +47 -0
- data/lib/active_merchant/lib/requires_parameters.rb +16 -0
- data/lib/active_merchant/lib/utils.rb +18 -0
- data/lib/active_merchant/lib/validateable.rb +76 -0
- data/lib/certs/cacert.pem +7815 -0
- data/lib/support/gateway_support.rb +58 -0
- data/script/destroy +14 -0
- data/script/generate +14 -0
- data/test/fixtures.yml +353 -0
- data/test/remote/gateways/remote_authorize_net_cim_test.rb +459 -0
- data/test/remote/gateways/remote_authorize_net_test.rb +145 -0
- data/test/remote/gateways/remote_beanstream_interac_test.rb +53 -0
- data/test/remote/gateways/remote_beanstream_test.rb +150 -0
- data/test/remote/gateways/remote_braintree_test.rb +154 -0
- data/test/remote/gateways/remote_card_stream_test.rb +148 -0
- data/test/remote/gateways/remote_cyber_source_test.rb +144 -0
- data/test/remote/gateways/remote_data_cash_test.rb +357 -0
- data/test/remote/gateways/remote_efsnet_test.rb +81 -0
- data/test/remote/gateways/remote_elavon_test.rb +66 -0
- data/test/remote/gateways/remote_eway_test.rb +74 -0
- data/test/remote/gateways/remote_exact_test.rb +60 -0
- data/test/remote/gateways/remote_first_pay_test.rb +87 -0
- data/test/remote/gateways/remote_instapay_test.rb +61 -0
- data/test/remote/gateways/remote_linkpoint_test.rb +112 -0
- data/test/remote/gateways/remote_merchant_e_solutions_test.rb +173 -0
- data/test/remote/gateways/remote_merchant_ware_test.rb +113 -0
- data/test/remote/gateways/remote_modern_payments_cim_test.rb +58 -0
- data/test/remote/gateways/remote_modern_payments_test.rb +43 -0
- data/test/remote/gateways/remote_moneris_test.rb +118 -0
- data/test/remote/gateways/remote_moneris_usa_test.rb +115 -0
- data/test/remote/gateways/remote_net_registry_test.rb +85 -0
- data/test/remote/gateways/remote_netbilling_test.rb +70 -0
- data/test/remote/gateways/remote_ogone_test.rb +108 -0
- data/test/remote/gateways/remote_pay_junction_test.rb +143 -0
- data/test/remote/gateways/remote_pay_secure_test.rb +39 -0
- data/test/remote/gateways/remote_payflow_express_test.rb +50 -0
- data/test/remote/gateways/remote_payflow_test.rb +237 -0
- data/test/remote/gateways/remote_payflow_uk_test.rb +173 -0
- data/test/remote/gateways/remote_payment_express_test.rb +136 -0
- data/test/remote/gateways/remote_paypal_express_test.rb +49 -0
- data/test/remote/gateways/remote_paypal_test.rb +178 -0
- data/test/remote/gateways/remote_plugnpay_test.rb +72 -0
- data/test/remote/gateways/remote_psigate_test.rb +50 -0
- data/test/remote/gateways/remote_psl_card_test.rb +125 -0
- data/test/remote/gateways/remote_quickpay_test.rb +190 -0
- data/test/remote/gateways/remote_realex_test.rb +224 -0
- data/test/remote/gateways/remote_sage_bankcard_test.rb +109 -0
- data/test/remote/gateways/remote_sage_pay_test.rb +219 -0
- data/test/remote/gateways/remote_sage_test.rb +87 -0
- data/test/remote/gateways/remote_sage_virtual_check_test.rb +62 -0
- data/test/remote/gateways/remote_secure_pay_au_test.rb +40 -0
- data/test/remote/gateways/remote_secure_pay_tech_test.rb +37 -0
- data/test/remote/gateways/remote_secure_pay_test.rb +28 -0
- data/test/remote/gateways/remote_skipjack_test.rb +105 -0
- data/test/remote/gateways/remote_trans_first_test.rb +34 -0
- data/test/remote/gateways/remote_transax_test.rb +112 -0
- data/test/remote/gateways/remote_trust_commerce_test.rb +152 -0
- data/test/remote/gateways/remote_usa_epay_test.rb +46 -0
- data/test/remote/gateways/remote_verifi_test.rb +107 -0
- data/test/remote/gateways/remote_viaklix_test.rb +43 -0
- data/test/remote/gateways/remote_wirecard_test.rb +111 -0
- data/test/remote/integrations/remote_gestpay_integration_test.rb +37 -0
- data/test/remote/integrations/remote_paypal_integration_test.rb +26 -0
- data/test/test_helper.rb +182 -0
- data/test/unit/avs_result_test.rb +59 -0
- data/test/unit/base_test.rb +55 -0
- data/test/unit/check_test.rb +88 -0
- data/test/unit/connection_test.rb +129 -0
- data/test/unit/country_code_test.rb +33 -0
- data/test/unit/country_test.rb +64 -0
- data/test/unit/credit_card_formatting_test.rb +19 -0
- data/test/unit/credit_card_methods_test.rb +179 -0
- data/test/unit/credit_card_test.rb +318 -0
- data/test/unit/cvv_result_test.rb +33 -0
- data/test/unit/expiry_date_test.rb +32 -0
- data/test/unit/gateways/authorize_net_cim_test.rb +638 -0
- data/test/unit/gateways/authorize_net_test.rb +290 -0
- data/test/unit/gateways/beanstream_interac_test.rb +51 -0
- data/test/unit/gateways/beanstream_test.rb +108 -0
- data/test/unit/gateways/bogus_test.rb +46 -0
- data/test/unit/gateways/braintree_test.rb +126 -0
- data/test/unit/gateways/card_stream_test.rb +90 -0
- data/test/unit/gateways/cyber_source_test.rb +188 -0
- data/test/unit/gateways/data_cash_test.rb +133 -0
- data/test/unit/gateways/efsnet_test.rb +123 -0
- data/test/unit/gateways/elavon_test.rb +139 -0
- data/test/unit/gateways/eway_test.rb +118 -0
- data/test/unit/gateways/exact_test.rb +156 -0
- data/test/unit/gateways/first_pay_test.rb +125 -0
- data/test/unit/gateways/gateway_test.rb +48 -0
- data/test/unit/gateways/instapay_test.rb +102 -0
- data/test/unit/gateways/linkpoint_test.rb +167 -0
- data/test/unit/gateways/merchant_e_solutions_test.rb +169 -0
- data/test/unit/gateways/merchant_ware_test.rb +188 -0
- data/test/unit/gateways/modern_payments_cim_test.rb +171 -0
- data/test/unit/gateways/moneris_test.rb +185 -0
- data/test/unit/gateways/moneris_usa_test.rb +183 -0
- data/test/unit/gateways/net_registry_test.rb +416 -0
- data/test/unit/gateways/netbilling_test.rb +54 -0
- data/test/unit/gateways/ogone_test.rb +256 -0
- data/test/unit/gateways/pay_junction_test.rb +123 -0
- data/test/unit/gateways/pay_secure_test.rb +71 -0
- data/test/unit/gateways/payflow_express_test.rb +173 -0
- data/test/unit/gateways/payflow_express_uk_test.rb +86 -0
- data/test/unit/gateways/payflow_test.rb +305 -0
- data/test/unit/gateways/payflow_uk_test.rb +30 -0
- data/test/unit/gateways/payment_express_test.rb +195 -0
- data/test/unit/gateways/paypal_express_test.rb +382 -0
- data/test/unit/gateways/paypal_test.rb +569 -0
- data/test/unit/gateways/plugnpay_test.rb +86 -0
- data/test/unit/gateways/psigate_test.rb +169 -0
- data/test/unit/gateways/psl_card_test.rb +64 -0
- data/test/unit/gateways/quickpay_test.rb +112 -0
- data/test/unit/gateways/realex_test.rb +151 -0
- data/test/unit/gateways/sage_bankcard_test.rb +162 -0
- data/test/unit/gateways/sage_pay_test.rb +139 -0
- data/test/unit/gateways/sage_virtual_check_test.rb +71 -0
- data/test/unit/gateways/secure_pay_au_test.rb +207 -0
- data/test/unit/gateways/secure_pay_tech_test.rb +44 -0
- data/test/unit/gateways/secure_pay_test.rb +87 -0
- data/test/unit/gateways/skip_jack_test.rb +133 -0
- data/test/unit/gateways/trans_first_test.rb +112 -0
- data/test/unit/gateways/trust_commerce_test.rb +90 -0
- data/test/unit/gateways/usa_epay_test.rb +128 -0
- data/test/unit/gateways/verifi_test.rb +96 -0
- data/test/unit/gateways/viaklix_test.rb +78 -0
- data/test/unit/gateways/wirecard_test.rb +250 -0
- data/test/unit/generators/test_gateway_generator.rb +46 -0
- data/test/unit/generators/test_generator_helper.rb +20 -0
- data/test/unit/generators/test_integration_generator.rb +53 -0
- data/test/unit/integrations/action_view_helper_test.rb +50 -0
- data/test/unit/integrations/bogus_module_test.rb +20 -0
- data/test/unit/integrations/chronopay_module_test.rb +13 -0
- data/test/unit/integrations/gestpay_module_test.rb +14 -0
- data/test/unit/integrations/helpers/bogus_helper_test.rb +28 -0
- data/test/unit/integrations/helpers/chronopay_helper_test.rb +67 -0
- data/test/unit/integrations/helpers/gestpay_helper_test.rb +100 -0
- data/test/unit/integrations/helpers/hi_trust_helper_test.rb +16 -0
- data/test/unit/integrations/helpers/nochex_helper_test.rb +53 -0
- data/test/unit/integrations/helpers/paypal_helper_test.rb +171 -0
- data/test/unit/integrations/helpers/quickpay_helper_test.rb +40 -0
- data/test/unit/integrations/helpers/two_checkout_helper_test.rb +92 -0
- data/test/unit/integrations/hi_trust_module_test.rb +13 -0
- data/test/unit/integrations/nochex_module_test.rb +13 -0
- data/test/unit/integrations/notifications/chronopay_notification_test.rb +66 -0
- data/test/unit/integrations/notifications/gestpay_notification_test.rb +60 -0
- data/test/unit/integrations/notifications/hi_trust_notification_test.rb +59 -0
- data/test/unit/integrations/notifications/nochex_notification_test.rb +51 -0
- data/test/unit/integrations/notifications/notification_test.rb +54 -0
- data/test/unit/integrations/notifications/paypal_notification_test.rb +85 -0
- data/test/unit/integrations/notifications/quickpay_notification_test.rb +69 -0
- data/test/unit/integrations/notifications/two_checkout_notification_test.rb +55 -0
- data/test/unit/integrations/paypal_module_test.rb +28 -0
- data/test/unit/integrations/quickpay_module_test.rb +9 -0
- data/test/unit/integrations/returns/chronopay_return_test.rb +11 -0
- data/test/unit/integrations/returns/gestpay_return_test.rb +10 -0
- data/test/unit/integrations/returns/hi_trust_return_test.rb +24 -0
- data/test/unit/integrations/returns/nochex_return_test.rb +10 -0
- data/test/unit/integrations/returns/paypal_return_test.rb +10 -0
- data/test/unit/integrations/returns/return_test.rb +11 -0
- data/test/unit/integrations/returns/two_checkout_return_test.rb +24 -0
- data/test/unit/integrations/two_checkout_module_test.rb +13 -0
- data/test/unit/post_data_test.rb +55 -0
- data/test/unit/posts_data_test.rb +48 -0
- data/test/unit/response_test.rb +28 -0
- data/test/unit/utils_test.rb +7 -0
- data/test/unit/validateable_test.rb +60 -0
- metadata +396 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
|
|
3
|
+
class PayflowUkTest < Test::Unit::TestCase
|
|
4
|
+
def setup
|
|
5
|
+
@gateway = PayflowUkGateway.new(
|
|
6
|
+
:login => 'LOGIN',
|
|
7
|
+
:password => 'PASSWORD'
|
|
8
|
+
)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def test_default_currency
|
|
12
|
+
assert_equal 'GBP', PayflowUkGateway.default_currency
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def test_express_instance
|
|
16
|
+
assert_instance_of PayflowExpressUkGateway, @gateway.express
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def test_default_partner
|
|
20
|
+
assert_equal 'PayPalUk', PayflowUkGateway.partner
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def test_supported_countries
|
|
24
|
+
assert_equal ['GB'], PayflowUkGateway.supported_countries
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def test_supported_card_types
|
|
28
|
+
assert_equal [:visa, :master, :american_express, :discover, :solo, :switch], PayflowUkGateway.supported_cardtypes
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
|
|
3
|
+
class PaymentExpressTest < Test::Unit::TestCase
|
|
4
|
+
def setup
|
|
5
|
+
|
|
6
|
+
@gateway = PaymentExpressGateway.new(
|
|
7
|
+
:login => 'LOGIN',
|
|
8
|
+
:password => 'PASSWORD'
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
@visa = credit_card
|
|
12
|
+
|
|
13
|
+
@solo = credit_card("6334900000000005",
|
|
14
|
+
:type => "solo",
|
|
15
|
+
:issue_number => '01'
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
@options = {
|
|
19
|
+
:order_id => generate_unique_id,
|
|
20
|
+
:billing_address => address,
|
|
21
|
+
:email => 'cody@example.com',
|
|
22
|
+
:description => 'Store purchase'
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@amount = 100
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def test_default_currency
|
|
29
|
+
assert_equal 'NZD', PaymentExpressGateway.default_currency
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def test_invalid_credentials
|
|
33
|
+
@gateway.expects(:ssl_post).returns(invalid_credentials_response)
|
|
34
|
+
|
|
35
|
+
assert response = @gateway.purchase(@amount, @visa, @options)
|
|
36
|
+
assert_equal 'Invalid Credentials', response.message
|
|
37
|
+
assert_failure response
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def test_successful_authorization
|
|
41
|
+
@gateway.expects(:ssl_post).returns(successful_authorization_response)
|
|
42
|
+
|
|
43
|
+
assert response = @gateway.purchase(@amount, @visa, @options)
|
|
44
|
+
assert_success response
|
|
45
|
+
assert response.test?
|
|
46
|
+
assert_equal 'APPROVED', response.message
|
|
47
|
+
assert_equal '00000004011a2478', response.authorization
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def test_successful_solo_authorization
|
|
51
|
+
@gateway.expects(:ssl_post).returns(successful_authorization_response)
|
|
52
|
+
|
|
53
|
+
assert response = @gateway.purchase(@amount, @solo, @options)
|
|
54
|
+
assert_success response
|
|
55
|
+
assert response.test?
|
|
56
|
+
assert_equal 'APPROVED', response.message
|
|
57
|
+
assert_equal '00000004011a2478', response.authorization
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def test_successful_card_store
|
|
61
|
+
@gateway.expects(:ssl_post).returns( successful_store_response )
|
|
62
|
+
|
|
63
|
+
assert response = @gateway.store(@visa)
|
|
64
|
+
assert_success response
|
|
65
|
+
assert response.test?
|
|
66
|
+
assert_equal '0000030000141581', response.token
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def test_successful_card_store_with_custom_billing_id
|
|
70
|
+
@gateway.expects(:ssl_post).returns( successful_store_response(:billing_id => "my-custom-id") )
|
|
71
|
+
|
|
72
|
+
assert response = @gateway.store(@visa, :billing_id => "my-custom-id")
|
|
73
|
+
assert_success response
|
|
74
|
+
assert response.test?
|
|
75
|
+
assert_equal 'my-custom-id', response.token
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def test_unsuccessful_card_store
|
|
79
|
+
@gateway.expects(:ssl_post).returns( unsuccessful_store_response )
|
|
80
|
+
|
|
81
|
+
@visa.number = 2
|
|
82
|
+
|
|
83
|
+
assert response = @gateway.store(@visa)
|
|
84
|
+
assert_failure response
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
def test_purchase_using_token
|
|
88
|
+
@gateway.expects(:ssl_post).returns( successful_store_response )
|
|
89
|
+
|
|
90
|
+
assert response = @gateway.store(@visa)
|
|
91
|
+
token = response.token
|
|
92
|
+
|
|
93
|
+
@gateway.expects(:ssl_post).returns( successful_token_purchase_response )
|
|
94
|
+
|
|
95
|
+
assert response = @gateway.purchase(@amount, token, @options)
|
|
96
|
+
assert_success response
|
|
97
|
+
assert_equal 'APPROVED', response.message
|
|
98
|
+
assert_equal '0000000303ace8db', response.authorization
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
def test_supported_countries
|
|
102
|
+
assert_equal ['AU','MY','NZ','SG','ZA','GB','US'], PaymentExpressGateway.supported_countries
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
def test_supported_card_types
|
|
106
|
+
assert_equal [ :visa, :master, :american_express, :diners_club, :jcb ], PaymentExpressGateway.supported_cardtypes
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
def test_avs_result_not_supported
|
|
110
|
+
@gateway.expects(:ssl_post).returns(successful_authorization_response)
|
|
111
|
+
|
|
112
|
+
response = @gateway.purchase(@amount, @visa, @options)
|
|
113
|
+
assert_nil response.avs_result['code']
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
def test_cvv_result_not_supported
|
|
117
|
+
@gateway.expects(:ssl_post).returns(successful_authorization_response)
|
|
118
|
+
|
|
119
|
+
response = @gateway.purchase(@amount, @visa, @options)
|
|
120
|
+
assert_nil response.cvv_result['code']
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
private
|
|
124
|
+
def invalid_credentials_response
|
|
125
|
+
'<Txn><ReCo>0</ReCo><ResponseText>Invalid Credentials</ResponseText></Txn>'
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
def successful_authorization_response
|
|
129
|
+
<<-RESPONSE
|
|
130
|
+
<Txn>
|
|
131
|
+
<Transaction success="1" reco="00" responsetext="APPROVED">
|
|
132
|
+
<Authorized>1</Authorized>
|
|
133
|
+
<MerchantReference>Test Transaction</MerchantReference>
|
|
134
|
+
<Cvc2>M</Cvc2>
|
|
135
|
+
<CardName>Visa</CardName>
|
|
136
|
+
<Retry>0</Retry>
|
|
137
|
+
<StatusRequired>0</StatusRequired>
|
|
138
|
+
<AuthCode>015921</AuthCode>
|
|
139
|
+
<Amount>1.23</Amount>
|
|
140
|
+
<InputCurrencyId>1</InputCurrencyId>
|
|
141
|
+
<InputCurrencyName>NZD</InputCurrencyName>
|
|
142
|
+
<Acquirer>WestpacTrust</Acquirer>
|
|
143
|
+
<CurrencyId>1</CurrencyId>
|
|
144
|
+
<CurrencyName>NZD</CurrencyName>
|
|
145
|
+
<CurrencyRate>1.00</CurrencyRate>
|
|
146
|
+
<Acquirer>WestpacTrust</Acquirer>
|
|
147
|
+
<AcquirerDate>30102000</AcquirerDate>
|
|
148
|
+
<AcquirerId>1</AcquirerId>
|
|
149
|
+
<CardHolderName>DPS</CardHolderName>
|
|
150
|
+
<DateSettlement>20050811</DateSettlement>
|
|
151
|
+
<TxnType>Purchase</TxnType>
|
|
152
|
+
<CardNumber>411111</CardNumber>
|
|
153
|
+
<DateExpiry>0807</DateExpiry>
|
|
154
|
+
<ProductId></ProductId>
|
|
155
|
+
<AcquirerDate>20050811</AcquirerDate>
|
|
156
|
+
<AcquirerTime>060039</AcquirerTime>
|
|
157
|
+
<AcquirerId>9000</AcquirerId>
|
|
158
|
+
<Acquirer>Test</Acquirer>
|
|
159
|
+
<TestMode>1</TestMode>
|
|
160
|
+
<CardId>2</CardId>
|
|
161
|
+
<CardHolderResponseText>APPROVED</CardHolderResponseText>
|
|
162
|
+
<CardHolderHelpText>The Transaction was approved</CardHolderHelpText>
|
|
163
|
+
<CardHolderResponseDescription>The Transaction was approved</CardHolderResponseDescription>
|
|
164
|
+
<MerchantResponseText>APPROVED</MerchantResponseText>
|
|
165
|
+
<MerchantHelpText>The Transaction was approved</MerchantHelpText>
|
|
166
|
+
<MerchantResponseDescription>The Transaction was approved</MerchantResponseDescription>
|
|
167
|
+
<GroupAccount>9997</GroupAccount>
|
|
168
|
+
<DpsTxnRef>00000004011a2478</DpsTxnRef>
|
|
169
|
+
<AllowRetry>0</AllowRetry>
|
|
170
|
+
<DpsBillingId></DpsBillingId>
|
|
171
|
+
<BillingId></BillingId>
|
|
172
|
+
<TransactionId>011a2478</TransactionId>
|
|
173
|
+
</Transaction>
|
|
174
|
+
<ReCo>00</ReCo>
|
|
175
|
+
<ResponseText>APPROVED</ResponseText>
|
|
176
|
+
<HelpText>The Transaction was approved</HelpText>
|
|
177
|
+
<Success>1</Success>
|
|
178
|
+
<TxnRef>00000004011a2478</TxnRef>
|
|
179
|
+
</Txn>
|
|
180
|
+
RESPONSE
|
|
181
|
+
end
|
|
182
|
+
|
|
183
|
+
def successful_store_response(options = {})
|
|
184
|
+
%(<Txn><Transaction success="1" reco="00" responsetext="APPROVED"><Authorized>1</Authorized><MerchantReference></MerchantReference><CardName>Visa</CardName><Retry>0</Retry><StatusRequired>0</StatusRequired><AuthCode>02381203accf5c00000003</AuthCode><Amount>0.01</Amount><CurrencyId>554</CurrencyId><InputCurrencyId>554</InputCurrencyId><InputCurrencyName>NZD</InputCurrencyName><CurrencyRate>1.00</CurrencyRate><CurrencyName>NZD</CurrencyName><CardHolderName>BOB BOBSEN</CardHolderName><DateSettlement>20070323</DateSettlement><TxnType>Auth</TxnType><CardNumber>424242........42</CardNumber><DateExpiry>0809</DateExpiry><ProductId></ProductId><AcquirerDate>20070323</AcquirerDate><AcquirerTime>023812</AcquirerTime><AcquirerId>9000</AcquirerId><Acquirer>Test</Acquirer><TestMode>1</TestMode><CardId>2</CardId><CardHolderResponseText>APPROVED</CardHolderResponseText><CardHolderHelpText>The Transaction was approved</CardHolderHelpText><CardHolderResponseDescription>The Transaction was approved</CardHolderResponseDescription><MerchantResponseText>APPROVED</MerchantResponseText><MerchantHelpText>The Transaction was approved</MerchantHelpText><MerchantResponseDescription>The Transaction was approved</MerchantResponseDescription><UrlFail></UrlFail><UrlSuccess></UrlSuccess><EnablePostResponse>0</EnablePostResponse><PxPayName></PxPayName><PxPayLogoSrc></PxPayLogoSrc><PxPayUserId></PxPayUserId><PxPayXsl></PxPayXsl><PxPayBgColor></PxPayBgColor><AcquirerPort>9999999999-99999999</AcquirerPort><AcquirerTxnRef>12835</AcquirerTxnRef><GroupAccount>9997</GroupAccount><DpsTxnRef>0000000303accf5c</DpsTxnRef><AllowRetry>0</AllowRetry><DpsBillingId>0000030000141581</DpsBillingId><BillingId>#{options[:billing_id]}</BillingId><TransactionId>03accf5c</TransactionId><PxHostId>00000003</PxHostId></Transaction><ReCo>00</ReCo><ResponseText>APPROVED</ResponseText><HelpText>The Transaction was approved</HelpText><Success>1</Success><DpsTxnRef>0000000303accf5c</DpsTxnRef><TxnRef></TxnRef></Txn>)
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
def unsuccessful_store_response(options = {})
|
|
188
|
+
%(<Txn><Transaction success="0" reco="QK" responsetext="INVALID CARD NUMBER"><Authorized>0</Authorized><MerchantReference></MerchantReference><CardName></CardName><Retry>0</Retry><StatusRequired>0</StatusRequired><AuthCode></AuthCode><Amount>0.01</Amount><CurrencyId>554</CurrencyId><InputCurrencyId>554</InputCurrencyId><InputCurrencyName>NZD</InputCurrencyName><CurrencyRate>1.00</CurrencyRate><CurrencyName>NZD</CurrencyName><CardHolderName>LONGBOB LONGSEN</CardHolderName><DateSettlement>19800101</DateSettlement><TxnType>Validate</TxnType><CardNumber>000000........00</CardNumber><DateExpiry>0808</DateExpiry><ProductId></ProductId><AcquirerDate></AcquirerDate><AcquirerTime></AcquirerTime><AcquirerId>9000</AcquirerId><Acquirer></Acquirer><TestMode>0</TestMode><CardId>0</CardId><CardHolderResponseText>INVALID CARD NUMBER</CardHolderResponseText><CardHolderHelpText>An Invalid Card Number was entered. Check the card number</CardHolderHelpText><CardHolderResponseDescription>An Invalid Card Number was entered. Check the card number</CardHolderResponseDescription><MerchantResponseText>INVALID CARD NUMBER</MerchantResponseText><MerchantHelpText>An Invalid Card Number was entered. Check the card number</MerchantHelpText><MerchantResponseDescription>An Invalid Card Number was entered. Check the card number</MerchantResponseDescription><UrlFail></UrlFail><UrlSuccess></UrlSuccess><EnablePostResponse>0</EnablePostResponse><PxPayName></PxPayName><PxPayLogoSrc></PxPayLogoSrc><PxPayUserId></PxPayUserId><PxPayXsl></PxPayXsl><PxPayBgColor></PxPayBgColor><AcquirerPort>9999999999-99999999</AcquirerPort><AcquirerTxnRef>0</AcquirerTxnRef><GroupAccount>9997</GroupAccount><DpsTxnRef></DpsTxnRef><AllowRetry>0</AllowRetry><DpsBillingId></DpsBillingId><BillingId></BillingId><TransactionId>00000000</TransactionId><PxHostId>00000003</PxHostId></Transaction><ReCo>QK</ReCo><ResponseText>INVALID CARD NUMBER</ResponseText><HelpText>An Invalid Card Number was entered. Check the card number</HelpText><Success>0</Success><DpsTxnRef></DpsTxnRef><TxnRef></TxnRef></Txn>)
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
def successful_token_purchase_response
|
|
192
|
+
%(<Txn><Transaction success="1" reco="00" responsetext="APPROVED"><Authorized>1</Authorized><MerchantReference></MerchantReference><CardName>Visa</CardName><Retry>0</Retry><StatusRequired>0</StatusRequired><AuthCode>030817</AuthCode><Amount>10.00</Amount><CurrencyId>554</CurrencyId><InputCurrencyId>554</InputCurrencyId><InputCurrencyName>NZD</InputCurrencyName><CurrencyRate>1.00</CurrencyRate><CurrencyName>NZD</CurrencyName><CardHolderName>LONGBOB LONGSEN</CardHolderName><DateSettlement>20070323</DateSettlement><TxnType>Purchase</TxnType><CardNumber>424242........42</CardNumber><DateExpiry>0808</DateExpiry><ProductId></ProductId><AcquirerDate>20070323</AcquirerDate><AcquirerTime>030817</AcquirerTime><AcquirerId>9000</AcquirerId><Acquirer>Test</Acquirer><TestMode>1</TestMode><CardId>2</CardId><CardHolderResponseText>APPROVED</CardHolderResponseText><CardHolderHelpText>The Transaction was approved</CardHolderHelpText><CardHolderResponseDescription>The Transaction was approved</CardHolderResponseDescription><MerchantResponseText>APPROVED</MerchantResponseText><MerchantHelpText>The Transaction was approved</MerchantHelpText><MerchantResponseDescription>The Transaction was approved</MerchantResponseDescription><UrlFail></UrlFail><UrlSuccess></UrlSuccess><EnablePostResponse>0</EnablePostResponse><PxPayName></PxPayName><PxPayLogoSrc></PxPayLogoSrc><PxPayUserId></PxPayUserId><PxPayXsl></PxPayXsl><PxPayBgColor></PxPayBgColor><AcquirerPort>9999999999-99999999</AcquirerPort><AcquirerTxnRef>12859</AcquirerTxnRef><GroupAccount>9997</GroupAccount><DpsTxnRef>0000000303ace8db</DpsTxnRef><AllowRetry>0</AllowRetry><DpsBillingId>0000030000141581</DpsBillingId><BillingId></BillingId><TransactionId>03ace8db</TransactionId><PxHostId>00000003</PxHostId></Transaction><ReCo>00</ReCo><ResponseText>APPROVED</ResponseText><HelpText>The Transaction was approved</HelpText><Success>1</Success><DpsTxnRef>0000000303ace8db</DpsTxnRef><TxnRef></TxnRef></Txn>)
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
end
|
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
|
|
3
|
+
class PaypalExpressTest < Test::Unit::TestCase
|
|
4
|
+
TEST_REDIRECT_URL = 'https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=1234567890'
|
|
5
|
+
LIVE_REDIRECT_URL = 'https://www.paypal.com/cgibin/webscr?cmd=_express-checkout&token=1234567890'
|
|
6
|
+
|
|
7
|
+
TEST_REDIRECT_URL_WITHOUT_REVIEW = "#{TEST_REDIRECT_URL}&useraction=commit"
|
|
8
|
+
LIVE_REDIRECT_URL_WITHOUT_REVIEW = "#{LIVE_REDIRECT_URL}&useraction=commit"
|
|
9
|
+
|
|
10
|
+
def setup
|
|
11
|
+
@gateway = PaypalExpressGateway.new(
|
|
12
|
+
:login => 'cody',
|
|
13
|
+
:password => 'test',
|
|
14
|
+
:pem => 'PEM'
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
@address = { :address1 => '1234 My Street',
|
|
18
|
+
:address2 => 'Apt 1',
|
|
19
|
+
:company => 'Widgets Inc',
|
|
20
|
+
:city => 'Ottawa',
|
|
21
|
+
:state => 'ON',
|
|
22
|
+
:zip => 'K1C2N6',
|
|
23
|
+
:country => 'Canada',
|
|
24
|
+
:phone => '(555)555-5555'
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
Base.gateway_mode = :test
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def teardown
|
|
31
|
+
Base.gateway_mode = :test
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def test_live_redirect_url
|
|
35
|
+
Base.gateway_mode = :production
|
|
36
|
+
assert_equal LIVE_REDIRECT_URL, @gateway.redirect_url_for('1234567890')
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def test_live_redirect_url_without_review
|
|
40
|
+
Base.gateway_mode = :production
|
|
41
|
+
assert_equal LIVE_REDIRECT_URL_WITHOUT_REVIEW, @gateway.redirect_url_for('1234567890', :review => false)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def test_force_sandbox_redirect_url
|
|
45
|
+
Base.gateway_mode = :production
|
|
46
|
+
|
|
47
|
+
gateway = PaypalExpressGateway.new(
|
|
48
|
+
:login => 'cody',
|
|
49
|
+
:password => 'test',
|
|
50
|
+
:pem => 'PEM',
|
|
51
|
+
:test => true
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
assert gateway.test?
|
|
55
|
+
assert_equal TEST_REDIRECT_URL, gateway.redirect_url_for('1234567890')
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
def test_test_redirect_url
|
|
59
|
+
assert_equal :test, Base.gateway_mode
|
|
60
|
+
assert_equal TEST_REDIRECT_URL, @gateway.redirect_url_for('1234567890')
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def test_test_redirect_url_without_review
|
|
64
|
+
assert_equal :test, Base.gateway_mode
|
|
65
|
+
assert_equal TEST_REDIRECT_URL_WITHOUT_REVIEW, @gateway.redirect_url_for('1234567890', :review => false)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def test_get_express_details
|
|
69
|
+
@gateway.expects(:ssl_post).returns(successful_details_response)
|
|
70
|
+
response = @gateway.details_for('EC-2OPN7UJGFWK9OYFV')
|
|
71
|
+
|
|
72
|
+
assert_instance_of PaypalExpressResponse, response
|
|
73
|
+
assert response.success?
|
|
74
|
+
assert response.test?
|
|
75
|
+
|
|
76
|
+
assert_equal 'EC-6WS104951Y388951L', response.token
|
|
77
|
+
assert_equal 'FWRVKNRRZ3WUC', response.payer_id
|
|
78
|
+
assert_equal 'buyer@jadedpallet.com', response.email
|
|
79
|
+
|
|
80
|
+
assert address = response.address
|
|
81
|
+
assert_equal 'Fred Brooks', address['name']
|
|
82
|
+
assert_nil address['company']
|
|
83
|
+
assert_equal '1234 Penny Lane', address['address1']
|
|
84
|
+
assert_nil address['address2']
|
|
85
|
+
assert_equal 'Jonsetown', address['city']
|
|
86
|
+
assert_equal 'NC', address['state']
|
|
87
|
+
assert_equal '23456', address['zip']
|
|
88
|
+
assert_equal 'US', address['country']
|
|
89
|
+
assert_nil address['phone']
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
def test_authorization
|
|
93
|
+
@gateway.expects(:ssl_post).returns(successful_authorization_response)
|
|
94
|
+
response = @gateway.authorize(300, :token => 'EC-6WS104951Y388951L', :payer_id => 'FWRVKNRRZ3WUC')
|
|
95
|
+
assert response.success?
|
|
96
|
+
assert_not_nil response.authorization
|
|
97
|
+
assert response.test?
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
def test_default_payflow_currency
|
|
101
|
+
assert_equal 'USD', PayflowExpressGateway.default_currency
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
def test_default_partner
|
|
105
|
+
assert_equal 'PayPal', PayflowExpressGateway.partner
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
def test_uk_partner
|
|
109
|
+
assert_equal 'PayPalUk', PayflowExpressUkGateway.partner
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
def test_handle_non_zero_amount
|
|
113
|
+
xml = REXML::Document.new(@gateway.send(:build_setup_request, 'SetExpressCheckout', 50, {}))
|
|
114
|
+
|
|
115
|
+
assert_equal '0.50', REXML::XPath.first(xml, '//n2:OrderTotal').text
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
def test_handles_zero_amount
|
|
119
|
+
xml = REXML::Document.new(@gateway.send(:build_setup_request, 'SetExpressCheckout', 0, {}))
|
|
120
|
+
|
|
121
|
+
assert_equal '1.00', REXML::XPath.first(xml, '//n2:OrderTotal').text
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
def test_handle_locale_code
|
|
125
|
+
xml = REXML::Document.new(@gateway.send(:build_setup_request, 'SetExpressCheckout', 0, { :locale => 'GB' }))
|
|
126
|
+
|
|
127
|
+
assert_equal 'GB', REXML::XPath.first(xml, '//n2:LocaleCode').text
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
def test_supported_countries
|
|
131
|
+
assert_equal ['US'], PaypalExpressGateway.supported_countries
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
def test_button_source
|
|
135
|
+
PaypalExpressGateway.application_id = 'ActiveMerchant_EC'
|
|
136
|
+
|
|
137
|
+
xml = REXML::Document.new(@gateway.send(:build_sale_or_authorization_request, 'Test', 100, {}))
|
|
138
|
+
assert_equal 'ActiveMerchant_EC', REXML::XPath.first(xml, '//n2:ButtonSource').text
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
def test_error_code_for_single_error
|
|
142
|
+
@gateway.expects(:ssl_post).returns(response_with_error)
|
|
143
|
+
response = @gateway.setup_authorization(100,
|
|
144
|
+
:return_url => 'http://example.com',
|
|
145
|
+
:cancel_return_url => 'http://example.com'
|
|
146
|
+
)
|
|
147
|
+
assert_equal "10736", response.params['error_codes']
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
def test_ensure_only_unique_error_codes
|
|
151
|
+
@gateway.expects(:ssl_post).returns(response_with_duplicate_errors)
|
|
152
|
+
response = @gateway.setup_authorization(100,
|
|
153
|
+
:return_url => 'http://example.com',
|
|
154
|
+
:cancel_return_url => 'http://example.com'
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
assert_equal "10736" , response.params['error_codes']
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
def test_error_codes_for_multiple_errors
|
|
161
|
+
@gateway.expects(:ssl_post).returns(response_with_errors)
|
|
162
|
+
response = @gateway.setup_authorization(100,
|
|
163
|
+
:return_url => 'http://example.com',
|
|
164
|
+
:cancel_return_url => 'http://example.com'
|
|
165
|
+
)
|
|
166
|
+
|
|
167
|
+
assert_equal ["10736", "10002"] , response.params['error_codes'].split(',')
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
private
|
|
171
|
+
def successful_details_response
|
|
172
|
+
<<-RESPONSE
|
|
173
|
+
<?xml version='1.0' encoding='UTF-8'?>
|
|
174
|
+
<SOAP-ENV:Envelope xmlns:cc='urn:ebay:apis:CoreComponentTypes' xmlns:sizeship='urn:ebay:api:PayPalAPI/sizeship.xsd' xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/' xmlns:saml='urn:oasis:names:tc:SAML:1.0:assertion' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:wsu='http://schemas.xmlsoap.org/ws/2002/07/utility' xmlns:ebl='urn:ebay:apis:eBLBaseComponents' xmlns:ds='http://www.w3.org/2000/09/xmldsig#' xmlns:xs='http://www.w3.org/2001/XMLSchema' xmlns:ns='urn:ebay:api:PayPalAPI' xmlns:market='urn:ebay:apis:Market' xmlns:ship='urn:ebay:apis:ship' xmlns:auction='urn:ebay:apis:Auction' xmlns:wsse='http://schemas.xmlsoap.org/ws/2002/12/secext' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
|
|
175
|
+
<SOAP-ENV:Header>
|
|
176
|
+
<Security xsi:type='wsse:SecurityType' xmlns='http://schemas.xmlsoap.org/ws/2002/12/secext'/>
|
|
177
|
+
<RequesterCredentials xsi:type='ebl:CustomSecurityHeaderType' xmlns='urn:ebay:api:PayPalAPI'>
|
|
178
|
+
<Credentials xsi:type='ebl:UserIdPasswordType' xmlns='urn:ebay:apis:eBLBaseComponents'>
|
|
179
|
+
<Username xsi:type='xs:string'/>
|
|
180
|
+
<Password xsi:type='xs:string'/>
|
|
181
|
+
<Subject xsi:type='xs:string'/>
|
|
182
|
+
</Credentials>
|
|
183
|
+
</RequesterCredentials>
|
|
184
|
+
</SOAP-ENV:Header>
|
|
185
|
+
<SOAP-ENV:Body id='_0'>
|
|
186
|
+
<GetExpressCheckoutDetailsResponse xmlns='urn:ebay:api:PayPalAPI'>
|
|
187
|
+
<Timestamp xmlns='urn:ebay:apis:eBLBaseComponents'>2007-02-12T23:59:43Z</Timestamp>
|
|
188
|
+
<Ack xmlns='urn:ebay:apis:eBLBaseComponents'>Success</Ack>
|
|
189
|
+
<CorrelationID xmlns='urn:ebay:apis:eBLBaseComponents'>c73044f11da65</CorrelationID>
|
|
190
|
+
<Version xmlns='urn:ebay:apis:eBLBaseComponents'>2.000000</Version>
|
|
191
|
+
<Build xmlns='urn:ebay:apis:eBLBaseComponents'>1.0006</Build>
|
|
192
|
+
<GetExpressCheckoutDetailsResponseDetails xsi:type='ebl:GetExpressCheckoutDetailsResponseDetailsType' xmlns='urn:ebay:apis:eBLBaseComponents'>
|
|
193
|
+
<Token xsi:type='ebl:ExpressCheckoutTokenType'>EC-6WS104951Y388951L</Token>
|
|
194
|
+
<PayerInfo xsi:type='ebl:PayerInfoType'>
|
|
195
|
+
<Payer xsi:type='ebl:EmailAddressType'>buyer@jadedpallet.com</Payer>
|
|
196
|
+
<PayerID xsi:type='ebl:UserIDType'>FWRVKNRRZ3WUC</PayerID>
|
|
197
|
+
<PayerStatus xsi:type='ebl:PayPalUserStatusCodeType'>verified</PayerStatus>
|
|
198
|
+
<PayerName xsi:type='ebl:PersonNameType'>
|
|
199
|
+
<Salutation xmlns='urn:ebay:apis:eBLBaseComponents'/>
|
|
200
|
+
<FirstName xmlns='urn:ebay:apis:eBLBaseComponents'>Fred</FirstName>
|
|
201
|
+
<MiddleName xmlns='urn:ebay:apis:eBLBaseComponents'/>
|
|
202
|
+
<LastName xmlns='urn:ebay:apis:eBLBaseComponents'>Brooks</LastName>
|
|
203
|
+
<Suffix xmlns='urn:ebay:apis:eBLBaseComponents'/>
|
|
204
|
+
</PayerName>
|
|
205
|
+
<PayerCountry xsi:type='ebl:CountryCodeType'>US</PayerCountry>
|
|
206
|
+
<PayerBusiness xsi:type='xs:string'/>
|
|
207
|
+
<Address xsi:type='ebl:AddressType'>
|
|
208
|
+
<Name xsi:type='xs:string'>Fred Brooks</Name>
|
|
209
|
+
<Street1 xsi:type='xs:string'>1234 Penny Lane</Street1>
|
|
210
|
+
<Street2 xsi:type='xs:string'/>
|
|
211
|
+
<CityName xsi:type='xs:string'>Jonsetown</CityName>
|
|
212
|
+
<StateOrProvince xsi:type='xs:string'>NC</StateOrProvince>
|
|
213
|
+
<Country xsi:type='ebl:CountryCodeType'>US</Country>
|
|
214
|
+
<CountryName>United States</CountryName>
|
|
215
|
+
<PostalCode xsi:type='xs:string'>23456</PostalCode>
|
|
216
|
+
<AddressOwner xsi:type='ebl:AddressOwnerCodeType'>PayPal</AddressOwner>
|
|
217
|
+
<AddressStatus xsi:type='ebl:AddressStatusCodeType'>Confirmed</AddressStatus>
|
|
218
|
+
</Address>
|
|
219
|
+
</PayerInfo>
|
|
220
|
+
<InvoiceID xsi:type='xs:string'>1230123</InvoiceID>
|
|
221
|
+
</GetExpressCheckoutDetailsResponseDetails>
|
|
222
|
+
</GetExpressCheckoutDetailsResponse>
|
|
223
|
+
</SOAP-ENV:Body>
|
|
224
|
+
</SOAP-ENV:Envelope>
|
|
225
|
+
RESPONSE
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
def successful_authorization_response
|
|
229
|
+
<<-RESPONSE
|
|
230
|
+
<?xml version='1.0' encoding='UTF-8'?>
|
|
231
|
+
<SOAP-ENV:Envelope xmlns:cc='urn:ebay:apis:CoreComponentTypes' xmlns:sizeship='urn:ebay:api:PayPalAPI/sizeship.xsd' xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/' xmlns:saml='urn:oasis:names:tc:SAML:1.0:assertion' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:wsu='http://schemas.xmlsoap.org/ws/2002/07/utility' xmlns:ebl='urn:ebay:apis:eBLBaseComponents' xmlns:ds='http://www.w3.org/2000/09/xmldsig#' xmlns:xs='http://www.w3.org/2001/XMLSchema' xmlns:ns='urn:ebay:api:PayPalAPI' xmlns:market='urn:ebay:apis:Market' xmlns:ship='urn:ebay:apis:ship' xmlns:auction='urn:ebay:apis:Auction' xmlns:wsse='http://schemas.xmlsoap.org/ws/2002/12/secext' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
|
|
232
|
+
<SOAP-ENV:Header>
|
|
233
|
+
<Security xsi:type='wsse:SecurityType' xmlns='http://schemas.xmlsoap.org/ws/2002/12/secext'/>
|
|
234
|
+
<RequesterCredentials xsi:type='ebl:CustomSecurityHeaderType' xmlns='urn:ebay:api:PayPalAPI'>
|
|
235
|
+
<Credentials xsi:type='ebl:UserIdPasswordType' xmlns='urn:ebay:apis:eBLBaseComponents'>
|
|
236
|
+
<Username xsi:type='xs:string'/>
|
|
237
|
+
<Password xsi:type='xs:string'/>
|
|
238
|
+
<Subject xsi:type='xs:string'/>
|
|
239
|
+
</Credentials>
|
|
240
|
+
</RequesterCredentials>
|
|
241
|
+
</SOAP-ENV:Header>
|
|
242
|
+
<SOAP-ENV:Body id='_0'>
|
|
243
|
+
<DoExpressCheckoutPaymentResponse xmlns='urn:ebay:api:PayPalAPI'>
|
|
244
|
+
<Timestamp xmlns='urn:ebay:apis:eBLBaseComponents'>2007-02-13T00:18:50Z</Timestamp>
|
|
245
|
+
<Ack xmlns='urn:ebay:apis:eBLBaseComponents'>Success</Ack>
|
|
246
|
+
<CorrelationID xmlns='urn:ebay:apis:eBLBaseComponents'>62450a4266d04</CorrelationID>
|
|
247
|
+
<Version xmlns='urn:ebay:apis:eBLBaseComponents'>2.000000</Version>
|
|
248
|
+
<Build xmlns='urn:ebay:apis:eBLBaseComponents'>1.0006</Build>
|
|
249
|
+
<DoExpressCheckoutPaymentResponseDetails xsi:type='ebl:DoExpressCheckoutPaymentResponseDetailsType' xmlns='urn:ebay:apis:eBLBaseComponents'>
|
|
250
|
+
<Token xsi:type='ebl:ExpressCheckoutTokenType'>EC-6WS104951Y388951L</Token>
|
|
251
|
+
<PaymentInfo xsi:type='ebl:PaymentInfoType'>
|
|
252
|
+
<TransactionID>8B266858CH956410C</TransactionID>
|
|
253
|
+
<ParentTransactionID xsi:type='ebl:TransactionId'/>
|
|
254
|
+
<ReceiptID/>
|
|
255
|
+
<TransactionType xsi:type='ebl:PaymentTransactionCodeType'>express-checkout</TransactionType>
|
|
256
|
+
<PaymentType xsi:type='ebl:PaymentCodeType'>instant</PaymentType>
|
|
257
|
+
<PaymentDate xsi:type='xs:dateTime'>2007-02-13T00:18:48Z</PaymentDate>
|
|
258
|
+
<GrossAmount currencyID='USD' xsi:type='cc:BasicAmountType'>3.00</GrossAmount>
|
|
259
|
+
<TaxAmount currencyID='USD' xsi:type='cc:BasicAmountType'>0.00</TaxAmount>
|
|
260
|
+
<ExchangeRate xsi:type='xs:string'/>
|
|
261
|
+
<PaymentStatus xsi:type='ebl:PaymentStatusCodeType'>Pending</PaymentStatus>
|
|
262
|
+
<PendingReason xsi:type='ebl:PendingStatusCodeType'>authorization</PendingReason>
|
|
263
|
+
<ReasonCode xsi:type='ebl:ReversalReasonCodeType'>none</ReasonCode>
|
|
264
|
+
</PaymentInfo>
|
|
265
|
+
</DoExpressCheckoutPaymentResponseDetails>
|
|
266
|
+
</DoExpressCheckoutPaymentResponse>
|
|
267
|
+
</SOAP-ENV:Body>
|
|
268
|
+
</SOAP-ENV:Envelope>
|
|
269
|
+
RESPONSE
|
|
270
|
+
end
|
|
271
|
+
|
|
272
|
+
def response_with_error
|
|
273
|
+
<<-RESPONSE
|
|
274
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
275
|
+
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cc="urn:ebay:apis:CoreComponentTypes" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:market="urn:ebay:apis:Market" xmlns:auction="urn:ebay:apis:Auction" xmlns:sizeship="urn:ebay:api:PayPalAPI/sizeship.xsd" xmlns:ship="urn:ebay:apis:ship" xmlns:skype="urn:ebay:apis:skype" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:ebl="urn:ebay:apis:eBLBaseComponents" xmlns:ns="urn:ebay:api:PayPalAPI">
|
|
276
|
+
<SOAP-ENV:Header>
|
|
277
|
+
<Security xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext" xsi:type="wsse:SecurityType"/>
|
|
278
|
+
<RequesterCredentials xmlns="urn:ebay:api:PayPalAPI" xsi:type="ebl:CustomSecurityHeaderType">
|
|
279
|
+
<Credentials xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:UserIdPasswordType">
|
|
280
|
+
<Username xsi:type="xs:string"/>
|
|
281
|
+
<Password xsi:type="xs:string"/>
|
|
282
|
+
<Subject xsi:type="xs:string"/>
|
|
283
|
+
</Credentials>
|
|
284
|
+
</RequesterCredentials>
|
|
285
|
+
</SOAP-ENV:Header>
|
|
286
|
+
<SOAP-ENV:Body id="_0">
|
|
287
|
+
<SetExpressCheckoutResponse xmlns="urn:ebay:api:PayPalAPI">
|
|
288
|
+
<Timestamp xmlns="urn:ebay:apis:eBLBaseComponents">2008-04-02T17:38:02Z</Timestamp>
|
|
289
|
+
<Ack xmlns="urn:ebay:apis:eBLBaseComponents">Failure</Ack>
|
|
290
|
+
<CorrelationID xmlns="urn:ebay:apis:eBLBaseComponents">cdb720feada30</CorrelationID>
|
|
291
|
+
<Errors xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:ErrorType">
|
|
292
|
+
<ShortMessage xsi:type="xs:string">Shipping Address Invalid City State Postal Code</ShortMessage>
|
|
293
|
+
<LongMessage xsi:type="xs:string">A match of the Shipping Address City, State, and Postal Code failed.</LongMessage>
|
|
294
|
+
<ErrorCode xsi:type="xs:token">10736</ErrorCode>
|
|
295
|
+
<SeverityCode xmlns="urn:ebay:apis:eBLBaseComponents">Error</SeverityCode>
|
|
296
|
+
</Errors>
|
|
297
|
+
<Version xmlns="urn:ebay:apis:eBLBaseComponents">2.000000</Version>
|
|
298
|
+
<Build xmlns="urn:ebay:apis:eBLBaseComponents">543066</Build>
|
|
299
|
+
</SetExpressCheckoutResponse>
|
|
300
|
+
</SOAP-ENV:Body>
|
|
301
|
+
</SOAP-ENV:Envelope>
|
|
302
|
+
RESPONSE
|
|
303
|
+
end
|
|
304
|
+
|
|
305
|
+
def response_with_errors
|
|
306
|
+
<<-RESPONSE
|
|
307
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
308
|
+
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cc="urn:ebay:apis:CoreComponentTypes" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:market="urn:ebay:apis:Market" xmlns:auction="urn:ebay:apis:Auction" xmlns:sizeship="urn:ebay:api:PayPalAPI/sizeship.xsd" xmlns:ship="urn:ebay:apis:ship" xmlns:skype="urn:ebay:apis:skype" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:ebl="urn:ebay:apis:eBLBaseComponents" xmlns:ns="urn:ebay:api:PayPalAPI">
|
|
309
|
+
<SOAP-ENV:Header>
|
|
310
|
+
<Security xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext" xsi:type="wsse:SecurityType"/>
|
|
311
|
+
<RequesterCredentials xmlns="urn:ebay:api:PayPalAPI" xsi:type="ebl:CustomSecurityHeaderType">
|
|
312
|
+
<Credentials xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:UserIdPasswordType">
|
|
313
|
+
<Username xsi:type="xs:string"/>
|
|
314
|
+
<Password xsi:type="xs:string"/>
|
|
315
|
+
<Subject xsi:type="xs:string"/>
|
|
316
|
+
</Credentials>
|
|
317
|
+
</RequesterCredentials>
|
|
318
|
+
</SOAP-ENV:Header>
|
|
319
|
+
<SOAP-ENV:Body id="_0">
|
|
320
|
+
<SetExpressCheckoutResponse xmlns="urn:ebay:api:PayPalAPI">
|
|
321
|
+
<Timestamp xmlns="urn:ebay:apis:eBLBaseComponents">2008-04-02T17:38:02Z</Timestamp>
|
|
322
|
+
<Ack xmlns="urn:ebay:apis:eBLBaseComponents">Failure</Ack>
|
|
323
|
+
<CorrelationID xmlns="urn:ebay:apis:eBLBaseComponents">cdb720feada30</CorrelationID>
|
|
324
|
+
<Errors xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:ErrorType">
|
|
325
|
+
<ShortMessage xsi:type="xs:string">Shipping Address Invalid City State Postal Code</ShortMessage>
|
|
326
|
+
<LongMessage xsi:type="xs:string">A match of the Shipping Address City, State, and Postal Code failed.</LongMessage>
|
|
327
|
+
<ErrorCode xsi:type="xs:token">10736</ErrorCode>
|
|
328
|
+
<SeverityCode xmlns="urn:ebay:apis:eBLBaseComponents">Error</SeverityCode>
|
|
329
|
+
</Errors>
|
|
330
|
+
<Errors xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:ErrorType">
|
|
331
|
+
<ShortMessage xsi:type="xs:string">Authentication/Authorization Failed</ShortMessage>
|
|
332
|
+
<LongMessage xsi:type="xs:string">You do not have permissions to make this API call</LongMessage>
|
|
333
|
+
<ErrorCode xsi:type="xs:token">10002</ErrorCode>
|
|
334
|
+
<SeverityCode xmlns="urn:ebay:apis:eBLBaseComponents">Error</SeverityCode>
|
|
335
|
+
</Errors>
|
|
336
|
+
<Version xmlns="urn:ebay:apis:eBLBaseComponents">2.000000</Version>
|
|
337
|
+
<Build xmlns="urn:ebay:apis:eBLBaseComponents">543066</Build>
|
|
338
|
+
</SetExpressCheckoutResponse>
|
|
339
|
+
</SOAP-ENV:Body>
|
|
340
|
+
</SOAP-ENV:Envelope>
|
|
341
|
+
RESPONSE
|
|
342
|
+
end
|
|
343
|
+
|
|
344
|
+
def response_with_duplicate_errors
|
|
345
|
+
<<-RESPONSE
|
|
346
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
347
|
+
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cc="urn:ebay:apis:CoreComponentTypes" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:market="urn:ebay:apis:Market" xmlns:auction="urn:ebay:apis:Auction" xmlns:sizeship="urn:ebay:api:PayPalAPI/sizeship.xsd" xmlns:ship="urn:ebay:apis:ship" xmlns:skype="urn:ebay:apis:skype" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:ebl="urn:ebay:apis:eBLBaseComponents" xmlns:ns="urn:ebay:api:PayPalAPI">
|
|
348
|
+
<SOAP-ENV:Header>
|
|
349
|
+
<Security xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext" xsi:type="wsse:SecurityType"/>
|
|
350
|
+
<RequesterCredentials xmlns="urn:ebay:api:PayPalAPI" xsi:type="ebl:CustomSecurityHeaderType">
|
|
351
|
+
<Credentials xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:UserIdPasswordType">
|
|
352
|
+
<Username xsi:type="xs:string"/>
|
|
353
|
+
<Password xsi:type="xs:string"/>
|
|
354
|
+
<Subject xsi:type="xs:string"/>
|
|
355
|
+
</Credentials>
|
|
356
|
+
</RequesterCredentials>
|
|
357
|
+
</SOAP-ENV:Header>
|
|
358
|
+
<SOAP-ENV:Body id="_0">
|
|
359
|
+
<SetExpressCheckoutResponse xmlns="urn:ebay:api:PayPalAPI">
|
|
360
|
+
<Timestamp xmlns="urn:ebay:apis:eBLBaseComponents">2008-04-02T17:38:02Z</Timestamp>
|
|
361
|
+
<Ack xmlns="urn:ebay:apis:eBLBaseComponents">Failure</Ack>
|
|
362
|
+
<CorrelationID xmlns="urn:ebay:apis:eBLBaseComponents">cdb720feada30</CorrelationID>
|
|
363
|
+
<Errors xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:ErrorType">
|
|
364
|
+
<ShortMessage xsi:type="xs:string">Shipping Address Invalid City State Postal Code</ShortMessage>
|
|
365
|
+
<LongMessage xsi:type="xs:string">A match of the Shipping Address City, State, and Postal Code failed.</LongMessage>
|
|
366
|
+
<ErrorCode xsi:type="xs:token">10736</ErrorCode>
|
|
367
|
+
<SeverityCode xmlns="urn:ebay:apis:eBLBaseComponents">Error</SeverityCode>
|
|
368
|
+
</Errors>
|
|
369
|
+
<Errors xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:ErrorType">
|
|
370
|
+
<ShortMessage xsi:type="xs:string">Shipping Address Invalid City State Postal Code</ShortMessage>
|
|
371
|
+
<LongMessage xsi:type="xs:string">A match of the Shipping Address City, State, and Postal Code failed.</LongMessage>
|
|
372
|
+
<ErrorCode xsi:type="xs:token">10736</ErrorCode>
|
|
373
|
+
<SeverityCode xmlns="urn:ebay:apis:eBLBaseComponents">Error</SeverityCode>
|
|
374
|
+
</Errors>
|
|
375
|
+
<Version xmlns="urn:ebay:apis:eBLBaseComponents">2.000000</Version>
|
|
376
|
+
<Build xmlns="urn:ebay:apis:eBLBaseComponents">543066</Build>
|
|
377
|
+
</SetExpressCheckoutResponse>
|
|
378
|
+
</SOAP-ENV:Body>
|
|
379
|
+
</SOAP-ENV:Envelope>
|
|
380
|
+
RESPONSE
|
|
381
|
+
end
|
|
382
|
+
end
|