pensio_api 0.2.3 → 0.3.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +3 -0
  3. data/Gemfile.lock +60 -49
  4. data/README.md +39 -1
  5. data/lib/pensio_api.rb +4 -0
  6. data/lib/pensio_api/callback.rb +13 -6
  7. data/lib/pensio_api/chargeback_event.rb +25 -0
  8. data/lib/pensio_api/credentials.rb +48 -2
  9. data/lib/pensio_api/funding_list.rb +3 -3
  10. data/lib/pensio_api/funding_list_request.rb +1 -1
  11. data/lib/pensio_api/mixins/request_defaults.rb +14 -16
  12. data/lib/pensio_api/request.rb +1 -1
  13. data/lib/pensio_api/responses/base.rb +9 -5
  14. data/lib/pensio_api/responses/chargeback_callback.rb +6 -0
  15. data/lib/pensio_api/responses/refund.rb +1 -1
  16. data/lib/pensio_api/responses/reservation.rb +11 -7
  17. data/lib/pensio_api/responses/reservation_capture.rb +6 -3
  18. data/lib/pensio_api/responses/reservation_release.rb +10 -1
  19. data/lib/pensio_api/transaction.rb +28 -4
  20. data/lib/pensio_api/version.rb +3 -0
  21. data/pensio_api.gemspec +5 -1
  22. data/spec/lib/pensio_api/callback_spec.rb +10 -2
  23. data/spec/lib/pensio_api/chargeback_event_spec.rb +37 -0
  24. data/spec/lib/pensio_api/ecommerce_spec.rb +13 -2
  25. data/spec/lib/pensio_api/errors/bad_request_spec.rb +1 -1
  26. data/spec/lib/pensio_api/errors/gateway_error_spec.rb +1 -1
  27. data/spec/lib/pensio_api/request_spec.rb +32 -15
  28. data/spec/lib/pensio_api/responses/base_spec.rb +2 -2
  29. data/spec/lib/pensio_api/responses/chargeback_callback_spec.rb +9 -0
  30. data/spec/lib/pensio_api/responses/funding_list_spec.rb +1 -1
  31. data/spec/lib/pensio_api/responses/refund_spec.rb +1 -1
  32. data/spec/lib/pensio_api/responses/reservation_capture_spec.rb +1 -1
  33. data/spec/lib/pensio_api/responses/reservation_spec.rb +2 -1
  34. data/spec/lib/pensio_api/responses/subscription_charge_spec.rb +1 -1
  35. data/spec/lib/pensio_api/responses/subscription_failure_callback_spec.rb +1 -1
  36. data/spec/lib/pensio_api/responses/success_callback_spec.rb +1 -1
  37. data/spec/lib/pensio_api/responses/terminal_spec.rb +1 -1
  38. data/spec/lib/pensio_api/responses/transaction_spec.rb +1 -1
  39. data/spec/lib/pensio_api/transaction_spec.rb +8 -4
  40. data/spec/spec_helper.rb +1 -1
  41. data/spec/support/fixtures/chargeback_callback.xml +92 -0
  42. data/spec/support/fixtures/reservation_of_fixed_amount.xml +136 -45
  43. metadata +37 -44
@@ -12,7 +12,7 @@ describe PensioAPI::Responses::Refund do
12
12
 
13
13
  describe 'readable attributes' do
14
14
  specify { expect(response.transaction).to be_an_instance_of(PensioAPI::Transaction) }
15
- specify { expect(response.refund_amount).to eq(BigDecimal.new('0.12')) }
15
+ specify { expect(response.refund_amount).to eq(BigDecimal('0.12')) }
16
16
  specify { expect(response.refund_currency).to eq(978) }
17
17
  end
18
18
  end
@@ -12,7 +12,7 @@ describe PensioAPI::Responses::ReservationCapture do
12
12
 
13
13
  describe 'readable attributes' do
14
14
  specify { expect(response.transaction).to be_an_instance_of(PensioAPI::Transaction) }
15
- specify { expect(response.capture_amount).to eq(BigDecimal.new('0.20')) }
15
+ specify { expect(response.capture_amount).to eq(BigDecimal('0.20')) }
16
16
  specify { expect(response.capture_currency).to eq(978) }
17
17
  end
18
18
  end
