pscb_integration 0.9.0 → 1.0.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/.travis.yml +16 -2
- data/README.md +25 -16
- data/lib/pscb_integration/version.rb +1 -1
- data/pscb_integration.gemspec +2 -0
- metadata +30 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 592d6dd703549d3f82e18b2c29148298b0837f8c
|
|
4
|
+
data.tar.gz: 35dbc952edb2e54418e566dce2aeb6b3cc863dd1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a402a975064e87fa329cd2850748ba3116e6bda1821db2335769da987c1efbe0e49fc629b879059ae1d46d93856438ef2fdfdbb897af73fa591cce007b3b8191
|
|
7
|
+
data.tar.gz: 31780d7674802019d87b65b5f500f59df144e87d37e62427afd650b92d3835b107abeaba80afb4ba3123a93c379acd976965b594954cf2d4f6d25ebe56c355f8
|
data/.travis.yml
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
sudo: false
|
|
2
2
|
language: ruby
|
|
3
|
+
|
|
3
4
|
rvm:
|
|
4
|
-
- 2.3.
|
|
5
|
-
|
|
5
|
+
- 2.3.4
|
|
6
|
+
- 2.4.1
|
|
7
|
+
- ruby-head
|
|
8
|
+
|
|
9
|
+
matrix:
|
|
10
|
+
allow_failures:
|
|
11
|
+
- rvm: ruby-head
|
|
12
|
+
fast_finish: true
|
|
13
|
+
|
|
14
|
+
before_install: gem update --remote bundler
|
|
15
|
+
install:
|
|
16
|
+
- bundle install --retry=3
|
|
17
|
+
script:
|
|
18
|
+
- bundle exec rspec
|
|
19
|
+
- CODECLIMATE_REPO_TOKEN=3a6375a48b6a49b4da5a4aa32fbfce8445671f77d867c4d207ae92fc32d159ed bundle exec codeclimate-test-reporter
|
data/README.md
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
[](https://badge.fury.io/rb/pscb_integration)
|
|
2
|
+
[](https://travis-ci.org/holyketzer/pscb_integration)
|
|
3
|
+
[](https://codeclimate.com/github/holyketzer/pscb_integration)
|
|
4
|
+
[](https://codeclimate.com/github/holyketzer/pscb_integration/coverage)
|
|
2
5
|
|
|
3
|
-
PSCB
|
|
6
|
+
# PSCB Integration
|
|
7
|
+
|
|
8
|
+
PSCB bank payment service integration (trade acquiring).
|
|
9
|
+
|
|
10
|
+
Official documentation http://docs.pscb.ru/oos/
|
|
11
|
+
|
|
12
|
+
Offer https://pscb.ru/corp/services/payment_service/platezhi-v-internete/.
|
|
4
13
|
|
|
5
14
|
## Disclamer
|
|
6
15
|
|
|
@@ -12,8 +21,8 @@ Stay awhile and listen. Are you sure that you need this stuff?
|
|
|
12
21
|
|
|
13
22
|
### Cons:
|
|
14
23
|
|
|
15
|
-
* During 1.5 years of our expirience PSCB lost all client's reccurent bingings twice. We lost a lot of revenue because of
|
|
16
|
-
* Very slow personal account web site, it takes
|
|
24
|
+
* During 1.5 years of our expirience PSCB lost all client's reccurent bingings twice. We lost a lot of revenue because of this.
|
|
25
|
+
* **Very slow** personal account web site, it takes tens of seconds to load a page.
|
|
17
26
|
* API looks not solid and have a lack of consistency, it has several ways to return errors in response
|
|
18
27
|
* PSCB send demo environment payment callbacks to your production server, and if you don't handle them, they send you email like 'We have got invalid response for our HTTP-callbacks', so they can't completely split demo and production environments
|
|
19
28
|
|
|
@@ -69,18 +78,18 @@ Implement callback function assigned to `confirm_pscb_payment_callback`:
|
|
|
69
78
|
Arguments:
|
|
70
79
|
`payment` - hash with payment details from PSCB:
|
|
71
80
|
|
|
72
|
-
Property | Description
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
81
|
+
|Property | Description|
|
|
82
|
+
|------------------|-------------------------------------|
|
|
83
|
+
|`orderId` | Unique order id generated by merchant|
|
|
84
|
+
|`showOrderId` | Not uniqe order id generated by merchant to show it to customer|
|
|
85
|
+
|`paymentId` | Order id generated by PSCB|
|
|
86
|
+
|`account` | Customer id on merchant side|
|
|
87
|
+
|`marketPlace` | Merchant id on PSCB side|
|
|
88
|
+
|`paymentMethod` | Payment method|
|
|
89
|
+
|`state` | [Payment state](http://docs.pscb.ru/oos/api.html#api-dopolnitelnyh-vozmozhnostej-merchanta-sostoyaniya-platezha)|
|
|
90
|
+
|`stateDate` | Date of last state changing ISO8601|
|
|
91
|
+
|`amount` | Order amount|
|
|
92
|
+
|`recurrencyToken` | Recurrency token|
|
|
84
93
|
|
|
85
94
|
`is_demo` - if `true` then payment is from demo environment else from production.
|
|
86
95
|
|
data/pscb_integration.gemspec
CHANGED
|
@@ -29,10 +29,12 @@ Gem::Specification.new do |spec|
|
|
|
29
29
|
|
|
30
30
|
spec.add_development_dependency 'addressable', '~> 2.5'
|
|
31
31
|
spec.add_development_dependency 'bundler', '~> 1.13'
|
|
32
|
+
spec.add_development_dependency 'codeclimate-test-reporter', '~> 1.0.0'
|
|
32
33
|
spec.add_development_dependency 'fear-rspec', '~> 0.2.0'
|
|
33
34
|
spec.add_development_dependency 'rake', '~> 10.0'
|
|
34
35
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
|
35
36
|
spec.add_development_dependency 'rspec-rails', '~> 3.0'
|
|
37
|
+
spec.add_development_dependency 'simplecov'
|
|
36
38
|
spec.add_development_dependency 'sqlite3'
|
|
37
39
|
spec.add_development_dependency 'vcr', '~> 2.9'
|
|
38
40
|
spec.add_development_dependency 'webmock', '~> 1.17'
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pscb_integration
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Alex Emelyanov
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2017-04-
|
|
11
|
+
date: 2017-04-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: faraday
|
|
@@ -94,6 +94,20 @@ dependencies:
|
|
|
94
94
|
- - "~>"
|
|
95
95
|
- !ruby/object:Gem::Version
|
|
96
96
|
version: '1.13'
|
|
97
|
+
- !ruby/object:Gem::Dependency
|
|
98
|
+
name: codeclimate-test-reporter
|
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
|
100
|
+
requirements:
|
|
101
|
+
- - "~>"
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: 1.0.0
|
|
104
|
+
type: :development
|
|
105
|
+
prerelease: false
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
requirements:
|
|
108
|
+
- - "~>"
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: 1.0.0
|
|
97
111
|
- !ruby/object:Gem::Dependency
|
|
98
112
|
name: fear-rspec
|
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -150,6 +164,20 @@ dependencies:
|
|
|
150
164
|
- - "~>"
|
|
151
165
|
- !ruby/object:Gem::Version
|
|
152
166
|
version: '3.0'
|
|
167
|
+
- !ruby/object:Gem::Dependency
|
|
168
|
+
name: simplecov
|
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
|
170
|
+
requirements:
|
|
171
|
+
- - ">="
|
|
172
|
+
- !ruby/object:Gem::Version
|
|
173
|
+
version: '0'
|
|
174
|
+
type: :development
|
|
175
|
+
prerelease: false
|
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
177
|
+
requirements:
|
|
178
|
+
- - ">="
|
|
179
|
+
- !ruby/object:Gem::Version
|
|
180
|
+
version: '0'
|
|
153
181
|
- !ruby/object:Gem::Dependency
|
|
154
182
|
name: sqlite3
|
|
155
183
|
requirement: !ruby/object:Gem::Requirement
|