fat_zebra 3.2.4 → 3.2.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce036c9eb7ff13fb1c6f60e6b0e4230299ccdb3384e4359959426d75c9a8e42b
4
- data.tar.gz: b55070ec65cbbad8c82ed8974c572dc0cc9eae5d38b3d49a0446dd91febc1570
3
+ metadata.gz: 606ea77a4be37bc7df3d2556a643e485601bb92f20dbf8612a6b20b6fe59c8d5
4
+ data.tar.gz: 0c1619ccf3607d9ea471db5ede1847e04f681e58dea61225caacc811cce98fad
5
5
  SHA512:
6
- metadata.gz: 741c6e12a74bc6f05de8b1b04794476dd3dd1c711db11e093ccba35768e753657c5289d8151458140f8e582f971eb0d0876bd9240151df6ba97ac12b577f8e16
7
- data.tar.gz: 9aee0585dd4f0addde3fbf1ce4408a8905ccf2c336994a9a46d4fd7b2dd6a0d11d1bf9b1c6a33af4f6148b790cfe097de5739f645395a269c684e34cc6e18b96
6
+ metadata.gz: a56d0f166c623875bc0781e9e958511e938bb1ac8076624644e5a21012a0349a9ce4d8b6c4e5cb4aa7381949fe194825c547089471b7e89a99a4dafadd373b9e
7
+ data.tar.gz: 4b44b153c380d149683b64c713b28a32caa49c064383efcfaf4d01c8319bdf2b30ad97872054d7b6e65f29421088311fddb57cd6d527120384f9a15c85ee27ee
@@ -24,8 +24,6 @@ module FatZebra
24
24
  validates :start_date, required: true, on: :create
25
25
  validates :frequency, required: true, on: :create
26
26
  validates :anniversary, required: true, on: :create
27
- validates :total_count, required: true, on: :create
28
- validates :total_amount, required: true, on: :create
29
27
 
30
28
  ##
31
29
  # Suspend a payment plan
@@ -1,3 +1,3 @@
1
1
  module FatZebra
2
- VERSION = '3.2.4'.freeze
2
+ VERSION = '3.2.5'.freeze
3
3
  end