@@ -10,6 +10,7 @@ describe PensioAPI::Responses::Reservation do
10
10
  specify { expect(response).to be_an_instance_of(PensioAPI::Responses::Reservation) }
11
11
 
12
12
  describe 'readable attributes' do
13
- specify { expect(response.transaction).to be_an_instance_of(PensioAPI::Transaction) }
13
+ specify { expect(response.charge).to be_an_instance_of(PensioAPI::Transaction) }
14
+ specify { expect(response.reservation).to be_an_instance_of(PensioAPI::Transaction) }
14
15
  end
15
16
  end
@@ -37,7 +37,7 @@ describe PensioAPI::Responses::SubscriptionCharge do
37
37
 
38
38
  describe '.captured?' do
39
39
  it 'delegates .captured? to the new transaction' do
40
- response.new.should_receive(:captured?)
40
+ expect(response).to receive(:captured?)
41
41
  response.captured?
42
42
  end
43
43
 
@@ -5,7 +5,7 @@ describe PensioAPI::Responses::SubscriptionFailureCallback do
5
5
  let(:response) { PensioAPI::Callback.parse_failure(file_fixture("subscription_failure_callback.xml")) }
6
6
 
7
7
  it "succeeds" do
8
- expect(response.success?).to be_true
8
+ expect(response.success?).to be true
9
9
  end
10
10
 
11
11
  describe ".reservation" do
@@ -5,7 +5,7 @@ describe PensioAPI::Responses::SuccessCallback do
5
5
  let(:response) { PensioAPI::Callback.parse_success(file_fixture("success_callback.xml")) }
6
6
 
7
7
  it "succeeds" do
8
- expect(response.success?).to be_true
8
+ expect(response.success?).to be true
9
9
  end
10
10
 
11
11
  describe ".reservation" do
@@ -9,7 +9,7 @@ describe PensioAPI::Responses::Terminal do
9
9
 
10
10
  describe 'object mapping' do
11
11
  it 'maps terminals to terminal objects' do
12
- expect(response.terminals.all? { |r| r.class == PensioAPI::Terminal }).to be_true
12
+ expect(response.terminals.all? { |r| r.class == PensioAPI::Terminal }).to be true
13
13
  end
14
14
 
15
15
  specify { expect(response.terminals.length).to eq(2) }
@@ -9,7 +9,7 @@ describe PensioAPI::Responses::Transaction do
9
9
 
10
10
  describe 'object mapping' do
11
11
  it 'maps transactions to transaction objects' do
12
- expect(response.transactions.all? { |r| r.class == PensioAPI::Transaction }).to be_true
12
+ expect(response.transactions.all? { |r| r.class == PensioAPI::Transaction }).to be true
13
13
  end
14
14
 
15
15
  specify { expect(response.transactions.length).to eq(1) }
@@ -31,11 +31,15 @@ describe PensioAPI::Transaction do
31
31
  end
32
32
 
33
33
  describe '.merchant_currency' do
34
- specify { expect(transaction.merchant_currency).to be_an_instance_of(Fixnum) }
34
+ specify { expect(transaction.merchant_currency).to be_an_instance_of(Integer) }
35
35
  end
36
36
 
37
37
  describe '.card_holder_currency' do
38
- specify { expect(transaction.card_holder_currency).to be_an_instance_of(Fixnum) }
38
+ specify { expect(transaction.card_holder_currency).to be_an_instance_of(Integer) }
39
+ end
40
+
41
+ describe '.chargeback_events' do
42
+ specify { expect(transaction.chargeback_events).to be_an_instance_of(Array) }
39
43
  end
40
44
  end
41
45
 
@@ -47,7 +51,7 @@ describe PensioAPI::Transaction do
47
51
  end
48
52
 
49
53
  it 'maps transactions to transaction objects' do
50
- expect(response.all? { |r| r.class == PensioAPI::Transaction }).to be_true
54
+ expect(response.all? { |r| r.class == PensioAPI::Transaction }).to be true
51
55
  end
52
56
 
53
57
  specify { expect(response.transactions.length).to eq(1) }
@@ -87,7 +91,7 @@ describe PensioAPI::Transaction do
87
91
 
88
92
  context 'when the full reserved amount has not been captured' do
89
93
  it 'returns false' do
