authorizenetsample 0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/lib/CustomerProfiles/create-customer-payment-profile.rb +62 -0
- data/lib/CustomerProfiles/create-customer-profile-from-transaction.rb +51 -0
- data/lib/CustomerProfiles/create-customer-profile.rb +92 -0
- data/lib/CustomerProfiles/create-customer-shipping-address.rb +31 -0
- data/lib/CustomerProfiles/delete-customer-payment-profile.rb +32 -0
- data/lib/CustomerProfiles/delete-customer-profile.rb +31 -0
- data/lib/CustomerProfiles/delete-customer-shipping-address.rb +33 -0
- data/lib/CustomerProfiles/get-accept-customer-profile-page.rb +42 -0
- data/lib/CustomerProfiles/get-customer-payment-profile-list.rb +54 -0
- data/lib/CustomerProfiles/get-customer-payment-profile.rb +40 -0
- data/lib/CustomerProfiles/get-customer-profile-ids.rb +45 -0
- data/lib/CustomerProfiles/get-customer-profile.rb +54 -0
- data/lib/CustomerProfiles/get-customer-shipping-address.rb +41 -0
- data/lib/CustomerProfiles/update-customer-payment-profile.rb +37 -0
- data/lib/CustomerProfiles/update-customer-profile.rb +37 -0
- data/lib/CustomerProfiles/update-customer-shipping-address.rb +37 -0
- data/lib/CustomerProfiles/validate-customer-payment-profile.rb +37 -0
- data/lib/FraudManagement/approve-or-decline-held-transaction.rb +57 -0
- data/lib/FraudManagement/get-held-transaction-list.rb +47 -0
- data/lib/MobileInAppTransactions/create-an-accept-transaction.rb +59 -0
- data/lib/MobileInAppTransactions/create-an-android-pay-transaction.rb +59 -0
- data/lib/MobileInAppTransactions/create-an-apple-pay-transaction.rb +58 -0
- data/lib/PayPalExpressCheckout/authorization-and-capture-continued.rb +69 -0
- data/lib/PayPalExpressCheckout/authorization-and-capture.rb +70 -0
- data/lib/PayPalExpressCheckout/authorization-only-continued.rb +70 -0
- data/lib/PayPalExpressCheckout/authorization-only.rb +71 -0
- data/lib/PayPalExpressCheckout/credit.rb +67 -0
- data/lib/PayPalExpressCheckout/get-details.rb +69 -0
- data/lib/PayPalExpressCheckout/prior-authorization-capture.rb +112 -0
- data/lib/PayPalExpressCheckout/void.rb +113 -0
- data/lib/PaymentTransactions/authorize-credit-card.rb +103 -0
- data/lib/PaymentTransactions/capture-funds-authorized-through-another-channel.rb +60 -0
- data/lib/PaymentTransactions/capture-previously-authorized-amount.rb +104 -0
- data/lib/PaymentTransactions/charge-credit-card.rb +104 -0
- data/lib/PaymentTransactions/charge-customer-profile.rb +61 -0
- data/lib/PaymentTransactions/charge-tokenized-credit-card.rb +60 -0
- data/lib/PaymentTransactions/create-an-accept-payment-transaction.rb +62 -0
- data/lib/PaymentTransactions/credit-bank-account.rb +62 -0
- data/lib/PaymentTransactions/debit-bank-account.rb +64 -0
- data/lib/PaymentTransactions/get-an-accept-payment-page.rb +47 -0
- data/lib/PaymentTransactions/refund-transaction.rb +60 -0
- data/lib/PaymentTransactions/update-split-tender-group.rb +44 -0
- data/lib/PaymentTransactions/void-transaction.rb +103 -0
- data/lib/RecurringBilling/cancel-subscription.rb +36 -0
- data/lib/RecurringBilling/create-subscription-from-customer-profile.rb +52 -0
- data/lib/RecurringBilling/create-subscription.rb +54 -0
- data/lib/RecurringBilling/get-list-of-subscriptions.rb +51 -0
- data/lib/RecurringBilling/get-subscription-status.rb +36 -0
- data/lib/RecurringBilling/get-subscription.rb +42 -0
- data/lib/RecurringBilling/update-subscription.rb +54 -0
- data/lib/TransactionReporting/get-batch-statistics.rb +57 -0
- data/lib/TransactionReporting/get-customer-profile-transaction-list.rb +49 -0
- data/lib/TransactionReporting/get-merchant-details.rb +50 -0
- data/lib/TransactionReporting/get-settled-batch-list.rb +49 -0
- data/lib/TransactionReporting/get-transaction-details.rb +40 -0
- data/lib/TransactionReporting/get-transaction-list.rb +58 -0
- data/lib/TransactionReporting/get-unsettled-transaction-list.rb +48 -0
- data/lib/VisaCheckout/create-visa-checkout-transaction.rb +62 -0
- data/lib/VisaCheckout/decrypt-visa-checkout-data.rb +37 -0
- data/lib/authorize_netsample.rb +16 -0
- data/lib/authorizenetsample.rb +4 -0
- data/lib/credentials.yml +9 -0
- data/lib/spec/sample_code_spec.rb +320 -0
- data/lib/spec/spec.opts +2 -0
- data/lib/spec/spec_helper.rb +10 -0
- data/lib/spec/support/shared_helper.rb +7 -0
- metadata +110 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: acd1898714f896152a7188e232493ffcfe99d01a
|
4
|
+
data.tar.gz: 3d1ce2059c568799fc7c1732e073ed2c5b5bf2c5
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: e8f07e03ebf2ddb5f4b1881b18d5d104110be14f62e1ea746a81137649f8f470aa460618bdbc2f6059c1fbc0a0b25ffe1af7f692e2075d23eca2edd273410fa7
|
7
|
+
data.tar.gz: 22c85d9c2faa6f6d06e137dfa41bd499871ea69b25a0f20fba71023bc99927c293e213f0e7a8af52983827f1319b2e10f0aa8a25c8e37c3f452a4953d5b50a90
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def create_customer_payment_profile(customerProfileId = '1813343337')
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
11
|
+
|
12
|
+
# Build the payment object
|
13
|
+
payment = PaymentType.new(CreditCardType.new)
|
14
|
+
payment.creditCard.cardNumber = '4111111111111111'
|
15
|
+
payment.creditCard.expirationDate = '2022-05'
|
16
|
+
|
17
|
+
# Build an address object
|
18
|
+
billTo = CustomerAddressType.new
|
19
|
+
billTo.firstName = "Jerry"
|
20
|
+
billTo.lastName = "Johnson"
|
21
|
+
billTo.company = "Souveniropolis"
|
22
|
+
billTo.address = "14 Main Street"
|
23
|
+
billTo.city = "Pecan Springs"
|
24
|
+
billTo.state = "TX"
|
25
|
+
billTo.zip = "44628"
|
26
|
+
billTo.country = "US"
|
27
|
+
billTo.phoneNumber = "999-999-9999"
|
28
|
+
billTo.faxNumber = "999-999-9999"
|
29
|
+
|
30
|
+
# Use the previously defined payment and billTo objects to
|
31
|
+
# build a payment profile to send with the request
|
32
|
+
paymentProfile = CustomerPaymentProfileType.new
|
33
|
+
paymentProfile.payment = payment
|
34
|
+
paymentProfile.billTo = billTo
|
35
|
+
paymentProfile.defaultPaymentProfile = true
|
36
|
+
|
37
|
+
# Build the request object
|
38
|
+
request = CreateCustomerPaymentProfileRequest.new
|
39
|
+
request.paymentProfile = paymentProfile
|
40
|
+
request.customerProfileId = customerProfileId
|
41
|
+
request.validationMode = ValidationModeEnum::LiveMode
|
42
|
+
|
43
|
+
response = transaction.create_customer_payment_profile(request)
|
44
|
+
|
45
|
+
if response != nil
|
46
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
47
|
+
puts "Successfully created a customer payment profile with id: #{response.customerPaymentProfileId}."
|
48
|
+
else
|
49
|
+
puts response.messages.messages[0].code
|
50
|
+
puts response.messages.messages[0].text
|
51
|
+
puts "Failed to create a new customer payment profile."
|
52
|
+
end
|
53
|
+
else
|
54
|
+
puts "Response is null"
|
55
|
+
raise "Failed to create a new customer payment profile."
|
56
|
+
end
|
57
|
+
return response
|
58
|
+
end
|
59
|
+
|
60
|
+
if __FILE__ == $0
|
61
|
+
create_customer_payment_profile()
|
62
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def create_customer_profile_from_a_transaction(transId = 60031516226)
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
|
11
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
12
|
+
|
13
|
+
|
14
|
+
request = CreateCustomerProfileFromTransactionRequest.new
|
15
|
+
request.transId = transId
|
16
|
+
|
17
|
+
# You can either specify the customer information to create a new customer profile
|
18
|
+
# or, specify an existing customer profile ID to create a new customer payment profile
|
19
|
+
# attached to the existing customer profile. If no profile information is specified,
|
20
|
+
# a new profile will still be created as long as either an ID or email exists in the
|
21
|
+
# original transaction that can be used to identify a new profile.
|
22
|
+
#
|
23
|
+
# To create a new customer profile containing a payment profile with this transaction's
|
24
|
+
# payment information, submit the new profile information in the form of a
|
25
|
+
# customerProfileBaseType object
|
26
|
+
request.customer = CustomerProfileBaseType.new
|
27
|
+
request.customer.merchantCustomerId = "1231232"
|
28
|
+
request.customer.description = "This is a sample customer profile"
|
29
|
+
request.customer.email = "johnsnow@castleblack.com"
|
30
|
+
# -OR- to create a payment profile under an existing customer profile,
|
31
|
+
# just provide the customer Profile ID
|
32
|
+
# customerProfileId = "123343"
|
33
|
+
|
34
|
+
response = transaction.create_customer_profile_from_transaction(request)
|
35
|
+
|
36
|
+
|
37
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
38
|
+
puts "Successfully created a customer profile from transaction ID #{transId}"
|
39
|
+
puts "Customer profile ID: #{response.customerProfileId}"
|
40
|
+
puts "New customer payment profile ID: #{response.customerPaymentProfileIdList.numericString[0]}"
|
41
|
+
puts "New customer shipping profile ID (if created): #{response.customerShippingAddressIdList.numericString[0]}"
|
42
|
+
else
|
43
|
+
puts response.messages.messages[0].text
|
44
|
+
raise "Failed to create a customer profile from an existing transaction."
|
45
|
+
end
|
46
|
+
return response
|
47
|
+
end
|
48
|
+
|
49
|
+
if __FILE__ == $0
|
50
|
+
create_customer_profile_from_a_transaction()
|
51
|
+
end
|
@@ -0,0 +1,92 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def create_customer_profile()
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
11
|
+
|
12
|
+
# Build the payment object
|
13
|
+
payment = PaymentType.new(CreditCardType.new)
|
14
|
+
payment.creditCard.cardNumber = '4111111111111111'
|
15
|
+
payment.creditCard.expirationDate = '2020-05'
|
16
|
+
|
17
|
+
# Build an address object
|
18
|
+
billTo = CustomerAddressType.new
|
19
|
+
billTo.firstName = "Ellen"
|
20
|
+
billTo.lastName = "Johnson"
|
21
|
+
billTo.company = "Souveniropolis"
|
22
|
+
billTo.address = "14 Main Street"
|
23
|
+
billTo.city = "Pecan Springs"
|
24
|
+
billTo.state = "TX"
|
25
|
+
billTo.zip = "44628"
|
26
|
+
billTo.country = "US"
|
27
|
+
billTo.phoneNumber = "999-999-9999"
|
28
|
+
billTo.faxNumber = "999-999-9999"
|
29
|
+
|
30
|
+
# Use the previously defined payment and billTo objects to
|
31
|
+
# build a payment profile to send with the request
|
32
|
+
paymentProfile = CustomerPaymentProfileType.new
|
33
|
+
paymentProfile.payment = payment
|
34
|
+
paymentProfile.billTo = billTo
|
35
|
+
paymentProfile.defaultPaymentProfile = true
|
36
|
+
|
37
|
+
# Build a shipping address to send with the request
|
38
|
+
shippingAddress = CustomerAddressType.new
|
39
|
+
shippingAddress.firstName = "John"
|
40
|
+
shippingAddress.lastName = "Snow"
|
41
|
+
shippingAddress.company = "Night's Watch, Inc."
|
42
|
+
shippingAddress.address = "Castle Black"
|
43
|
+
shippingAddress.city = "The Wall"
|
44
|
+
shippingAddress.state = "North Westeros"
|
45
|
+
shippingAddress.zip = "99499"
|
46
|
+
shippingAddress.country = "Westeros"
|
47
|
+
shippingAddress.phoneNumber = "999-999-9999"
|
48
|
+
shippingAddress.faxNumber = "999-999-9999"
|
49
|
+
|
50
|
+
# Build the request object
|
51
|
+
request = CreateCustomerProfileRequest.new
|
52
|
+
# Build the profile object containing the main information about the customer profile
|
53
|
+
request.profile = CustomerProfileType.new
|
54
|
+
request.profile.merchantCustomerId = 'jdoe' + rand(10000).to_s
|
55
|
+
request.profile.description = 'John2 Doe'
|
56
|
+
request.profile.email = rand(10000).to_s + '@mail.com'
|
57
|
+
# Add the payment profile and shipping profile defined previously
|
58
|
+
request.profile.paymentProfiles = [paymentProfile]
|
59
|
+
request.profile.shipToList = [shippingAddress]
|
60
|
+
request.validationMode = ValidationModeEnum::LiveMode
|
61
|
+
|
62
|
+
response = transaction.create_customer_profile(request)
|
63
|
+
puts response.messages.resultCode
|
64
|
+
|
65
|
+
if response != nil
|
66
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
67
|
+
puts "Successfully created a customer profile with id: #{response.customerProfileId}"
|
68
|
+
puts " Customer Payment Profile Id List:"
|
69
|
+
response.customerPaymentProfileIdList.numericString.each do |id|
|
70
|
+
puts " #{id}"
|
71
|
+
end
|
72
|
+
puts " Customer Shipping Address Id List:"
|
73
|
+
response.customerShippingAddressIdList.numericString.each do |id|
|
74
|
+
puts " #{id}"
|
75
|
+
end
|
76
|
+
puts
|
77
|
+
else
|
78
|
+
puts response.messages.messages[0].code
|
79
|
+
puts response.messages.messages[0].text
|
80
|
+
raise "Failed to create a new customer profile."
|
81
|
+
end
|
82
|
+
else
|
83
|
+
puts "Response is null"
|
84
|
+
raise "Failed to create a new customer profile."
|
85
|
+
end
|
86
|
+
|
87
|
+
return response
|
88
|
+
end
|
89
|
+
|
90
|
+
if __FILE__ == $0
|
91
|
+
create_customer_profile()
|
92
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def create_customer_shipping_address(customerProfileId = '1813343337')
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
|
11
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
12
|
+
|
13
|
+
|
14
|
+
request = CreateCustomerShippingAddressRequest.new
|
15
|
+
|
16
|
+
request.address = CustomerAddressType.new('John','Doe')
|
17
|
+
request.customerProfileId = customerProfileId
|
18
|
+
response = transaction.create_customer_shipping_profile(request)
|
19
|
+
|
20
|
+
|
21
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
22
|
+
puts "Successfully created a customer shipping address with id: #{response.customerAddressId}."
|
23
|
+
else
|
24
|
+
puts "Failed to create a new customer shipping address: #{response.messages.messages[0].text}"
|
25
|
+
end
|
26
|
+
return response
|
27
|
+
end
|
28
|
+
|
29
|
+
if __FILE__ == $0
|
30
|
+
create_customer_shipping_address()
|
31
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def delete_customer_payment_profile(customerProfileId='35894174', customerPaymentProfileId='33604709')
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
|
11
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
12
|
+
|
13
|
+
|
14
|
+
request = DeleteCustomerPaymentProfileRequest.new
|
15
|
+
request.customerProfileId = customerProfileId
|
16
|
+
request.customerPaymentProfileId = customerPaymentProfileId
|
17
|
+
|
18
|
+
response = transaction.delete_customer_payment_profile(request)
|
19
|
+
|
20
|
+
|
21
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
22
|
+
puts "Successfully deleted payment profile with customer payment profile ID #{request.customerPaymentProfileId}."
|
23
|
+
else
|
24
|
+
puts "Failed to delete payment profile with profile ID #{request.customerPaymentProfileId}: #{response.messages.messages[0].text}"
|
25
|
+
end
|
26
|
+
return response
|
27
|
+
end
|
28
|
+
|
29
|
+
if __FILE__ == $0
|
30
|
+
delete_customer_payment_profile()
|
31
|
+
end
|
32
|
+
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def delete_customer_profile(customerProfileId = '36551110')
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
|
11
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
12
|
+
|
13
|
+
|
14
|
+
request = DeleteCustomerProfileRequest.new
|
15
|
+
request.customerProfileId = customerProfileId
|
16
|
+
|
17
|
+
response = transaction.delete_customer_profile(request)
|
18
|
+
|
19
|
+
|
20
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
21
|
+
puts "Successfully deleted customer with customer profile ID #{request.customerProfileId}."
|
22
|
+
else
|
23
|
+
puts response.messages.messages[0].text
|
24
|
+
raise "Failed to delete customer with customer profile ID #{request.customerProfileId}."
|
25
|
+
end
|
26
|
+
return response
|
27
|
+
end
|
28
|
+
|
29
|
+
if __FILE__ == $0
|
30
|
+
delete_customer_profile()
|
31
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def delete_customer_shipping_address(customerProfileId = '36551110', customerAddressId = '35894174')
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
|
11
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
12
|
+
|
13
|
+
|
14
|
+
request = DeleteCustomerShippingAddressRequest.new
|
15
|
+
request.customerProfileId = customerProfileId
|
16
|
+
request.customerAddressId = customerAddressId
|
17
|
+
|
18
|
+
response = transaction.delete_customer_shipping_profile(request)
|
19
|
+
|
20
|
+
|
21
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
22
|
+
puts "Successfully deleted shipping address with customer shipping profile ID #{request.customerAddressId}."
|
23
|
+
else
|
24
|
+
puts response.messages.messages[0].text
|
25
|
+
raise "Failed to delete payment profile with profile ID #{request.customerAddressId}."
|
26
|
+
end
|
27
|
+
return response
|
28
|
+
end
|
29
|
+
|
30
|
+
if __FILE__ == $0
|
31
|
+
delete_customer_shipping_address()
|
32
|
+
end
|
33
|
+
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def get_accept_customer_profile_page(customerProfileId = '37696245')
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
|
11
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
12
|
+
|
13
|
+
setting = SettingType.new
|
14
|
+
setting.settingName = SettingNameEnum::HostedProfileReturnUrl
|
15
|
+
setting.settingValue = "https://returnurl.com/return/"
|
16
|
+
|
17
|
+
settings = Settings.new([setting])
|
18
|
+
|
19
|
+
|
20
|
+
request = GetHostedProfilePageRequest.new
|
21
|
+
request.customerProfileId = customerProfileId
|
22
|
+
request.refId = ""
|
23
|
+
request.hostedProfileSettings = settings
|
24
|
+
|
25
|
+
response = transaction.get_hosted_profile_page(request)
|
26
|
+
|
27
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
28
|
+
puts "Successfully got Accept Customer page token."
|
29
|
+
puts " Response code: #{response.messages.messages[0].code}"
|
30
|
+
puts " Response message: #{response.messages.messages[0].text}"
|
31
|
+
puts " Token: #{response.token}"
|
32
|
+
else
|
33
|
+
puts "#{response.messages.messages[0].code}"
|
34
|
+
puts "#{response.messages.messages[0].text}"
|
35
|
+
raise "Failed to get hosted profile page with customer profile ID #{request.customerProfileId}"
|
36
|
+
end
|
37
|
+
return response
|
38
|
+
end
|
39
|
+
|
40
|
+
if __FILE__ == $0
|
41
|
+
get_accept_customer_profile_page()
|
42
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'yaml'
|
3
|
+
require 'authorizenet'
|
4
|
+
require 'securerandom'
|
5
|
+
|
6
|
+
include AuthorizeNet::API
|
7
|
+
|
8
|
+
def get_customer_payment_profile_list()
|
9
|
+
config = YAML.load_file(File.dirname(__FILE__) + "/../credentials.yml")
|
10
|
+
|
11
|
+
transaction = Transaction.new(config['api_login_id'], config['api_transaction_key'], :gateway => :sandbox)
|
12
|
+
|
13
|
+
searchTypeEnum = CustomerPaymentProfileSearchTypeEnum::CardsExpiringInMonth
|
14
|
+
sorting = CustomerPaymentProfileSorting.new
|
15
|
+
orderByEnum = CustomerPaymentProfileOrderFieldEnum::Id
|
16
|
+
sorting.orderBy = orderByEnum
|
17
|
+
sorting.orderDescending = false
|
18
|
+
|
19
|
+
paging = Paging.new
|
20
|
+
paging.limit = 1000
|
21
|
+
paging.offset = 1
|
22
|
+
|
23
|
+
|
24
|
+
request = GetCustomerPaymentProfileListRequest.new
|
25
|
+
|
26
|
+
request.searchType = searchTypeEnum
|
27
|
+
request.month = "2020-12"
|
28
|
+
request.sorting = sorting
|
29
|
+
request.paging = paging
|
30
|
+
|
31
|
+
response = transaction.get_customer_payment_profile_list(request)
|
32
|
+
|
33
|
+
if response.messages.resultCode == MessageTypeEnum::Ok
|
34
|
+
puts "Successfully got customer payment profile list."
|
35
|
+
puts response.messages.messages[0].code
|
36
|
+
puts response.messages.messages[0].text
|
37
|
+
puts " Total number in result set: #{response.totalNumInResultSet}"
|
38
|
+
# response.paymentProfiles.paymentProfile.each do |paymentProfile|
|
39
|
+
# puts "Payment profile ID = #{paymentProfile.customerPaymentProfileId}"
|
40
|
+
# puts "First Name in Billing Address = #{paymentProfile.billTo.firstName}"
|
41
|
+
# puts "Credit Card Number = #{paymentProfile.payment.creditCard.cardNumber}"
|
42
|
+
# end
|
43
|
+
else
|
44
|
+
puts response.messages.messages[0].code
|
45
|
+
puts response.messages.messages[0].text
|
46
|
+
raise "Failed to get customer payment profile list"
|
47
|
+
end
|
48
|
+
return response
|
49
|
+
end
|
50
|
+
|
51
|
+
if __FILE__ == $0
|
52
|
+
get_customer_payment_profile_list()
|
53
|
+
end
|
54
|
+
|