blockchyp 2.10.0 → 2.11.0
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.
- checksums.yaml +4 -4
- data/README.md +117 -0
- data/lib/blockchyp/version.rb +1 -1
- data/lib/blockchyp.rb +15 -0
- data/test/delete_token_test.rb +6 -1
- data/test/link_token_test.rb +52 -0
- data/test/pan_enroll_test.rb +6 -1
- data/test/simple_ping_test.rb +1 -1
- data/test/terminal_charge_test.rb +1 -1
- data/test/token_metadata_test.rb +51 -0
- data/test/unlink_token_test.rb +52 -0
- metadata +5 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '0386059a39ae5610e197ad1ec670c6dff70341d7cc2a5a0dab7331f76cecb2e2'
|
|
4
|
+
data.tar.gz: fdcfaed2c9345ccba05aac145fec1d4ed67e11094548f2239daa30e35a318fd8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bc35d1405ca25dfb34c72e1ad3af2bed582d1fa8f18c8f20c64f5fb394a241f2914d820f6bd1ee751fbe5322c9654f6ce115021745ee71de7ae89e09bdd09923
|
|
7
|
+
data.tar.gz: d8882653dfd8cc174adcab2148fe2d3e5ec0ac45128bdccff26ec1b021482a06b472160277820d7d8b54d5f818411e489dd5d640e9c0d223c0a00d9a9972e636
|
data/README.md
CHANGED
|
@@ -1685,6 +1685,15 @@ None of the above filters are mutually exclusive. You can combine any of the
|
|
|
1685
1685
|
above properties in a single request to restrict transaction results to a
|
|
1686
1686
|
narrower set of results.
|
|
1687
1687
|
|
|
1688
|
+
**Searching Transaction History**
|
|
1689
|
+
|
|
1690
|
+
You can search transaction history by passing in search criteria with the
|
|
1691
|
+
`query` option. The search system will match on amount (requested and authorized),
|
|
1692
|
+
last four of the card number, cardholder name, and the auth code.
|
|
1693
|
+
|
|
1694
|
+
Note that when search queries are used, terminalName or
|
|
1695
|
+
batch id filters are not supported.
|
|
1696
|
+
|
|
1688
1697
|
|
|
1689
1698
|
|
|
1690
1699
|
|
|
@@ -1875,6 +1884,114 @@ response = blockchyp.deleteToken(request)
|
|
|
1875
1884
|
puts "Response: #{response.inspect}"
|
|
1876
1885
|
|
|
1877
1886
|
|
|
1887
|
+
```
|
|
1888
|
+
|
|
1889
|
+
#### Token Metadata
|
|
1890
|
+
|
|
1891
|
+
|
|
1892
|
+
|
|
1893
|
+
Retrieves status and metadata information about a token,
|
|
1894
|
+
including any links to customer records.
|
|
1895
|
+
|
|
1896
|
+
This will also return any customer records related to the card
|
|
1897
|
+
behind the token. If the underlying card has been tokenized
|
|
1898
|
+
multiple times, all customers related to the card will be returned,
|
|
1899
|
+
even if those customer associations are related to other tokens.
|
|
1900
|
+
|
|
1901
|
+
|
|
1902
|
+
|
|
1903
|
+
|
|
1904
|
+
```ruby
|
|
1905
|
+
# frozen_string_literal: true
|
|
1906
|
+
|
|
1907
|
+
require 'blockchyp'
|
|
1908
|
+
|
|
1909
|
+
blockchyp = BlockChyp::BlockChyp.new(
|
|
1910
|
+
ENV['BC_API_KEY'],
|
|
1911
|
+
ENV['BC_BEARER_TOKEN'],
|
|
1912
|
+
ENV['BC_SIGNING_KEY']
|
|
1913
|
+
)
|
|
1914
|
+
|
|
1915
|
+
# Set request parameters
|
|
1916
|
+
request = {
|
|
1917
|
+
token: 'Token to retrieve'
|
|
1918
|
+
}
|
|
1919
|
+
|
|
1920
|
+
response = blockchyp.tokenMetadata(request)
|
|
1921
|
+
|
|
1922
|
+
puts "Response: #{response.inspect}"
|
|
1923
|
+
|
|
1924
|
+
|
|
1925
|
+
```
|
|
1926
|
+
|
|
1927
|
+
#### Link Token
|
|
1928
|
+
|
|
1929
|
+
|
|
1930
|
+
|
|
1931
|
+
Links a payment token with a customer record. Usually this would only be used
|
|
1932
|
+
to reverse a previous unlink operation.
|
|
1933
|
+
|
|
1934
|
+
|
|
1935
|
+
|
|
1936
|
+
|
|
1937
|
+
```ruby
|
|
1938
|
+
# frozen_string_literal: true
|
|
1939
|
+
|
|
1940
|
+
require 'blockchyp'
|
|
1941
|
+
|
|
1942
|
+
blockchyp = BlockChyp::BlockChyp.new(
|
|
1943
|
+
ENV['BC_API_KEY'],
|
|
1944
|
+
ENV['BC_BEARER_TOKEN'],
|
|
1945
|
+
ENV['BC_SIGNING_KEY']
|
|
1946
|
+
)
|
|
1947
|
+
|
|
1948
|
+
# Set request parameters
|
|
1949
|
+
request = {
|
|
1950
|
+
token: 'Token to link',
|
|
1951
|
+
customerId: 'Customer to link'
|
|
1952
|
+
}
|
|
1953
|
+
|
|
1954
|
+
response = blockchyp.linkToken(request)
|
|
1955
|
+
|
|
1956
|
+
puts "Response: #{response.inspect}"
|
|
1957
|
+
|
|
1958
|
+
|
|
1959
|
+
```
|
|
1960
|
+
|
|
1961
|
+
#### Unlink Token
|
|
1962
|
+
|
|
1963
|
+
|
|
1964
|
+
|
|
1965
|
+
Removes a payment token link from a customer record.
|
|
1966
|
+
|
|
1967
|
+
This will remove links between the customer record and all tokens
|
|
1968
|
+
for the same underlying card.
|
|
1969
|
+
|
|
1970
|
+
|
|
1971
|
+
|
|
1972
|
+
|
|
1973
|
+
```ruby
|
|
1974
|
+
# frozen_string_literal: true
|
|
1975
|
+
|
|
1976
|
+
require 'blockchyp'
|
|
1977
|
+
|
|
1978
|
+
blockchyp = BlockChyp::BlockChyp.new(
|
|
1979
|
+
ENV['BC_API_KEY'],
|
|
1980
|
+
ENV['BC_BEARER_TOKEN'],
|
|
1981
|
+
ENV['BC_SIGNING_KEY']
|
|
1982
|
+
)
|
|
1983
|
+
|
|
1984
|
+
# Set request parameters
|
|
1985
|
+
request = {
|
|
1986
|
+
token: 'Token to unlink',
|
|
1987
|
+
customerId: 'Customer to unlink'
|
|
1988
|
+
}
|
|
1989
|
+
|
|
1990
|
+
response = blockchyp.unlinkToken(request)
|
|
1991
|
+
|
|
1992
|
+
puts "Response: #{response.inspect}"
|
|
1993
|
+
|
|
1994
|
+
|
|
1878
1995
|
```
|
|
1879
1996
|
|
|
1880
1997
|
## Running Integration Tests
|
data/lib/blockchyp/version.rb
CHANGED
data/lib/blockchyp.rb
CHANGED
|
@@ -244,5 +244,20 @@ module BlockChyp
|
|
|
244
244
|
gateway_request('DELETE', '/api/token/' + request[:token], request)
|
|
245
245
|
end
|
|
246
246
|
|
|
247
|
+
# Retrieves payment token metadata.
|
|
248
|
+
def token_metadata(request)
|
|
249
|
+
gateway_request('GET', '/api/token/' + request[:token], request)
|
|
250
|
+
end
|
|
251
|
+
|
|
252
|
+
# Links a token to a customer record.
|
|
253
|
+
def link_token(request)
|
|
254
|
+
gateway_request('POST', '/api/link-token', request)
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
# Removes a link between a customer and a token.
|
|
258
|
+
def unlink_token(request)
|
|
259
|
+
gateway_request('POST', '/api/unlink-token', request)
|
|
260
|
+
end
|
|
261
|
+
|
|
247
262
|
end
|
|
248
263
|
end
|
data/test/delete_token_test.rb
CHANGED
|
@@ -26,7 +26,12 @@ module BlockChyp
|
|
|
26
26
|
# Set request parameters
|
|
27
27
|
setup_request = {
|
|
28
28
|
pan: '4111111111111111',
|
|
29
|
-
test: true
|
|
29
|
+
test: true,
|
|
30
|
+
customer: {
|
|
31
|
+
customerRef: 'TESTCUSTOMER',
|
|
32
|
+
firstName: 'Test',
|
|
33
|
+
lastName: 'Customer'
|
|
34
|
+
}
|
|
30
35
|
}
|
|
31
36
|
|
|
32
37
|
response = blockchyp.enroll(setup_request)
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2019 BlockChyp, Inc. All rights reserved. Use of this code is
|
|
4
|
+
# governed by a license that can be found in the LICENSE file.
|
|
5
|
+
#
|
|
6
|
+
# This file was generated automatically. Changes to this file will be lost
|
|
7
|
+
# every time the code is regenerated.
|
|
8
|
+
|
|
9
|
+
require ::File.expand_path('test_helper', __dir__)
|
|
10
|
+
|
|
11
|
+
module BlockChyp
|
|
12
|
+
class LinkTokenTest < TestCase
|
|
13
|
+
def test_link_token
|
|
14
|
+
config = load_test_config
|
|
15
|
+
|
|
16
|
+
blockchyp = BlockChyp.new(
|
|
17
|
+
config[:apiKey],
|
|
18
|
+
config[:bearerToken],
|
|
19
|
+
config[:signingKey]
|
|
20
|
+
)
|
|
21
|
+
blockchyp.gateway_host = config[:gatewayHost]
|
|
22
|
+
blockchyp.test_gateway_host = config[:testGatewayHost]
|
|
23
|
+
|
|
24
|
+
test_delay(blockchyp, 'link_token_test', config[:defaultTerminalName])
|
|
25
|
+
|
|
26
|
+
# Set request parameters
|
|
27
|
+
setup_request = {
|
|
28
|
+
pan: '4111111111111111',
|
|
29
|
+
test: true,
|
|
30
|
+
customer: {
|
|
31
|
+
customerRef: 'TESTCUSTOMER',
|
|
32
|
+
firstName: 'Test',
|
|
33
|
+
lastName: 'Customer'
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
response = blockchyp.enroll(setup_request)
|
|
38
|
+
|
|
39
|
+
# Set request parameters
|
|
40
|
+
request = {
|
|
41
|
+
token: response[:token],
|
|
42
|
+
customerId: response[:customer][:id]
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
response = blockchyp.link_token(request)
|
|
46
|
+
|
|
47
|
+
assert_not_nil(response)
|
|
48
|
+
# response assertions
|
|
49
|
+
assert(response[:success])
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
data/test/pan_enroll_test.rb
CHANGED
|
@@ -26,7 +26,12 @@ module BlockChyp
|
|
|
26
26
|
# Set request parameters
|
|
27
27
|
request = {
|
|
28
28
|
pan: '4111111111111111',
|
|
29
|
-
test: true
|
|
29
|
+
test: true,
|
|
30
|
+
customer: {
|
|
31
|
+
customerRef: 'TESTCUSTOMER',
|
|
32
|
+
firstName: 'Test',
|
|
33
|
+
lastName: 'Customer'
|
|
34
|
+
}
|
|
30
35
|
}
|
|
31
36
|
|
|
32
37
|
response = blockchyp.enroll(request)
|
data/test/simple_ping_test.rb
CHANGED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2019 BlockChyp, Inc. All rights reserved. Use of this code is
|
|
4
|
+
# governed by a license that can be found in the LICENSE file.
|
|
5
|
+
#
|
|
6
|
+
# This file was generated automatically. Changes to this file will be lost
|
|
7
|
+
# every time the code is regenerated.
|
|
8
|
+
|
|
9
|
+
require ::File.expand_path('test_helper', __dir__)
|
|
10
|
+
|
|
11
|
+
module BlockChyp
|
|
12
|
+
class TokenMetadataTest < TestCase
|
|
13
|
+
def test_token_metadata
|
|
14
|
+
config = load_test_config
|
|
15
|
+
|
|
16
|
+
blockchyp = BlockChyp.new(
|
|
17
|
+
config[:apiKey],
|
|
18
|
+
config[:bearerToken],
|
|
19
|
+
config[:signingKey]
|
|
20
|
+
)
|
|
21
|
+
blockchyp.gateway_host = config[:gatewayHost]
|
|
22
|
+
blockchyp.test_gateway_host = config[:testGatewayHost]
|
|
23
|
+
|
|
24
|
+
test_delay(blockchyp, 'token_metadata_test', config[:defaultTerminalName])
|
|
25
|
+
|
|
26
|
+
# Set request parameters
|
|
27
|
+
setup_request = {
|
|
28
|
+
pan: '4111111111111111',
|
|
29
|
+
test: true,
|
|
30
|
+
customer: {
|
|
31
|
+
customerRef: 'TESTCUSTOMER',
|
|
32
|
+
firstName: 'Test',
|
|
33
|
+
lastName: 'Customer'
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
response = blockchyp.enroll(setup_request)
|
|
38
|
+
|
|
39
|
+
# Set request parameters
|
|
40
|
+
request = {
|
|
41
|
+
token: response[:token]
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
response = blockchyp.token_metadata(request)
|
|
45
|
+
|
|
46
|
+
assert_not_nil(response)
|
|
47
|
+
# response assertions
|
|
48
|
+
assert(response[:success])
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2019 BlockChyp, Inc. All rights reserved. Use of this code is
|
|
4
|
+
# governed by a license that can be found in the LICENSE file.
|
|
5
|
+
#
|
|
6
|
+
# This file was generated automatically. Changes to this file will be lost
|
|
7
|
+
# every time the code is regenerated.
|
|
8
|
+
|
|
9
|
+
require ::File.expand_path('test_helper', __dir__)
|
|
10
|
+
|
|
11
|
+
module BlockChyp
|
|
12
|
+
class UnlinkTokenTest < TestCase
|
|
13
|
+
def test_unlink_token
|
|
14
|
+
config = load_test_config
|
|
15
|
+
|
|
16
|
+
blockchyp = BlockChyp.new(
|
|
17
|
+
config[:apiKey],
|
|
18
|
+
config[:bearerToken],
|
|
19
|
+
config[:signingKey]
|
|
20
|
+
)
|
|
21
|
+
blockchyp.gateway_host = config[:gatewayHost]
|
|
22
|
+
blockchyp.test_gateway_host = config[:testGatewayHost]
|
|
23
|
+
|
|
24
|
+
test_delay(blockchyp, 'unlink_token_test', config[:defaultTerminalName])
|
|
25
|
+
|
|
26
|
+
# Set request parameters
|
|
27
|
+
setup_request = {
|
|
28
|
+
pan: '4111111111111111',
|
|
29
|
+
test: true,
|
|
30
|
+
customer: {
|
|
31
|
+
customerRef: 'TESTCUSTOMER',
|
|
32
|
+
firstName: 'Test',
|
|
33
|
+
lastName: 'Customer'
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
response = blockchyp.enroll(setup_request)
|
|
38
|
+
|
|
39
|
+
# Set request parameters
|
|
40
|
+
request = {
|
|
41
|
+
token: response[:token],
|
|
42
|
+
customerId: response[:customer][:id]
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
response = blockchyp.unlink_token(request)
|
|
46
|
+
|
|
47
|
+
assert_not_nil(response)
|
|
48
|
+
# response assertions
|
|
49
|
+
assert(response[:success])
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: blockchyp
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.11.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- BlockChyp
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-
|
|
11
|
+
date: 2021-10-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
13
|
description:
|
|
14
14
|
email:
|
|
@@ -32,6 +32,7 @@ files:
|
|
|
32
32
|
- test/gateway_timeout_test.rb
|
|
33
33
|
- test/get_customer_test.rb
|
|
34
34
|
- test/heartbeat_test.rb
|
|
35
|
+
- test/link_token_test.rb
|
|
35
36
|
- test/merchant_profile_test.rb
|
|
36
37
|
- test/new_transaction_display_test.rb
|
|
37
38
|
- test/pan_charge_test.rb
|
|
@@ -62,7 +63,9 @@ files:
|
|
|
62
63
|
- test/terms_and_conditions_test.rb
|
|
63
64
|
- test/test_helper.rb
|
|
64
65
|
- test/text_prompt_test.rb
|
|
66
|
+
- test/token_metadata_test.rb
|
|
65
67
|
- test/transaction_history_test.rb
|
|
68
|
+
- test/unlink_token_test.rb
|
|
66
69
|
- test/update_customer_test.rb
|
|
67
70
|
- test/update_transaction_display_test.rb
|
|
68
71
|
homepage: https://github.com/blockchyp/blockchyp-ruby
|