90
- transaction.stub(:captured_amount).and_return(BigDecimal.new('0'))
94
+ allow(transaction).to receive(:captured_amount).and_return(BigDecimal('0'))
91
95
  expect(transaction).to_not be_captured
92
96
  end
93
97
  end
@@ -6,7 +6,6 @@ require 'pensio_api'
6
6
  require './spec/support/helpers'
7
7
 
8
8
  RSpec.configure do |config|
9
- config.treat_symbols_as_metadata_keys_with_true_values = true
10
9
  config.run_all_when_everything_filtered = true
11
10
  config.filter_run :focus
12
11
 
@@ -16,6 +15,7 @@ RSpec.configure do |config|
16
15
  PensioAPI::Credentials.base_uri = 'https://testgateway.pensio.com'
17
16
  PensioAPI::Credentials.username = 'test_user'
18
17
  PensioAPI::Credentials.password = 'password'
18
+ PensioAPI::Credentials.allow_defaults = true # because some spec examples set up additional creds
19
19
  end
20
20
 
21
21
  # Run specs in random order to surface order dependencies. If you find an
@@ -0,0 +1,92 @@
1
+ <?xml version="1.0"?>
2
+ <APIResponse version="20130430">
3
+ <Header>
4
+ <Date>2014-05-22T11:05:16+02:00</Date>
5
+ <Path>settings/createReconciliationData</Path>
6
+ <ErrorCode>0</ErrorCode>
7
+ <ErrorMessage/>
8
+ </Header>
9
+ <Body>
10
+ <Result>ChargebackEvent</Result>
11
+ <Transactions>
12
+ <Transaction>
13
+ <TransactionId>1093191</TransactionId>
14
+ <AuthType>subscription_payment</AuthType>
15
+ <CardStatus>InvalidLuhn</CardStatus>
16
+ <CreditCardExpiry>
17
+ <Year>2025</Year>
18
+ <Month>11</Month>
19
+ </CreditCardExpiry>
20
+ <CreditCardToken>eba482b9ca1dac29a3964dca21d921c2f91b0d1b</CreditCardToken>
21
+ <CreditCardMaskedPan>415000******1967</CreditCardMaskedPan>
22
+ <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult>
23
+ <CVVCheckResult>Not_Applicable</CVVCheckResult>
24
+ <BlacklistToken>e2e95ffb9979ff7fe0327ba8bd9b4390c2a08e55</BlacklistToken>
25
+ <ShopOrderId>test_order</ShopOrderId>
26
+ <Shop>Test Shop</Shop>
27
+ <Terminal>Test Terminal</Terminal>
28
+ <TransactionStatus>captured</TransactionStatus>
29
+ <MerchantCurrency>978</MerchantCurrency>
30
+ <CardHolderCurrency>978</CardHolderCurrency>
31
+ <ReservedAmount>100.20</ReservedAmount>
32
+ <CapturedAmount>100.20</CapturedAmount>
33
+ <RefundedAmount>0.00</RefundedAmount>
34
+ <RecurringDefaultAmount>0.00</RecurringDefaultAmount>
35
+ <CreatedDate>2014-05-22 11:04:39</CreatedDate>
36
+ <UpdatedDate>2014-05-22 11:04:40</UpdatedDate>
37
+ <PaymentNature>CreditCard</PaymentNature>
38
+ <PaymentSchemeName>Visa</PaymentSchemeName>
39
+ <PaymentNatureService name="SoapTestAcquirer">
40
+ <SupportsRefunds>true</SupportsRefunds>
41
+ <SupportsRelease>true</SupportsRelease>
42
+ <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
43
+ <SupportsMultipleRefunds>true</SupportsMultipleRefunds>
44
+ </PaymentNatureService>
45
+ <AddressVerification>1</AddressVerification>
46
+ <AddressVerificationDescription>Invalid address verification response code</AddressVerificationDescription>
47
+ <ChargebackEvents>
48
+ <ChargebackEvent>
49
+ <Date>2014-05-22T00:00:00+02:00</Date>
50
+ <Type>Chargeback test case</Type>
51
+ <ReasonCode>30</ReasonCode>
52
+ <Reason>chargeback</Reason>
53
+ <Amount>100.20</Amount>
54
+ <Currency>EUR</Currency>
55
+ <AcquirerTransactionId>91816f59-0337-4ab7-8823-b56ee1fae848</AcquirerTransactionId>
56
+ <AdditionalInfo>&lt;additional_info&gt;&lt;info_element&gt;&lt;key&gt;Type&lt;/key&gt;&lt;value&gt;Test&lt;/value&gt;&lt;/info_element&gt;&lt;/additional_info&gt;</AdditionalInfo>
57
+ </ChargebackEvent>
58
+ </ChargebackEvents>
59
+ <PaymentInfos/>
60
+ <CustomerInfo>
61
+ <UserAgent>Mozilla/5.0 (X11; Linux x86_64; rv:29.0) Gecko/20100101 Firefox/29.0</UserAgent>
62
+ <IpAddress>46.208.161.11</IpAddress>
63
+ <Email/>
64
+ <Username/>
65
+ <CustomerPhone/>
66
+ <OrganisationNumber/>
67
+ <CountryOfOrigin>
68
+ <Country>LV</Country>
69
+ <Source>CardNumber</Source>
70
+ </CountryOfOrigin>
71
+ <BillingAddress>
72
+ <Firstname/>
73
+ <Lastname/>
74
+ <Address><![CDATA[11 Test Street]]></Address>
75
+ <City><![CDATA[Eberswalde]]></City>
76
+ <Region><![CDATA[Test]]></Region>
77
+ <Country><![CDATA[DE]]></Country>
78
+ <PostalCode><![CDATA[112233]]></PostalCode>
79
+ </BillingAddress>
80
+ </CustomerInfo>
81
+ <ReconciliationIdentifiers>
82
+ <ReconciliationIdentifier>
83
+ <Id>6c09caac-c6cc-a927-a4f3-f64d7a7102ab</Id>
84
+ <Amount currency="978">100.20</Amount>
85
+ <Type>captured</Type>
86
+ <Date>2014-05-22T11:04:40+02:00</Date>
87
+ </ReconciliationIdentifier>
88
+ </ReconciliationIdentifiers>
89
+ </Transaction>
90
+ </Transactions>
91
+ </Body>
92
+ </APIResponse>
@@ -1,46 +1,137 @@
1
1
  <?xml version="1.0"?>