@@ -0,0 +1,183 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://gateway.sandbox.fatzebra.com.au/v1.0/customers
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"first_name":"Harrold","last_name":"Humphries","reference":"79cb17c5d392fb158d2c18d67f145e7d","email":"hhump@test.com","ip_address":"180.200.33.181","card":{"card_holder":"Harrold
9
+ Humphries Senior","card_number":"5123456789012346","expiry_date":"05/2023","cvv":"123"},"address":{"address":"1
10
+ Harriet Road","city":"Kooliablin","state":"NSW","postcode":"2222","country":"Australia"},"test":true}'
11
+ headers:
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - application/json
16
+ User-Agent:
17
+ - Ruby
18
+ Authorization:
19
+ - Basic VEVTVDpURVNU
20
+ Content-Type:
21
+ - application/json
22
+ response:
23
+ status:
24
+ code: 200
25
+ message: OK
26
+ headers:
27
+ Date:
28
+ - Thu, 06 Oct 2022 00:22:23 GMT
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Transfer-Encoding:
32
+ - chunked
33
+ Connection:
34
+ - keep-alive
35
+ Status:
36
+ - 200 OK
37
+ Cache-Control:
38
+ - no-store
39
+ Strict-Transport-Security:
40
+ - max-age=31536000; includeSubDomains
41
+ - max-age=31536000; includeSubDomains
42
+ X-Request-Version:
43
+ - 1.21.8
44
+ Pragma:
45
+ - no-cache
46
+ X-Request-Id:
47
+ - 681b03c82ea8480650d26190
48
+ X-Runtime:
49
+ - '0.083641'
50
+ X-Backend:
51
+ - gateway
52
+ Content-Security-Policy-Report-Only:
53
+ - 'child-src ''self'' blob: *.cardinalcommerce.com fatzebra.statuspage.io; connect-src
54
+ ''self'' *.forter.com *.pmnts-staging.io *.rollbar.com *.nr-data.net *.cardinalcommerce.com
55
+ fatzebra.statuspage.io *.googleapis.com *.google-analytics.com; default-src
56
+ ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com *.nr-data.net blob:
57
+ *.pmnts-sandbox.io *.rollbar.com fatzebra.statuspage.io *.iovation.com data:
58
+ *.googleapis.com *.gstatic.com *.newrelic.com *.bootstrapcdn.com www.google.com
59
+ pay.google.com *.google-analytics.com *.gravatar.com; font-src ''self'' cdnjs.cloudflare.com
60
+ data: *.gstatic.com *.bootstrapcdn.com *.aexp-static.com; form-action ''self''
61
+ *.cardinalcommerce.com; frame-ancestors ''self''; frame-src ''self'' fatzebra.statuspage.io
62
+ *.americanexpress.com www.google.com pay.google.com *.masterpass.com *.visa.com
63
+ *.mastercard.com; img-src ''self'' *.visa.com data: *.googleapis.com *.gstatic.com
64
+ masterpass.com *.masterpass.com *.americanexpress.com *.google-analytics.com
65
+ *.gravatar.com; script-src ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com
66
+ *.nr-data.net *.pmnts-sandbox.io *.pmnts-staging.io *.rollbar.com fatzebra.statuspage.io
67
+ cdnjs.cloudflare.com *.iovation.com *.jquery.com *.newrelic.com *.googleapis.com
68
+ *.cardinalcommerce.com *.bootstrapcdn.com wasm-eval *.google-analytics.com
69
+ *.googletagmanager.com; script-src-attr ''unsafe-inline''; script-src-elem
70
+ ''self'' ''unsafe-inline'' *.forter.com *.nr-data.net *.pmnts-sandbox.io *.rollbar.com
71
+ fatzebra.statuspage.io *.iovation.com *.jquery.com cdnjs.cloudflare.com *.pmnts-staging.io
72
+ *.aexp-static.com *.newrelic.com *.googleapis.com *.americanexpress.com www.google.com
73
+ pay.google.com *.visa.com *.masterpass.com *.mastercard.com *.google-analytics.com
74
+ *.gstatic.com *.bootstrapcdn.com; style-src ''self'' ''unsafe-eval'' ''unsafe-inline''
75
+ *.bootstrapcdn.com *.googleapis.com; style-src-attr ''unsafe-inline''; style-src-elem
76
+ ''unsafe-inline'' ''self'' *.googleapis.com cdnjs.cloudflare.com *.bootstrapcdn.com;
77
+ worker-src blob:; report-uri https://fatzebra.report-uri.com/r/d/csp/wizard'
78
+ Nel:
79
+ - '{"report_to":"default","max_age":31536000,"include_subdomains":true}'
80
+ Report-To:
81
+ - '{"group":"default","max_age":31536000,"endpoints":[{"url":"https://fatzebra.report-uri.com/a/d/g"}],"include_subdomains":true}'
82
+ body:
83
+ encoding: UTF-8
84
+ string: '{"successful":true,"response":{"id":"071-C-SHT1JCDR","email":"hhump@test.com","reference":"79cb17c5d392fb158d2c18d67f145e7d","first_name":"Harrold","last_name":"Humphries","created_at":"2022-10-06T11:22:23+11:00","address":{"address":"1
85
+ Harriet Road","city":"Kooliablin","state":"NSW","postcode":"2222","country":"Australia"},"card_token":"8hxhptfdjg8uhosaj59z","card_number":"512345XXXXXX2346","bank_account":null,"metadata":null,"sdk_ready":true},"errors":[],"test":true}'
86
+ http_version:
87
+ recorded_at: Thu, 06 Oct 2022 00:22:22 GMT
88
+ - request:
89
+ method: post
90
+ uri: https://gateway.sandbox.fatzebra.com.au/v1.0/payment_plans
91
+ body:
92
+ encoding: UTF-8
93
+ string: '{"payment_method":"Credit Card","customer":"071-C-SHT1JCDR","reference":"e5a99a35e877b2b226611c73f141e208","setup_fee":0,"amount":100,"start_date":"2023-01-04","end_date":"2023-04-04","frequency":"Weekly","anniversary":5,"test":true}'
94
+ headers:
95
+ Accept-Encoding:
96
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
97
+ Accept:
98
+ - application/json
99
+ User-Agent:
100
+ - Ruby
101
+ Authorization:
102
+ - Basic VEVTVDpURVNU
103
+ Content-Type:
104
+ - application/json
105
+ response:
106
+ status:
107
+ code: 201
108
+ message: Created
109
+ headers:
110
+ Date:
111
+ - Thu, 06 Oct 2022 00:22:23 GMT
112
+ Content-Type:
113
+ - application/json; charset=utf-8
114
+ Transfer-Encoding:
115
+ - chunked
116
+ Connection:
117
+ - keep-alive
118
+ Status:
119
+ - 201 Created
120
+ Cache-Control:
121
+ - no-store
122
+ Strict-Transport-Security:
123
+ - max-age=31536000; includeSubDomains
124
+ - max-age=31536000; includeSubDomains
125
+ X-Request-Version:
126
+ - 1.21.8
127
+ Pragma:
128
+ - no-cache
129
+ X-Request-Id:
130
+ - 4f6c836430ba9f3b61966fd4
131
+ X-Runtime:
132
+ - '0.405789'
133
+ X-Backend:
134
+ - gateway
135
+ Content-Security-Policy-Report-Only:
136
+ - 'child-src ''self'' blob: *.cardinalcommerce.com fatzebra.statuspage.io; connect-src
137
+ ''self'' *.forter.com *.pmnts-staging.io *.rollbar.com *.nr-data.net *.cardinalcommerce.com
138
+ fatzebra.statuspage.io *.googleapis.com *.google-analytics.com; default-src
139
+ ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com *.nr-data.net blob:
140
+ *.pmnts-sandbox.io *.rollbar.com fatzebra.statuspage.io *.iovation.com data:
141
+ *.googleapis.com *.gstatic.com *.newrelic.com *.bootstrapcdn.com www.google.com
142
+ pay.google.com *.google-analytics.com *.gravatar.com; font-src ''self'' cdnjs.cloudflare.com
143
+ data: *.gstatic.com *.bootstrapcdn.com *.aexp-static.com; form-action ''self''
144
+ *.cardinalcommerce.com; frame-ancestors ''self''; frame-src ''self'' fatzebra.statuspage.io
145
+ *.americanexpress.com www.google.com pay.google.com *.masterpass.com *.visa.com
146
+ *.mastercard.com; img-src ''self'' *.visa.com data: *.googleapis.com *.gstatic.com
147
+ masterpass.com *.masterpass.com *.americanexpress.com *.google-analytics.com
148
+ *.gravatar.com; script-src ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com
149
+ *.nr-data.net *.pmnts-sandbox.io *.pmnts-staging.io *.rollbar.com fatzebra.statuspage.io
150
+ cdnjs.cloudflare.com *.iovation.com *.jquery.com *.newrelic.com *.googleapis.com
151
+ *.cardinalcommerce.com *.bootstrapcdn.com wasm-eval *.google-analytics.com
152
+ *.googletagmanager.com; script-src-attr ''unsafe-inline''; script-src-elem
153
+ ''self'' ''unsafe-inline'' *.forter.com *.nr-data.net *.pmnts-sandbox.io *.rollbar.com
154
+ fatzebra.statuspage.io *.iovation.com *.jquery.com cdnjs.cloudflare.com *.pmnts-staging.io
155
+ *.aexp-static.com *.newrelic.com *.googleapis.com *.americanexpress.com www.google.com
156
+ pay.google.com *.visa.com *.masterpass.com *.mastercard.com *.google-analytics.com
157
+ *.gstatic.com *.bootstrapcdn.com; style-src ''self'' ''unsafe-eval'' ''unsafe-inline''
158
+ *.bootstrapcdn.com *.googleapis.com; style-src-attr ''unsafe-inline''; style-src-elem
159
+ ''unsafe-inline'' ''self'' *.googleapis.com cdnjs.cloudflare.com *.bootstrapcdn.com;
160
+ worker-src blob:; report-uri https://fatzebra.report-uri.com/r/d/csp/wizard'
161
+ Nel:
162
+ - '{"report_to":"default","max_age":31536000,"include_subdomains":true}'
163
+ Report-To:
164
+ - '{"group":"default","max_age":31536000,"endpoints":[{"url":"https://fatzebra.report-uri.com/a/d/g"}],"include_subdomains":true}'
165
+ body:
166
+ encoding: UTF-8
167
+ string: '{"successful":true,"response":{"id":"071-PP-RN9CEUJC","customer":"071-C-SHT1JCDR","amount":100,"currency":"AUD","setup_fee":0,"frequency":"Weekly","anniversary":5,"start_date":"2023-01-04","end_date":"2023-04-04","total_count":null,"total_amount":null,"payment_method":"Credit
168
+ Card","reference":"e5a99a35e877b2b226611c73f141e208","description":null,"status":"Active","status_reason":"None","created_at":"2022-10-06T11:22:23+11:00","failed_payment_fee":0,"retry_interval":3,"status_change_date":null,"payments":[{"id":"071-PT-PXO3HBWY","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0001","amount":100,"currency":"AUD","scheduled_date":"2023-01-06","payment_method":"Credit
169
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-7V9AUT9X","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0002","amount":100,"currency":"AUD","scheduled_date":"2023-01-13","payment_method":"Credit
170
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-8HKSQKH8","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0003","amount":100,"currency":"AUD","scheduled_date":"2023-01-20","payment_method":"Credit
171
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-Q672MW0R","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0004","amount":100,"currency":"AUD","scheduled_date":"2023-01-27","payment_method":"Credit
172
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-VV8EWW99","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0005","amount":100,"currency":"AUD","scheduled_date":"2023-02-03","payment_method":"Credit
173
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-WWENJPEN","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0006","amount":100,"currency":"AUD","scheduled_date":"2023-02-10","payment_method":"Credit
174
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-3Z36PCC1","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0007","amount":100,"currency":"AUD","scheduled_date":"2023-02-17","payment_method":"Credit
175
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-P8P0RMGA","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0008","amount":100,"currency":"AUD","scheduled_date":"2023-02-24","payment_method":"Credit
176
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-MNWP7YHJ","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0009","amount":100,"currency":"AUD","scheduled_date":"2023-03-03","payment_method":"Credit
177
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-1SRRLVF9","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0010","amount":100,"currency":"AUD","scheduled_date":"2023-03-10","payment_method":"Credit
178
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-YEPJPBC8","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0011","amount":100,"currency":"AUD","scheduled_date":"2023-03-17","payment_method":"Credit
179
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-H3UMOW5F","payment_plan":"071-PP-RN9CEUJC","reference":"e5a99a35e877b2b226611c73f141e208-0012","amount":100,"currency":"AUD","scheduled_date":"2023-03-24","payment_method":"Credit
180
+ Card","status":"Scheduled","result":null,"records":[]}]},"errors":[],"test":true}'
181
+ http_version:
182
+ recorded_at: Thu, 06 Oct 2022 00:22:23 GMT
183
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,183 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://gateway.sandbox.fatzebra.com.au/v1.0/customers
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"first_name":"Harrold","last_name":"Humphries","reference":"335a5085e1c87f78bdd6846abce50d1e","email":"hhump@test.com","ip_address":"180.200.33.181","card":{"card_holder":"Harrold
9
+ Humphries Senior","card_number":"5123456789012346","expiry_date":"05/2023","cvv":"123"},"address":{"address":"1
10
+ Harriet Road","city":"Kooliablin","state":"NSW","postcode":"2222","country":"Australia"},"test":true}'
11
+ headers:
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - application/json
16
+ User-Agent:
17
+ - Ruby
18
+ Authorization:
19
+ - Basic VEVTVDpURVNU
20
+ Content-Type:
21
+ - application/json
22
+ response:
23
+ status:
24
+ code: 200
25
+ message: OK
26
+ headers:
27
+ Date:
28
+ - Thu, 06 Oct 2022 00:22:24 GMT
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Transfer-Encoding:
32
+ - chunked
33
+ Connection:
34
+ - keep-alive
35
+ Status:
36
+ - 200 OK
37
+ Cache-Control:
38
+ - no-store
39
+ Strict-Transport-Security:
40
+ - max-age=31536000; includeSubDomains
41
+ - max-age=31536000; includeSubDomains
42
+ X-Request-Version:
43
+ - 1.21.8
44
+ Pragma:
45
+ - no-cache
46
+ X-Request-Id:
47
+ - 4fa7935a4d107f79560228e5
48
+ X-Runtime:
49
+ - '0.098838'
50
+ X-Backend:
51
+ - gateway
52
+ Content-Security-Policy-Report-Only:
53
+ - 'child-src ''self'' blob: *.cardinalcommerce.com fatzebra.statuspage.io; connect-src
54
+ ''self'' *.forter.com *.pmnts-staging.io *.rollbar.com *.nr-data.net *.cardinalcommerce.com
55
+ fatzebra.statuspage.io *.googleapis.com *.google-analytics.com; default-src
56
+ ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com *.nr-data.net blob:
57
+ *.pmnts-sandbox.io *.rollbar.com fatzebra.statuspage.io *.iovation.com data:
58
+ *.googleapis.com *.gstatic.com *.newrelic.com *.bootstrapcdn.com www.google.com
59
+ pay.google.com *.google-analytics.com *.gravatar.com; font-src ''self'' cdnjs.cloudflare.com
60
+ data: *.gstatic.com *.bootstrapcdn.com *.aexp-static.com; form-action ''self''
61
+ *.cardinalcommerce.com; frame-ancestors ''self''; frame-src ''self'' fatzebra.statuspage.io
62
+ *.americanexpress.com www.google.com pay.google.com *.masterpass.com *.visa.com
63
+ *.mastercard.com; img-src ''self'' *.visa.com data: *.googleapis.com *.gstatic.com
64
+ masterpass.com *.masterpass.com *.americanexpress.com *.google-analytics.com
65
+ *.gravatar.com; script-src ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com
66
+ *.nr-data.net *.pmnts-sandbox.io *.pmnts-staging.io *.rollbar.com fatzebra.statuspage.io
67
+ cdnjs.cloudflare.com *.iovation.com *.jquery.com *.newrelic.com *.googleapis.com
68
+ *.cardinalcommerce.com *.bootstrapcdn.com wasm-eval *.google-analytics.com
69
+ *.googletagmanager.com; script-src-attr ''unsafe-inline''; script-src-elem
70
+ ''self'' ''unsafe-inline'' *.forter.com *.nr-data.net *.pmnts-sandbox.io *.rollbar.com
71
+ fatzebra.statuspage.io *.iovation.com *.jquery.com cdnjs.cloudflare.com *.pmnts-staging.io
72
+ *.aexp-static.com *.newrelic.com *.googleapis.com *.americanexpress.com www.google.com
73
+ pay.google.com *.visa.com *.masterpass.com *.mastercard.com *.google-analytics.com
74
+ *.gstatic.com *.bootstrapcdn.com; style-src ''self'' ''unsafe-eval'' ''unsafe-inline''
75
+ *.bootstrapcdn.com *.googleapis.com; style-src-attr ''unsafe-inline''; style-src-elem
76
+ ''unsafe-inline'' ''self'' *.googleapis.com cdnjs.cloudflare.com *.bootstrapcdn.com;
77
+ worker-src blob:; report-uri https://fatzebra.report-uri.com/r/d/csp/wizard'
78
+ Nel:
79
+ - '{"report_to":"default","max_age":31536000,"include_subdomains":true}'
80
+ Report-To:
81
+ - '{"group":"default","max_age":31536000,"endpoints":[{"url":"https://fatzebra.report-uri.com/a/d/g"}],"include_subdomains":true}'
82
+ body:
83
+ encoding: UTF-8
84
+ string: '{"successful":true,"response":{"id":"071-C-Y1AC3F01","email":"hhump@test.com","reference":"335a5085e1c87f78bdd6846abce50d1e","first_name":"Harrold","last_name":"Humphries","created_at":"2022-10-06T11:22:24+11:00","address":{"address":"1
85
+ Harriet Road","city":"Kooliablin","state":"NSW","postcode":"2222","country":"Australia"},"card_token":"8q2nus7yhqbdbm1je84d","card_number":"512345XXXXXX2346","bank_account":null,"metadata":null,"sdk_ready":true},"errors":[],"test":true}'
86
+ http_version:
87
+ recorded_at: Thu, 06 Oct 2022 00:22:24 GMT
88
+ - request:
89
+ method: post
90
+ uri: https://gateway.sandbox.fatzebra.com.au/v1.0/payment_plans
91
+ body:
92
+ encoding: UTF-8
93
+ string: '{"payment_method":"Credit Card","customer":"071-C-Y1AC3F01","reference":"8d2050ed6911b6ab9ce57280ada606ff","setup_fee":0,"amount":100,"start_date":"2023-01-04","end_date":"2023-04-04","frequency":"Weekly","anniversary":5,"test":true}'
94
+ headers:
95
+ Accept-Encoding:
96
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
97
+ Accept:
98
+ - application/json
99
+ User-Agent:
100
+ - Ruby
101
+ Authorization:
102
+ - Basic VEVTVDpURVNU
103
+ Content-Type:
104
+ - application/json
105
+ response:
106
+ status:
107
+ code: 201
108
+ message: Created
109
+ headers:
110
+ Date:
111
+ - Thu, 06 Oct 2022 00:22:25 GMT
112
+ Content-Type:
113
+ - application/json; charset=utf-8
114
+ Transfer-Encoding:
115
+ - chunked
116
+ Connection:
117
+ - keep-alive
118
+ Status:
119
+ - 201 Created
120
+ Cache-Control:
121
+ - no-store
122
+ Strict-Transport-Security:
123
+ - max-age=31536000; includeSubDomains
124
+ - max-age=31536000; includeSubDomains
125
+ X-Request-Version:
126
+ - 1.21.8
127
+ Pragma:
128
+ - no-cache
129
+ X-Request-Id:
130
+ - 593d6cdb23db9ece36f91faf
131
+ X-Runtime:
132
+ - '0.431061'
133
+ X-Backend:
134
+ - gateway
135
+ Content-Security-Policy-Report-Only:
136
+ - 'child-src ''self'' blob: *.cardinalcommerce.com fatzebra.statuspage.io; connect-src
137
+ ''self'' *.forter.com *.pmnts-staging.io *.rollbar.com *.nr-data.net *.cardinalcommerce.com
138
+ fatzebra.statuspage.io *.googleapis.com *.google-analytics.com; default-src
139
+ ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com *.nr-data.net blob:
140
+ *.pmnts-sandbox.io *.rollbar.com fatzebra.statuspage.io *.iovation.com data:
141
+ *.googleapis.com *.gstatic.com *.newrelic.com *.bootstrapcdn.com www.google.com
142
+ pay.google.com *.google-analytics.com *.gravatar.com; font-src ''self'' cdnjs.cloudflare.com
143
+ data: *.gstatic.com *.bootstrapcdn.com *.aexp-static.com; form-action ''self''
144
+ *.cardinalcommerce.com; frame-ancestors ''self''; frame-src ''self'' fatzebra.statuspage.io
145
+ *.americanexpress.com www.google.com pay.google.com *.masterpass.com *.visa.com
146
+ *.mastercard.com; img-src ''self'' *.visa.com data: *.googleapis.com *.gstatic.com
147
+ masterpass.com *.masterpass.com *.americanexpress.com *.google-analytics.com
148
+ *.gravatar.com; script-src ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com
149
+ *.nr-data.net *.pmnts-sandbox.io *.pmnts-staging.io *.rollbar.com fatzebra.statuspage.io
150
+ cdnjs.cloudflare.com *.iovation.com *.jquery.com *.newrelic.com *.googleapis.com
151
+ *.cardinalcommerce.com *.bootstrapcdn.com wasm-eval *.google-analytics.com
152
+ *.googletagmanager.com; script-src-attr ''unsafe-inline''; script-src-elem
153
+ ''self'' ''unsafe-inline'' *.forter.com *.nr-data.net *.pmnts-sandbox.io *.rollbar.com
154
+ fatzebra.statuspage.io *.iovation.com *.jquery.com cdnjs.cloudflare.com *.pmnts-staging.io
155
+ *.aexp-static.com *.newrelic.com *.googleapis.com *.americanexpress.com www.google.com
156
+ pay.google.com *.visa.com *.masterpass.com *.mastercard.com *.google-analytics.com
157
+ *.gstatic.com *.bootstrapcdn.com; style-src ''self'' ''unsafe-eval'' ''unsafe-inline''
158
+ *.bootstrapcdn.com *.googleapis.com; style-src-attr ''unsafe-inline''; style-src-elem
159
+ ''unsafe-inline'' ''self'' *.googleapis.com cdnjs.cloudflare.com *.bootstrapcdn.com;
160
+ worker-src blob:; report-uri https://fatzebra.report-uri.com/r/d/csp/wizard'
161
+ Nel:
162
+ - '{"report_to":"default","max_age":31536000,"include_subdomains":true}'
163
+ Report-To:
164
+ - '{"group":"default","max_age":31536000,"endpoints":[{"url":"https://fatzebra.report-uri.com/a/d/g"}],"include_subdomains":true}'
165
+ body:
166
+ encoding: UTF-8
167
+ string: '{"successful":true,"response":{"id":"071-PP-VS3BW7PP","customer":"071-C-Y1AC3F01","amount":100,"currency":"AUD","setup_fee":0,"frequency":"Weekly","anniversary":5,"start_date":"2023-01-04","end_date":"2023-04-04","total_count":null,"total_amount":null,"payment_method":"Credit
168
+ Card","reference":"8d2050ed6911b6ab9ce57280ada606ff","description":null,"status":"Active","status_reason":"None","created_at":"2022-10-06T11:22:25+11:00","failed_payment_fee":0,"retry_interval":3,"status_change_date":null,"payments":[{"id":"071-PT-5GZKIR2P","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0001","amount":100,"currency":"AUD","scheduled_date":"2023-01-06","payment_method":"Credit
169
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-6GZSJM80","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0002","amount":100,"currency":"AUD","scheduled_date":"2023-01-13","payment_method":"Credit
170
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-RGMB252W","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0003","amount":100,"currency":"AUD","scheduled_date":"2023-01-20","payment_method":"Credit
171
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-SIRYWHXB","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0004","amount":100,"currency":"AUD","scheduled_date":"2023-01-27","payment_method":"Credit
172
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-TJERCOP7","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0005","amount":100,"currency":"AUD","scheduled_date":"2023-02-03","payment_method":"Credit
173
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-FU8IXW7U","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0006","amount":100,"currency":"AUD","scheduled_date":"2023-02-10","payment_method":"Credit
174
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-IEIMCX2Y","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0007","amount":100,"currency":"AUD","scheduled_date":"2023-02-17","payment_method":"Credit
175
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-M80CWO1A","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0008","amount":100,"currency":"AUD","scheduled_date":"2023-02-24","payment_method":"Credit
176
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-VBRJQY4O","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0009","amount":100,"currency":"AUD","scheduled_date":"2023-03-03","payment_method":"Credit
177
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-D7TRN8GI","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0010","amount":100,"currency":"AUD","scheduled_date":"2023-03-10","payment_method":"Credit
178
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-RSLAC0E0","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0011","amount":100,"currency":"AUD","scheduled_date":"2023-03-17","payment_method":"Credit
179
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-S2NUKBXL","payment_plan":"071-PP-VS3BW7PP","reference":"8d2050ed6911b6ab9ce57280ada606ff-0012","amount":100,"currency":"AUD","scheduled_date":"2023-03-24","payment_method":"Credit
180
+ Card","status":"Scheduled","result":null,"records":[]}]},"errors":[],"test":true}'
181
+ http_version:
182
+ recorded_at: Thu, 06 Oct 2022 00:22:25 GMT
183
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,183 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://gateway.sandbox.fatzebra.com.au/v1.0/customers
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"first_name":"Harrold","last_name":"Humphries","reference":"24afa31905723b983269b560ea69305b","email":"hhump@test.com","ip_address":"180.200.33.181","card":{"card_holder":"Harrold
9
+ Humphries Senior","card_number":"5123456789012346","expiry_date":"05/2023","cvv":"123"},"address":{"address":"1
10
+ Harriet Road","city":"Kooliablin","state":"NSW","postcode":"2222","country":"Australia"},"test":true}'
11
+ headers:
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - application/json
16
+ User-Agent:
17
+ - Ruby
18
+ Authorization:
19
+ - Basic VEVTVDpURVNU
20
+ Content-Type:
21
+ - application/json
22
+ response:
23
+ status:
24
+ code: 200
25
+ message: OK
26
+ headers:
27
+ Date:
28
+ - Thu, 06 Oct 2022 00:22:26 GMT
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Transfer-Encoding:
32
+ - chunked
33
+ Connection:
34
+ - keep-alive
35
+ Status:
36
+ - 200 OK
37
+ Cache-Control:
38
+ - no-store
39
+ Strict-Transport-Security:
40
+ - max-age=31536000; includeSubDomains
41
+ - max-age=31536000; includeSubDomains
42
+ X-Request-Version:
43
+ - 1.21.8
44
+ Pragma:
45
+ - no-cache
46
+ X-Request-Id:
47
+ - 719015d575211a060e5bb57e
48
+ X-Runtime:
49
+ - '0.080575'
50
+ X-Backend:
51
+ - gateway
52
+ Content-Security-Policy-Report-Only:
53
+ - 'child-src ''self'' blob: *.cardinalcommerce.com fatzebra.statuspage.io; connect-src
54
+ ''self'' *.forter.com *.pmnts-staging.io *.rollbar.com *.nr-data.net *.cardinalcommerce.com
55
+ fatzebra.statuspage.io *.googleapis.com *.google-analytics.com; default-src
56
+ ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com *.nr-data.net blob:
57
+ *.pmnts-sandbox.io *.rollbar.com fatzebra.statuspage.io *.iovation.com data:
58
+ *.googleapis.com *.gstatic.com *.newrelic.com *.bootstrapcdn.com www.google.com
59
+ pay.google.com *.google-analytics.com *.gravatar.com; font-src ''self'' cdnjs.cloudflare.com
60
+ data: *.gstatic.com *.bootstrapcdn.com *.aexp-static.com; form-action ''self''
61
+ *.cardinalcommerce.com; frame-ancestors ''self''; frame-src ''self'' fatzebra.statuspage.io
62
+ *.americanexpress.com www.google.com pay.google.com *.masterpass.com *.visa.com
63
+ *.mastercard.com; img-src ''self'' *.visa.com data: *.googleapis.com *.gstatic.com
64
+ masterpass.com *.masterpass.com *.americanexpress.com *.google-analytics.com
65
+ *.gravatar.com; script-src ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com
66
+ *.nr-data.net *.pmnts-sandbox.io *.pmnts-staging.io *.rollbar.com fatzebra.statuspage.io
67
+ cdnjs.cloudflare.com *.iovation.com *.jquery.com *.newrelic.com *.googleapis.com
68
+ *.cardinalcommerce.com *.bootstrapcdn.com wasm-eval *.google-analytics.com
69
+ *.googletagmanager.com; script-src-attr ''unsafe-inline''; script-src-elem
70
+ ''self'' ''unsafe-inline'' *.forter.com *.nr-data.net *.pmnts-sandbox.io *.rollbar.com
71
+ fatzebra.statuspage.io *.iovation.com *.jquery.com cdnjs.cloudflare.com *.pmnts-staging.io
72
+ *.aexp-static.com *.newrelic.com *.googleapis.com *.americanexpress.com www.google.com
73
+ pay.google.com *.visa.com *.masterpass.com *.mastercard.com *.google-analytics.com
74
+ *.gstatic.com *.bootstrapcdn.com; style-src ''self'' ''unsafe-eval'' ''unsafe-inline''
75
+ *.bootstrapcdn.com *.googleapis.com; style-src-attr ''unsafe-inline''; style-src-elem
76
+ ''unsafe-inline'' ''self'' *.googleapis.com cdnjs.cloudflare.com *.bootstrapcdn.com;
77
+ worker-src blob:; report-uri https://fatzebra.report-uri.com/r/d/csp/wizard'
78
+ Nel:
79
+ - '{"report_to":"default","max_age":31536000,"include_subdomains":true}'
80
+ Report-To:
81
+ - '{"group":"default","max_age":31536000,"endpoints":[{"url":"https://fatzebra.report-uri.com/a/d/g"}],"include_subdomains":true}'
82
+ body:
83
+ encoding: UTF-8
84
+ string: '{"successful":true,"response":{"id":"071-C-6FMTKA57","email":"hhump@test.com","reference":"24afa31905723b983269b560ea69305b","first_name":"Harrold","last_name":"Humphries","created_at":"2022-10-06T11:22:25+11:00","address":{"address":"1
85
+ Harriet Road","city":"Kooliablin","state":"NSW","postcode":"2222","country":"Australia"},"card_token":"oqh8v4jtgsl8ckdka9s1","card_number":"512345XXXXXX2346","bank_account":null,"metadata":null,"sdk_ready":true},"errors":[],"test":true}'
86
+ http_version:
87
+ recorded_at: Thu, 06 Oct 2022 00:22:25 GMT
88
+ - request:
89
+ method: post
90
+ uri: https://gateway.sandbox.fatzebra.com.au/v1.0/payment_plans
91
+ body:
92
+ encoding: UTF-8
93
+ string: '{"payment_method":"Credit Card","customer":"071-C-6FMTKA57","reference":"7b6bc420610da917011cc24cfa35d98d","setup_fee":0,"amount":100,"start_date":"2023-01-04","end_date":"2023-04-04","frequency":"Weekly","anniversary":5,"test":true}'
94
+ headers:
95
+ Accept-Encoding:
96
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
97
+ Accept:
98
+ - application/json
99
+ User-Agent:
100
+ - Ruby
101
+ Authorization:
102
+ - Basic VEVTVDpURVNU
103
+ Content-Type:
104
+ - application/json
105
+ response:
106
+ status:
107
+ code: 201
108
+ message: Created
109
+ headers:
110
+ Date:
111
+ - Thu, 06 Oct 2022 00:22:26 GMT
112
+ Content-Type:
113
+ - application/json; charset=utf-8
114
+ Transfer-Encoding:
115
+ - chunked
116
+ Connection:
117
+ - keep-alive
118
+ Status:
119
+ - 201 Created
120
+ Cache-Control:
121
+ - no-store
122
+ Strict-Transport-Security:
123
+ - max-age=31536000; includeSubDomains
124
+ - max-age=31536000; includeSubDomains
125
+ X-Request-Version:
126
+ - 1.21.8
127
+ Pragma:
128
+ - no-cache
129
+ X-Request-Id:
130
+ - '09b341c47a3f603f10d825ab'
131
+ X-Runtime:
132
+ - '0.405580'
133
+ X-Backend:
134
+ - gateway
135
+ Content-Security-Policy-Report-Only:
136
+ - 'child-src ''self'' blob: *.cardinalcommerce.com fatzebra.statuspage.io; connect-src
137
+ ''self'' *.forter.com *.pmnts-staging.io *.rollbar.com *.nr-data.net *.cardinalcommerce.com
138
+ fatzebra.statuspage.io *.googleapis.com *.google-analytics.com; default-src
139
+ ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com *.nr-data.net blob:
140
+ *.pmnts-sandbox.io *.rollbar.com fatzebra.statuspage.io *.iovation.com data:
141
+ *.googleapis.com *.gstatic.com *.newrelic.com *.bootstrapcdn.com www.google.com
142
+ pay.google.com *.google-analytics.com *.gravatar.com; font-src ''self'' cdnjs.cloudflare.com
143
+ data: *.gstatic.com *.bootstrapcdn.com *.aexp-static.com; form-action ''self''
144
+ *.cardinalcommerce.com; frame-ancestors ''self''; frame-src ''self'' fatzebra.statuspage.io
145
+ *.americanexpress.com www.google.com pay.google.com *.masterpass.com *.visa.com
146
+ *.mastercard.com; img-src ''self'' *.visa.com data: *.googleapis.com *.gstatic.com
147
+ masterpass.com *.masterpass.com *.americanexpress.com *.google-analytics.com
148
+ *.gravatar.com; script-src ''self'' ''unsafe-eval'' ''unsafe-inline'' *.forter.com
149
+ *.nr-data.net *.pmnts-sandbox.io *.pmnts-staging.io *.rollbar.com fatzebra.statuspage.io
150
+ cdnjs.cloudflare.com *.iovation.com *.jquery.com *.newrelic.com *.googleapis.com
151
+ *.cardinalcommerce.com *.bootstrapcdn.com wasm-eval *.google-analytics.com
152
+ *.googletagmanager.com; script-src-attr ''unsafe-inline''; script-src-elem
153
+ ''self'' ''unsafe-inline'' *.forter.com *.nr-data.net *.pmnts-sandbox.io *.rollbar.com
154
+ fatzebra.statuspage.io *.iovation.com *.jquery.com cdnjs.cloudflare.com *.pmnts-staging.io
155
+ *.aexp-static.com *.newrelic.com *.googleapis.com *.americanexpress.com www.google.com
156
+ pay.google.com *.visa.com *.masterpass.com *.mastercard.com *.google-analytics.com
157
+ *.gstatic.com *.bootstrapcdn.com; style-src ''self'' ''unsafe-eval'' ''unsafe-inline''
158
+ *.bootstrapcdn.com *.googleapis.com; style-src-attr ''unsafe-inline''; style-src-elem
159
+ ''unsafe-inline'' ''self'' *.googleapis.com cdnjs.cloudflare.com *.bootstrapcdn.com;
160
+ worker-src blob:; report-uri https://fatzebra.report-uri.com/r/d/csp/wizard'
161
+ Nel:
162
+ - '{"report_to":"default","max_age":31536000,"include_subdomains":true}'
163
+ Report-To:
164
+ - '{"group":"default","max_age":31536000,"endpoints":[{"url":"https://fatzebra.report-uri.com/a/d/g"}],"include_subdomains":true}'
165
+ body:
166
+ encoding: UTF-8
167
+ string: '{"successful":true,"response":{"id":"071-PP-CT2VS286","customer":"071-C-6FMTKA57","amount":100,"currency":"AUD","setup_fee":0,"frequency":"Weekly","anniversary":5,"start_date":"2023-01-04","end_date":"2023-04-04","total_count":null,"total_amount":null,"payment_method":"Credit
168
+ Card","reference":"7b6bc420610da917011cc24cfa35d98d","description":null,"status":"Active","status_reason":"None","created_at":"2022-10-06T11:22:26+11:00","failed_payment_fee":0,"retry_interval":3,"status_change_date":null,"payments":[{"id":"071-PT-GCDX05QC","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0001","amount":100,"currency":"AUD","scheduled_date":"2023-01-06","payment_method":"Credit
169
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-6LM6H00S","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0002","amount":100,"currency":"AUD","scheduled_date":"2023-01-13","payment_method":"Credit
170
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-EVK5KMZ2","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0003","amount":100,"currency":"AUD","scheduled_date":"2023-01-20","payment_method":"Credit
171
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-12SYJEVW","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0004","amount":100,"currency":"AUD","scheduled_date":"2023-01-27","payment_method":"Credit
172
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-BHKWQZGK","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0005","amount":100,"currency":"AUD","scheduled_date":"2023-02-03","payment_method":"Credit
173
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-G4TZJ5EE","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0006","amount":100,"currency":"AUD","scheduled_date":"2023-02-10","payment_method":"Credit
174
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-UWZSFWOR","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0007","amount":100,"currency":"AUD","scheduled_date":"2023-02-17","payment_method":"Credit
175
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-QVSEDRFY","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0008","amount":100,"currency":"AUD","scheduled_date":"2023-02-24","payment_method":"Credit
176
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-GQVAZOM7","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0009","amount":100,"currency":"AUD","scheduled_date":"2023-03-03","payment_method":"Credit
177
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-NFE7J1MV","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0010","amount":100,"currency":"AUD","scheduled_date":"2023-03-10","payment_method":"Credit
178
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-VS36TXC4","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0011","amount":100,"currency":"AUD","scheduled_date":"2023-03-17","payment_method":"Credit
179
+ Card","status":"Scheduled","result":null,"records":[]},{"id":"071-PT-PTV0ORDF","payment_plan":"071-PP-CT2VS286","reference":"7b6bc420610da917011cc24cfa35d98d-0012","amount":100,"currency":"AUD","scheduled_date":"2023-03-24","payment_method":"Credit
180
+ Card","status":"Scheduled","result":null,"records":[]}]},"errors":[],"test":true}'
181
+ http_version:
182
+ recorded_at: Thu, 06 Oct 2022 00:22:26 GMT
183
+ recorded_with: VCR 3.0.3
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
  describe FatZebra::PaymentPlan do
4
4
  let(:customer) { FatZebra::Customer.create(customer_valid_payload) }
5
5
 
6
- let(:payment_plan_valid_payload) {{
6
+ let(:valid_instalment_payload) {{
7
7
  payment_method: 'Credit Card',
8
8
  customer: customer.id,
9
9
  reference: SecureRandom.hex,
@@ -16,22 +16,45 @@ describe FatZebra::PaymentPlan do
16
16
  total_amount: 500
17
17
  }}
18
18
 
19
+ let(:valid_subscription_payload) {{
20
+ payment_method: 'Credit Card',
21
+ customer: customer.id,
22
+ reference: SecureRandom.hex,
23
+ setup_fee: 0,
24
+ amount: 100,
25
+ start_date: (Date.today + 90).strftime('%Y-%m-%d'),
26
+ end_date: (Date.today + 180).strftime('%Y-%m-%d'),
27
+ frequency: 'Weekly',
28
+ anniversary: 5,
29
+ }}
30
+
31
+
19
32
  describe '.create', :vcr do
20
- subject(:payment_plan) { FatZebra::PaymentPlan.create(payment_plan_valid_payload) }
33
+ subject(:payment_plan) { FatZebra::PaymentPlan.create(valid_instalment_payload) }
21
34
 
22
35
  it { is_expected.to be_accepted }
23
36
  it { expect(payment_plan.id).to_not be_empty }
24
37
  it { expect(payment_plan.payments.count).to eq(5) }
25
38
 
39
+ context 'perpetual subscription' do
40
+ subject(:subscription_payload) { FatZebra::PaymentPlan.create(valid_subscription_payload) }
41
+ it { is_expected.to be_accepted }
42
+ it { expect(subscription_payload.id).to_not be_empty }
43
+ it { expect(subscription_payload.payments.count).to eq(12) }
44
+ end
45
+
26
46
  context 'validations' do
27
- let(:payment_plan_valid_payload) {{}}
47
+ let(:valid_instalment_payload) {{}}
28
48
 
29
49
  it { expect { payment_plan }.to raise_error(FatZebra::RequestValidationError) }
50
+
30
51
  end
52
+
53
+
31
54
  end
32
55
 
33
56
  describe '.find', :vcr do
34
- let!(:create) { FatZebra::PaymentPlan.create(payment_plan_valid_payload) }
57
+ let!(:create) { FatZebra::PaymentPlan.create(valid_instalment_payload) }
35
58
  subject(:payment_plan) { FatZebra::PaymentPlan.find(create.reference) }
36
59
 
37
60
  it { is_expected.to be_accepted }
@@ -40,7 +63,7 @@ describe FatZebra::PaymentPlan do
40
63
  end
41
64
 
42
65
  describe '.update', :vcr do
43
- let(:create) { FatZebra::PaymentPlan.create(payment_plan_valid_payload) }
66
+ let(:create) { FatZebra::PaymentPlan.create(valid_instalment_payload) }
44
67
 
45
68
  subject(:payment_plan) { FatZebra::PaymentPlan.update(create.id, new_status: 'Suspended') }
46
69
 
@@ -50,7 +73,7 @@ describe FatZebra::PaymentPlan do
50
73
  end
51
74
 
52
75
  context '#update', :vcr do
53
- let(:payment_plan) { FatZebra::PaymentPlan.new(payment_plan_valid_payload) }
76
+ let(:payment_plan) { FatZebra::PaymentPlan.new(valid_instalment_payload) }
54
77
  before { payment_plan.save }
55
78
  before { payment_plan.update(new_status: 'Suspended') }
56
79
 
@@ -59,21 +82,21 @@ describe FatZebra::PaymentPlan do
59
82
  end
60
83
 
61
84
  describe '.delete', :vcr do
62
- let(:create) { FatZebra::PaymentPlan.create(payment_plan_valid_payload) }
85
+ let(:create) { FatZebra::PaymentPlan.create(valid_instalment_payload) }
63
86
  subject(:payment_plan) { FatZebra::PaymentPlan.delete(create.id) }
64
87
 
65
88
  it { is_expected.to be_accepted }
66
89
  end
67
90
 
68
91
  describe '#destroy', :vcr do
69
- let(:payment_plan) { FatZebra::PaymentPlan.create(payment_plan_valid_payload) }
92
+ let(:payment_plan) { FatZebra::PaymentPlan.create(valid_instalment_payload) }
70
93
  before { payment_plan.destroy }
71
94
 
72
95
  it { expect(payment_plan.status).to eq('Cancelled') }
73
96
  end
74
97
 
75
98
  describe '#suspend!', :vcr do
76
- let(:payment_plan) { FatZebra::PaymentPlan.new(payment_plan_valid_payload) }
99
+ let(:payment_plan) { FatZebra::PaymentPlan.new(valid_instalment_payload) }
77
100
  before { payment_plan.save }
78
101
  before { payment_plan.suspend! }
79
102
 
@@ -82,7 +105,7 @@ describe FatZebra::PaymentPlan do
82
105
  end
83
106
 
84
107
  describe '#active!', :vcr do
85
- let(:payment_plan) { FatZebra::PaymentPlan.new(payment_plan_valid_payload) }
108
+ let(:payment_plan) { FatZebra::PaymentPlan.new(valid_instalment_payload) }
86
109
  before { payment_plan.save }
87
110
  before { expect(payment_plan.suspend!.status).to eq('Suspended') }
88
111
  before { payment_plan.active! }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fat_zebra
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.4
4
+ version: 3.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fat Zebra
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-09 00:00:00.000000000 Z
11
+ date: 2022-10-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: byebug
@@ -234,6 +234,9 @@ files:
234
234
  - spec/cassettes/FatZebra_PaymentPlan/_create/1_1_1.yml
235
235
  - spec/cassettes/FatZebra_PaymentPlan/_create/1_1_2.yml
236
236
  - spec/cassettes/FatZebra_PaymentPlan/_create/1_1_3.yml
237
+ - spec/cassettes/FatZebra_PaymentPlan/_create/perpetual_subscription/1_1_4_1.yml
238
+ - spec/cassettes/FatZebra_PaymentPlan/_create/perpetual_subscription/1_1_4_2.yml
239
+ - spec/cassettes/FatZebra_PaymentPlan/_create/perpetual_subscription/1_1_4_3.yml
237
240
  - spec/cassettes/FatZebra_PaymentPlan/_delete/1_5_1.yml
238
241
  - spec/cassettes/FatZebra_PaymentPlan/_destroy/1_6_1.yml
239
242
  - spec/cassettes/FatZebra_PaymentPlan/_find/1_2_1.yml
@@ -362,7 +365,7 @@ files:
362
365
  homepage: ''
363
366
  licenses: []
364
367
  metadata: {}
365
- post_install_message:
368
+ post_install_message:
366
369
  rdoc_options: []
367
370
  require_paths:
368
371
  - lib
@@ -377,8 +380,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
377
380
  - !ruby/object:Gem::Version
378
381
  version: '0'
379
382
  requirements: []
380
- rubygems_version: 3.1.2
381
- signing_key:
383
+ rubygems_version: 3.1.6
384
+ signing_key:
382
385
  specification_version: 4
383
386
  summary: Fat Zebra payments gem - integrate your ruby app with Fat Zebra
384
387
  test_files: []