2
- <APIResponse version="20100929">
3
- <Header>
4
- <Date>2010-09-29T12:34:56+02:00</Date>
5
- <Path>API/reservationOfFixedAmount</Path>
6
- <ErrorCode>0</ErrorCode>
7
- <ErrorMessage></ErrorMessage>
8
- </Header>
9
- <Body>
10
- <Result>Success</Result>
11
- <Transactions>
12
- <Transaction>
13
- <TransactionId>3</TransactionId>
14
- <CardStatus>Valid</CardStatus>
15
- <CreditCardToken>85c1d13de7b5dceb6b739829cc27e089631b0fda</CreditCardToken>
16
- <CreditCardMaskedPan>411111******1111</CreditCardMaskedPan>
17
- <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult>
18
- <BlacklistToken>4f244dec4907eba0f6432e53b17a60ebcf51365e</BlacklistToken>
19
- <ShopOrderId>myorder123</ShopOrderId>
20
- <Shop>Pensio Functional Test Shop</Shop>
21
- <Terminal>Pensio Test Terminal</Terminal>
22
- <TransactionStatus>preauth</TransactionStatus>
23
- <MerchantCurrency>978</MerchantCurrency>
24
- <CardHolderCurrency>978</CardHolderCurrency>
25
- <ReservedAmount>2499.95</ReservedAmount>
26
- <CapturedAmount>0</CapturedAmount>
27
- <RefundedAmount>0</RefundedAmount>
28
- <RecurringDefaultAmount>0</RecurringDefaultAmount>
29
- <CreatedDate>2010-09-28 12:34:56</CreatedDate>
30
- <UpdatedDate>2010-09-28 12:34:56</UpdatedDate>
31
- <PaymentNature>CreditCard</PaymentNature>
32
- <PaymentNatureService name="TestAcquirer">
33
- <SupportsRefunds>true</SupportsRefunds>
34
- <SupportsRelease>true</SupportsRelease>
35
- <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
36
- <SupportsMultipleRefunds>false</SupportsMultipleRefunds>
37
- </PaymentNatureService>
38
- <PaymentInfos>
39
- <PaymentInfo name="Payment_Type">payment</PaymentInfo>
40
- </PaymentInfos>
41
- <CustomerInfo/>
42
- <ReconciliationIdentifiers/>
43
- </Transaction>
44
- </Transactions>
45
- </Body>
46
- </APIResponse>
2
+ <APIResponse version="20130430">
3
+ <Header>
4
+ <Date>2014-11-24T03:09:12+01:00</Date>
5
+ <Path>API/reservationOfFixedAmount</Path>
6
+ <ErrorCode>0</ErrorCode>
7
+ <ErrorMessage/>
8
+ </Header>
9
+ <Body>
10
+ <Result>Success</Result>
11
+ <Transactions>
12
+ <Transaction>
13
+ <TransactionId>1142651</TransactionId>
14
+ <AuthType>subscriptionAndCharge</AuthType>
15
+ <CardStatus>Valid</CardStatus>
16
+ <CreditCardExpiry>
17
+ <Year>2017</Year>
18
+ <Month>11</Month>
19
+ </CreditCardExpiry>
20
+ <CreditCardToken>1cd3d07cc81ce08d3f272bdb9f9c22960354178d</CreditCardToken>
21
+ <CreditCardMaskedPan>477571******6027</CreditCardMaskedPan>
22
+ <ThreeDSecureResult>Disabled</ThreeDSecureResult>
23
+ <CVVCheckResult>Not_Attempted</CVVCheckResult>
24
+ <BlacklistToken>a475e2908a6ab105708003dc14453ae60d32d8c5</BlacklistToken>
25
+ <ShopOrderId>82ab48de_usd-annual_956123_3a4742f998a6a81e0606217681bc41afcfcf9b48232550e517bbb037c5c3555c</ShopOrderId>
26
+ <Shop>ASmallWorld</Shop>
27
+ <Terminal>ASmallWorld CC Import USD</Terminal>
28
+ <TransactionStatus>recurring_confirmed</TransactionStatus>
29
+ <MerchantCurrency>840</MerchantCurrency>
30
+ <CardHolderCurrency>840</CardHolderCurrency>
31
+ <ReservedAmount>133.10</ReservedAmount>
32
+ <CapturedAmount>0.00</CapturedAmount>
33
+ <RefundedAmount>0.00</RefundedAmount>
34
+ <RecurringDefaultAmount>133.10</RecurringDefaultAmount>
35
+ <CreatedDate>2014-11-24 03:09:09</CreatedDate>
36
+ <UpdatedDate>2014-11-24 03:09:11</UpdatedDate>
37
+ <PaymentNature>CreditCard</PaymentNature>
38
+ <PaymentSchemeName>Visa</PaymentSchemeName>
39
+ <PaymentNatureService name="ValitorAcquirer">
40
+ <SupportsRefunds>true</SupportsRefunds>
41
+ <SupportsRelease>true</SupportsRelease>
42
+ <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
43
+ <SupportsMultipleRefunds>true</SupportsMultipleRefunds>
44
+ </PaymentNatureService>
45
+ <ChargebackEvents/>
46
+ <PaymentInfos/>
47
+ <CustomerInfo>
48
+ <UserAgent/>
49
+ <IpAddress/>
50
+ <Email/>
51
+ <Username/>
52
+ <CustomerPhone/>
53
+ <OrganisationNumber/>
54
+ <CountryOfOrigin>
55
+ <Country>IT</Country>
56
+ <Source>CardNumber</Source>
57
+ </CountryOfOrigin>
58
+ <BillingAddress>
59
+ <Firstname/>
60
+ <Lastname/>
61
+ <Address/>
62
+ <City/>
63
+ <Region/>
64
+ <Country/>
65
+ <PostalCode/>
66
+ </BillingAddress>
67
+ </CustomerInfo>
68
+ <ReconciliationIdentifiers/>
69
+ </Transaction>
70
+ <Transaction>
71
+ <TransactionId>1142661</TransactionId>
72
+ <AuthType>subscription_payment</AuthType>
73
+ <CardStatus>Valid</CardStatus>
74
+ <CreditCardExpiry>
75
+ <Year>2017</Year>
76
+ <Month>11</Month>
77
+ </CreditCardExpiry>
78
+ <CreditCardToken>1cd3d07cc81ce08d3f272bdb9f9c22960354178d</CreditCardToken>
79
+ <CreditCardMaskedPan>477571******6027</CreditCardMaskedPan>
80
+ <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult>
81
+ <CVVCheckResult>Not_Applicable</CVVCheckResult>
82
+ <BlacklistToken>a475e2908a6ab105708003dc14453ae60d32d8c5</BlacklistToken>
83
+ <ShopOrderId>82ab48de_usd-annual_956123_3a4742f998a6a81e0606217681bc41afcfcf9b48232550e517bbb037c5c3555c</ShopOrderId>
84
+ <Shop>ASmallWorld</Shop>
85
+ <Terminal>ASmallWorld CC Import USD</Terminal>
86
+ <TransactionStatus>captured</TransactionStatus>
87
+ <MerchantCurrency>840</MerchantCurrency>
88
+ <CardHolderCurrency>840</CardHolderCurrency>
89
+ <ReservedAmount>133.10</ReservedAmount>
90
+ <CapturedAmount>133.10</CapturedAmount>
91
+ <RefundedAmount>0.00</RefundedAmount>
92
+ <RecurringDefaultAmount>0.00</RecurringDefaultAmount>
93
+ <CreatedDate>2014-11-24 03:09:11</CreatedDate>
94
+ <UpdatedDate>2014-11-24 03:09:12</UpdatedDate>
95
+ <PaymentNature>CreditCard</PaymentNature>
96
+ <PaymentSchemeName>Visa</PaymentSchemeName>
97
+ <PaymentNatureService name="ValitorAcquirer">
98
+ <SupportsRefunds>true</SupportsRefunds>
99
+ <SupportsRelease>true</SupportsRelease>
100
+ <SupportsMultipleCaptures>true</SupportsMultipleCaptures>
101
+ <SupportsMultipleRefunds>true</SupportsMultipleRefunds>
102
+ </PaymentNatureService>
103
+ <ChargebackEvents/>
104
+ <PaymentInfos/>
105
+ <CustomerInfo>
106
+ <UserAgent/>
107
+ <IpAddress/>
108
+ <Email/>
109
+ <Username/>
110
+ <CustomerPhone/>
111
+ <OrganisationNumber/>
112
+ <CountryOfOrigin>
113
+ <Country>IT</Country>
114
+ <Source>CardNumber</Source>
115
+ </CountryOfOrigin>
116
+ <BillingAddress>
117
+ <Firstname/>
118
+ <Lastname/>
119
+ <Address/>
120
+ <City/>
121
+ <Region/>
122
+ <Country/>
123
+ <PostalCode/>
124
+ </BillingAddress>
125
+ </CustomerInfo>
126
+ <ReconciliationIdentifiers>
127
+ <ReconciliationIdentifier>
128
+ <Id>1146c933-7a74-440e-ae07-e281004c852f</Id>
129
+ <Amount currency="840">133.10</Amount>
130
+ <Type>captured</Type>
131
+ <Date>2014-11-24T03:09:12+01:00</Date>
132
+ </ReconciliationIdentifier>
133
+ </ReconciliationIdentifiers>
134
+ </Transaction>
135
+ </Transactions>
136
+ </Body>
137
+ </APIResponse>
metadata CHANGED
@@ -1,136 +1,122 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pensio_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
5
- prerelease:
4
+ version: 0.3.4
6
5
  platform: ruby
7
6
  authors:
8
7
  - Michael Sell
9
8
  - Rory Sinclair
10
- autorequire:
9
+ autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-04-29 00:00:00.000000000 Z
12
+ date: 2020-11-05 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: rspec
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
- - - ! '>='
18
+ - - ">="
21
19
  - !ruby/object:Gem::Version
22
20
  version: '2.14'
23
21
  type: :development
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
- - - ! '>='
25
+ - - ">="
29
26
  - !ruby/object:Gem::Version
30
27
  version: '2.14'
31
28
  - !ruby/object:Gem::Dependency
32
29
  name: webmock
33
30
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
31
  requirements:
36
- - - ~>
32
+ - - "~>"
37
33
  - !ruby/object:Gem::Version
38
34
  version: 1.16.1
39
35
  type: :development
40
36
  prerelease: false
41
37
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
38
  requirements:
44
- - - ~>
39
+ - - "~>"
45
40
  - !ruby/object:Gem::Version
46
41
  version: 1.16.1
47
42
  - !ruby/object:Gem::Dependency
48
43
  name: guard
49
44
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
45
  requirements:
52
- - - ~>
46
+ - - "~>"
53
47
  - !ruby/object:Gem::Version
54
48
  version: 2.2.5
55
49
  type: :development
56
50
  prerelease: false
57
51
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
52
  requirements:
60
- - - ~>
53
+ - - "~>"
61
54
  - !ruby/object:Gem::Version
62
55
  version: 2.2.5
63
56
  - !ruby/object:Gem::Dependency
64
57
  name: guard-rspec
65
58
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
59
  requirements:
68
- - - ~>
60
+ - - "~>"
69
61
  - !ruby/object:Gem::Version
70
62
  version: 4.2.4
71
63
  type: :development
72
64
  prerelease: false
73
65
  version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
66
  requirements:
76
- - - ~>
67
+ - - "~>"
77
68
  - !ruby/object:Gem::Version
78
69
  version: 4.2.4
79
70
  - !ruby/object:Gem::Dependency
80
71
  name: httparty
81
72
  requirement: !ruby/object:Gem::Requirement
82
- none: false
83
73
  requirements:
84
- - - ! '>='
74
+ - - ">="
85
75
  - !ruby/object:Gem::Version
86
76
  version: 0.12.0
87
77
  type: :runtime
88
78
  prerelease: false
89
79
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
80
  requirements:
92
- - - ! '>='
81
+ - - ">="
93
82
  - !ruby/object:Gem::Version
94
83
  version: 0.12.0
95
84
  - !ruby/object:Gem::Dependency
96
85
  name: activesupport
97
86
  requirement: !ruby/object:Gem::Requirement
98
- none: false
99
87
  requirements:
100
- - - ! '>='
88
+ - - ">="
101
89
  - !ruby/object:Gem::Version
102
90
  version: '3.2'
103
91
  type: :runtime
104
92
  prerelease: false
105
93
  version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
94
  requirements:
108
- - - ! '>='
95
+ - - ">="
109
96
  - !ruby/object:Gem::Version
110
97
  version: '3.2'
111
98
  - !ruby/object:Gem::Dependency
112
99
  name: multi_xml
113
100
  requirement: !ruby/object:Gem::Requirement
114
- none: false
115
101
  requirements:
116
- - - ! '>='
102
+ - - ">="
117
103
  - !ruby/object:Gem::Version
118
104
  version: 0.5.2
119
105
  type: :runtime
120
106
  prerelease: false
121
107
  version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
108
  requirements:
124
- - - ! '>='
109
+ - - ">="
125
110
  - !ruby/object:Gem::Version
126
111
  version: 0.5.2
127
- description:
112
+ description:
128
113
  email: michael@asw.com
129
114
  executables: []
130
115
  extensions: []
131
116
  extra_rdoc_files: []
132
117
  files:
133
- - .rspec
118
+ - ".gitignore"
119
+ - ".rspec"
134
120
  - Gemfile
135
121
  - Gemfile.lock
136
122
  - Guardfile
@@ -139,6 +125,7 @@ files:
139
125
  - lib/pensio_api.rb
140
126
  - lib/pensio_api/billing_address.rb
141
127
  - lib/pensio_api/callback.rb
128
+ - lib/pensio_api/chargeback_event.rb
142
129
  - lib/pensio_api/credentials.rb
143
130
  - lib/pensio_api/ecommerce.rb
144
131
  - lib/pensio_api/errors/bad_request.rb
@@ -154,6 +141,7 @@ files:
154
141
  - lib/pensio_api/request.rb
155
142
  - lib/pensio_api/reservation.rb
156
143
  - lib/pensio_api/responses/base.rb
144
+ - lib/pensio_api/responses/chargeback_callback.rb
157
145
  - lib/pensio_api/responses/funding_list.rb
158
146
  - lib/pensio_api/responses/gateway_url.rb
159
147
  - lib/pensio_api/responses/refund.rb
@@ -168,9 +156,11 @@ files:
168
156
  - lib/pensio_api/subscription.rb
169
157
  - lib/pensio_api/terminal.rb
170
158
  - lib/pensio_api/transaction.rb
159
+ - lib/pensio_api/version.rb
171
160
  - pensio_api.gemspec
172
161
  - spec/lib/pensio_api/billing_address_spec.rb
173
162
  - spec/lib/pensio_api/callback_spec.rb
163
+ - spec/lib/pensio_api/chargeback_event_spec.rb
174
164
  - spec/lib/pensio_api/ecommerce_spec.rb
175
165
  - spec/lib/pensio_api/errors/bad_request_spec.rb
176
166
  - spec/lib/pensio_api/errors/gateway_error_spec.rb
@@ -179,6 +169,7 @@ files:
179
169
  - spec/lib/pensio_api/request_spec.rb
180
170
  - spec/lib/pensio_api/reservation_spec.rb
181
171
  - spec/lib/pensio_api/responses/base_spec.rb
172
+ - spec/lib/pensio_api/responses/chargeback_callback_spec.rb
182
173
  - spec/lib/pensio_api/responses/funding_list_spec.rb
183
174
  - spec/lib/pensio_api/responses/gateway_url_spec.rb
184
175
  - spec/lib/pensio_api/responses/refund_spec.rb
@@ -197,6 +188,7 @@ files:
197
188
  - spec/support/fixtures/bad_request_error.xml
198
189
  - spec/support/fixtures/capture_reservation.xml
199
190
  - spec/support/fixtures/charge_subscription.xml
191
+ - spec/support/fixtures/chargeback_callback.xml
200
192
  - spec/support/fixtures/create_multi_payment_request.xml
201
193
  - spec/support/fixtures/create_payment_request.xml
202
194
  - spec/support/fixtures/failure_callback.xml
@@ -217,34 +209,33 @@ files:
217
209
  - spec/support/fixtures/subscription_failure_callback.xml
218
210
  - spec/support/fixtures/success_callback.xml
219
211
  - spec/support/helpers.rb
220
- homepage:
212
+ homepage:
221
213
  licenses:
222
214
  - BSD-3-Clause
223
- post_install_message:
215
+ metadata: {}
216
+ post_install_message:
224
217
  rdoc_options: []
225
218
  require_paths:
226
219
  - lib
227
220
  required_ruby_version: !ruby/object:Gem::Requirement
228
- none: false
229
221
  requirements:
230
- - - ! '>='
222
+ - - ">="
231
223
  - !ruby/object:Gem::Version
232
224
  version: '0'
233
225
  required_rubygems_version: !ruby/object:Gem::Requirement
234
- none: false
235
226
  requirements:
236
- - - ! '>='
227
+ - - ">="
237
228
  - !ruby/object:Gem::Version
238
229
  version: '0'
239
230
  requirements: []
240
- rubyforge_project:
241
- rubygems_version: 1.8.23.2
242
- signing_key:
243
- specification_version: 3
231
+ rubygems_version: 3.0.3
232
+ signing_key:
233
+ specification_version: 4
244
234
  summary: Provides integration for the Pensio Merchant API
245
235
  test_files:
246
236
  - spec/lib/pensio_api/billing_address_spec.rb
247
237
  - spec/lib/pensio_api/callback_spec.rb
238
+ - spec/lib/pensio_api/chargeback_event_spec.rb
248
239
  - spec/lib/pensio_api/ecommerce_spec.rb
249
240
  - spec/lib/pensio_api/errors/bad_request_spec.rb
250
241
  - spec/lib/pensio_api/errors/gateway_error_spec.rb
@@ -253,6 +244,7 @@ test_files:
253
244
  - spec/lib/pensio_api/request_spec.rb
254
245
  - spec/lib/pensio_api/reservation_spec.rb
255
246
  - spec/lib/pensio_api/responses/base_spec.rb
247
+ - spec/lib/pensio_api/responses/chargeback_callback_spec.rb
256
248
  - spec/lib/pensio_api/responses/funding_list_spec.rb
257
249
  - spec/lib/pensio_api/responses/gateway_url_spec.rb
258
250
  - spec/lib/pensio_api/responses/refund_spec.rb
@@ -271,6 +263,7 @@ test_files:
271
263
  - spec/support/fixtures/bad_request_error.xml
272
264
  - spec/support/fixtures/capture_reservation.xml
273
265
  - spec/support/fixtures/charge_subscription.xml
266
+ - spec/support/fixtures/chargeback_callback.xml
274
267
  - spec/support/fixtures/create_multi_payment_request.xml
275
268
  - spec/support/fixtures/create_payment_request.xml
276
269
  - spec/support/fixtures/failure_callback.xml