processout 2.4.0 → 2.5.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/Makefile +2 -0
- data/lib/processout/gateway.rb +30 -0
- data/lib/processout/gateway_configuration.rb +144 -0
- data/lib/processout/invoice.rb +2 -0
- data/lib/processout/project.rb +62 -5
- data/lib/processout/transaction.rb +42 -0
- data/lib/processout/version.rb +1 -1
- metadata +3 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: ce7980303bdbdb4f528fcb009f18608d285ccc40
         | 
| 4 | 
            +
              data.tar.gz: 480ab958ca4675c5887450cd0a4d39c95eddb229
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 760c460b12ab5614338ff86f9e989eb1d78d125210992caf2be81e324ad1faee3dac0d5abab91b36e083a3d422471ce5024d5a9e18d03b126fed5a69520d327b
         | 
| 7 | 
            +
              data.tar.gz: 637b880ff587b2e0a0459ffe62db63d22ce9b799dc6c75be3a561f8fb4329088f375b6e462ccea2f7414e474745defd648981cdf526c701c2eda0ccd01a00cd4
         | 
    
        data/Makefile
    ADDED
    
    
    
        data/lib/processout/gateway.rb
    CHANGED
    
    | @@ -157,6 +157,36 @@ module ProcessOut | |
| 157 157 | 
             
                  self
         | 
| 158 158 | 
             
                end
         | 
| 159 159 |  | 
| 160 | 
            +
                # Get all the gateway configurations of the gateway
         | 
| 161 | 
            +
                # Params:
         | 
| 162 | 
            +
                # +options+:: +Hash+ of options
         | 
| 163 | 
            +
                def fetch_gateway_configurations(options = {})
         | 
| 164 | 
            +
                  self.prefill(options)
         | 
| 165 | 
            +
             | 
| 166 | 
            +
                  request = Request.new(@client)
         | 
| 167 | 
            +
                  path    = "/gateways/" + CGI.escape(@name) + "/gateway-configurations"
         | 
| 168 | 
            +
                  data    = {
         | 
| 169 | 
            +
             | 
| 170 | 
            +
                  }
         | 
| 171 | 
            +
             | 
| 172 | 
            +
                  response = Response.new(request.get(path, data, options))
         | 
| 173 | 
            +
                  return_values = Array.new
         | 
| 174 | 
            +
                  
         | 
| 175 | 
            +
                  a    = Array.new
         | 
| 176 | 
            +
                  body = response.body
         | 
| 177 | 
            +
                  for v in body['gateway_configurations']
         | 
| 178 | 
            +
                    tmp = GatewayConfiguration.new(@client)
         | 
| 179 | 
            +
                    tmp.fill_with_data(v)
         | 
| 180 | 
            +
                    a.push(tmp)
         | 
| 181 | 
            +
                  end
         | 
| 182 | 
            +
             | 
| 183 | 
            +
                  return_values.push(a)
         | 
| 184 | 
            +
                  
         | 
| 185 | 
            +
             | 
| 186 | 
            +
                  
         | 
| 187 | 
            +
                  return_values[0]
         | 
| 188 | 
            +
                end
         | 
| 189 | 
            +
             | 
| 160 190 |  | 
| 161 191 | 
             
              end
         | 
| 162 192 | 
             
            end
         | 
| @@ -201,6 +201,150 @@ module ProcessOut | |
| 201 201 | 
             
                  self
         | 
| 202 202 | 
             
                end
         | 
| 203 203 |  | 
| 204 | 
            +
                # Get all the gateway configurations.
         | 
| 205 | 
            +
                # Params:
         | 
| 206 | 
            +
                # +options+:: +Hash+ of options
         | 
| 207 | 
            +
                def all(options = {})
         | 
| 208 | 
            +
                  self.prefill(options)
         | 
| 209 | 
            +
             | 
| 210 | 
            +
                  request = Request.new(@client)
         | 
| 211 | 
            +
                  path    = "/gateway-configurations"
         | 
| 212 | 
            +
                  data    = {
         | 
| 213 | 
            +
             | 
| 214 | 
            +
                  }
         | 
| 215 | 
            +
             | 
| 216 | 
            +
                  response = Response.new(request.get(path, data, options))
         | 
| 217 | 
            +
                  return_values = Array.new
         | 
| 218 | 
            +
                  
         | 
| 219 | 
            +
                  a    = Array.new
         | 
| 220 | 
            +
                  body = response.body
         | 
| 221 | 
            +
                  for v in body['gateway_configurations']
         | 
| 222 | 
            +
                    tmp = GatewayConfiguration.new(@client)
         | 
| 223 | 
            +
                    tmp.fill_with_data(v)
         | 
| 224 | 
            +
                    a.push(tmp)
         | 
| 225 | 
            +
                  end
         | 
| 226 | 
            +
             | 
| 227 | 
            +
                  return_values.push(a)
         | 
| 228 | 
            +
                  
         | 
| 229 | 
            +
             | 
| 230 | 
            +
                  
         | 
| 231 | 
            +
                  return_values[0]
         | 
| 232 | 
            +
                end
         | 
| 233 | 
            +
             | 
| 234 | 
            +
                # Find a gateway configuration by its ID.
         | 
| 235 | 
            +
                # Params:
         | 
| 236 | 
            +
                # +configuration_id+:: ID of the gateway configuration
         | 
| 237 | 
            +
                # +options+:: +Hash+ of options
         | 
| 238 | 
            +
                def find(configuration_id, options = {})
         | 
| 239 | 
            +
                  self.prefill(options)
         | 
| 240 | 
            +
             | 
| 241 | 
            +
                  request = Request.new(@client)
         | 
| 242 | 
            +
                  path    = "/gateway-configurations/" + CGI.escape(configuration_id) + ""
         | 
| 243 | 
            +
                  data    = {
         | 
| 244 | 
            +
             | 
| 245 | 
            +
                  }
         | 
| 246 | 
            +
             | 
| 247 | 
            +
                  response = Response.new(request.get(path, data, options))
         | 
| 248 | 
            +
                  return_values = Array.new
         | 
| 249 | 
            +
                  
         | 
| 250 | 
            +
                  body = response.body
         | 
| 251 | 
            +
                  body = body["gateway_configuration"]
         | 
| 252 | 
            +
                  
         | 
| 253 | 
            +
                  
         | 
| 254 | 
            +
                  obj = GatewayConfiguration.new(@client)
         | 
| 255 | 
            +
                  return_values.push(obj.fill_with_data(body))
         | 
| 256 | 
            +
                  
         | 
| 257 | 
            +
             | 
| 258 | 
            +
                  
         | 
| 259 | 
            +
                  return_values[0]
         | 
| 260 | 
            +
                end
         | 
| 261 | 
            +
             | 
| 262 | 
            +
                # Save the updated gateway configuration attributes and settings.
         | 
| 263 | 
            +
                # Params:
         | 
| 264 | 
            +
                # +options+:: +Hash+ of options
         | 
| 265 | 
            +
                def save(options = {})
         | 
| 266 | 
            +
                  self.prefill(options)
         | 
| 267 | 
            +
             | 
| 268 | 
            +
                  request = Request.new(@client)
         | 
| 269 | 
            +
                  path    = "/gateway-configurations/" + CGI.escape(@id) + ""
         | 
| 270 | 
            +
                  data    = {
         | 
| 271 | 
            +
                    "id" => @id, 
         | 
| 272 | 
            +
                    "name" => @name, 
         | 
| 273 | 
            +
                    "enabled" => @enabled, 
         | 
| 274 | 
            +
                    "fee_fixed" => @fee_fixed, 
         | 
| 275 | 
            +
                    "fee_percentage" => @fee_percentage, 
         | 
| 276 | 
            +
                    "default_currency" => @default_currency, 
         | 
| 277 | 
            +
                    "settings" => options.fetch(:settings, nil)
         | 
| 278 | 
            +
                  }
         | 
| 279 | 
            +
             | 
| 280 | 
            +
                  response = Response.new(request.put(path, data, options))
         | 
| 281 | 
            +
                  return_values = Array.new
         | 
| 282 | 
            +
                  
         | 
| 283 | 
            +
                  body = response.body
         | 
| 284 | 
            +
                  body = body["gateway_configuration"]
         | 
| 285 | 
            +
                  
         | 
| 286 | 
            +
                  
         | 
| 287 | 
            +
                  return_values.push(self.fill_with_data(body))
         | 
| 288 | 
            +
                  
         | 
| 289 | 
            +
             | 
| 290 | 
            +
                  
         | 
| 291 | 
            +
                  return_values[0]
         | 
| 292 | 
            +
                end
         | 
| 293 | 
            +
             | 
| 294 | 
            +
                # Delete the gateway configuration.
         | 
| 295 | 
            +
                # Params:
         | 
| 296 | 
            +
                # +options+:: +Hash+ of options
         | 
| 297 | 
            +
                def delete(options = {})
         | 
| 298 | 
            +
                  self.prefill(options)
         | 
| 299 | 
            +
             | 
| 300 | 
            +
                  request = Request.new(@client)
         | 
| 301 | 
            +
                  path    = "/gateway-configurations/" + CGI.escape(@id) + ""
         | 
| 302 | 
            +
                  data    = {
         | 
| 303 | 
            +
             | 
| 304 | 
            +
                  }
         | 
| 305 | 
            +
             | 
| 306 | 
            +
                  response = Response.new(request.delete(path, data, options))
         | 
| 307 | 
            +
                  return_values = Array.new
         | 
| 308 | 
            +
                  
         | 
| 309 | 
            +
                  return_values.push(response.success)
         | 
| 310 | 
            +
             | 
| 311 | 
            +
                  
         | 
| 312 | 
            +
                  return_values[0]
         | 
| 313 | 
            +
                end
         | 
| 314 | 
            +
             | 
| 315 | 
            +
                # Create a new gateway configuration.
         | 
| 316 | 
            +
                # Params:
         | 
| 317 | 
            +
                # +gateway_name+:: Name of the gateway
         | 
| 318 | 
            +
                # +options+:: +Hash+ of options
         | 
| 319 | 
            +
                def create(gateway_name, options = {})
         | 
| 320 | 
            +
                  self.prefill(options)
         | 
| 321 | 
            +
             | 
| 322 | 
            +
                  request = Request.new(@client)
         | 
| 323 | 
            +
                  path    = "/gateways/" + CGI.escape(gateway_name) + "/gateway-configurations"
         | 
| 324 | 
            +
                  data    = {
         | 
| 325 | 
            +
                    "id" => @id, 
         | 
| 326 | 
            +
                    "name" => @name, 
         | 
| 327 | 
            +
                    "enabled" => @enabled, 
         | 
| 328 | 
            +
                    "fee_fixed" => @fee_fixed, 
         | 
| 329 | 
            +
                    "fee_percentage" => @fee_percentage, 
         | 
| 330 | 
            +
                    "default_currency" => @default_currency, 
         | 
| 331 | 
            +
                    "settings" => options.fetch(:settings, nil)
         | 
| 332 | 
            +
                  }
         | 
| 333 | 
            +
             | 
| 334 | 
            +
                  response = Response.new(request.post(path, data, options))
         | 
| 335 | 
            +
                  return_values = Array.new
         | 
| 336 | 
            +
                  
         | 
| 337 | 
            +
                  body = response.body
         | 
| 338 | 
            +
                  body = body["gateway_configuration"]
         | 
| 339 | 
            +
                  
         | 
| 340 | 
            +
                  
         | 
| 341 | 
            +
                  return_values.push(self.fill_with_data(body))
         | 
| 342 | 
            +
                  
         | 
| 343 | 
            +
             | 
| 344 | 
            +
                  
         | 
| 345 | 
            +
                  return_values[0]
         | 
| 346 | 
            +
                end
         | 
| 347 | 
            +
             | 
| 204 348 |  | 
| 205 349 | 
             
              end
         | 
| 206 350 | 
             
            end
         | 
    
        data/lib/processout/invoice.rb
    CHANGED
    
    | @@ -394,6 +394,7 @@ module ProcessOut | |
| 394 394 | 
             
                  path    = "/invoices/" + CGI.escape(@id) + "/authorize"
         | 
| 395 395 | 
             
                  data    = {
         | 
| 396 396 | 
             
                    "synchronous" => options.fetch(:synchronous, nil), 
         | 
| 397 | 
            +
                    "prioritized_gateway_configuration_id" => options.fetch(:prioritized_gateway_configuration_id, nil), 
         | 
| 397 398 | 
             
                    "source" => source
         | 
| 398 399 | 
             
                  }
         | 
| 399 400 |  | 
| @@ -421,6 +422,7 @@ module ProcessOut | |
| 421 422 | 
             
                  data    = {
         | 
| 422 423 | 
             
                    "authorize_only" => options.fetch(:authorize_only, nil), 
         | 
| 423 424 | 
             
                    "synchronous" => options.fetch(:synchronous, nil), 
         | 
| 425 | 
            +
                    "prioritized_gateway_configuration_id" => options.fetch(:prioritized_gateway_configuration_id, nil), 
         | 
| 424 426 | 
             
                    "source" => source
         | 
| 425 427 | 
             
                  }
         | 
| 426 428 |  | 
    
        data/lib/processout/project.rb
    CHANGED
    
    | @@ -197,14 +197,41 @@ module ProcessOut | |
| 197 197 | 
             
                  self
         | 
| 198 198 | 
             
                end
         | 
| 199 199 |  | 
| 200 | 
            -
                #  | 
| 200 | 
            +
                # Regenerate the project private key. Make sure to store the new private key and use it in any future request.
         | 
| 201 201 | 
             
                # Params:
         | 
| 202 202 | 
             
                # +options+:: +Hash+ of options
         | 
| 203 | 
            -
                def  | 
| 203 | 
            +
                def regenerate_private_key(options = {})
         | 
| 204 204 | 
             
                  self.prefill(options)
         | 
| 205 205 |  | 
| 206 206 | 
             
                  request = Request.new(@client)
         | 
| 207 | 
            -
                  path    = "/projects/ | 
| 207 | 
            +
                  path    = "/projects/{project_id}/private-key"
         | 
| 208 | 
            +
                  data    = {
         | 
| 209 | 
            +
             | 
| 210 | 
            +
                  }
         | 
| 211 | 
            +
             | 
| 212 | 
            +
                  response = Response.new(request.post(path, data, options))
         | 
| 213 | 
            +
                  return_values = Array.new
         | 
| 214 | 
            +
                  
         | 
| 215 | 
            +
                  body = response.body
         | 
| 216 | 
            +
                  body = body["project"]
         | 
| 217 | 
            +
                  
         | 
| 218 | 
            +
                  
         | 
| 219 | 
            +
                  obj = Project.new(@client)
         | 
| 220 | 
            +
                  return_values.push(obj.fill_with_data(body))
         | 
| 221 | 
            +
                  
         | 
| 222 | 
            +
             | 
| 223 | 
            +
                  
         | 
| 224 | 
            +
                  return_values[0]
         | 
| 225 | 
            +
                end
         | 
| 226 | 
            +
             | 
| 227 | 
            +
                # Get all the supervised projects.
         | 
| 228 | 
            +
                # Params:
         | 
| 229 | 
            +
                # +options+:: +Hash+ of options
         | 
| 230 | 
            +
                def all_supervised(options = {})
         | 
| 231 | 
            +
                  self.prefill(options)
         | 
| 232 | 
            +
             | 
| 233 | 
            +
                  request = Request.new(@client)
         | 
| 234 | 
            +
                  path    = "/supervised-projects"
         | 
| 208 235 | 
             
                  data    = {
         | 
| 209 236 |  | 
| 210 237 | 
             
                  }
         | 
| @@ -214,8 +241,8 @@ module ProcessOut | |
| 214 241 |  | 
| 215 242 | 
             
                  a    = Array.new
         | 
| 216 243 | 
             
                  body = response.body
         | 
| 217 | 
            -
                  for v in body[' | 
| 218 | 
            -
                    tmp =  | 
| 244 | 
            +
                  for v in body['projects']
         | 
| 245 | 
            +
                    tmp = Project.new(@client)
         | 
| 219 246 | 
             
                    tmp.fill_with_data(v)
         | 
| 220 247 | 
             
                    a.push(tmp)
         | 
| 221 248 | 
             
                  end
         | 
| @@ -224,6 +251,36 @@ module ProcessOut | |
| 224 251 |  | 
| 225 252 |  | 
| 226 253 |  | 
| 254 | 
            +
                  return_values[0]
         | 
| 255 | 
            +
                end
         | 
| 256 | 
            +
             | 
| 257 | 
            +
                # Create a new supervised project.
         | 
| 258 | 
            +
                # Params:
         | 
| 259 | 
            +
                # +options+:: +Hash+ of options
         | 
| 260 | 
            +
                def create_supervised(options = {})
         | 
| 261 | 
            +
                  self.prefill(options)
         | 
| 262 | 
            +
             | 
| 263 | 
            +
                  request = Request.new(@client)
         | 
| 264 | 
            +
                  path    = "/supervised-projects"
         | 
| 265 | 
            +
                  data    = {
         | 
| 266 | 
            +
                    "id" => @id, 
         | 
| 267 | 
            +
                    "name" => @name, 
         | 
| 268 | 
            +
                    "default_currency" => @default_currency, 
         | 
| 269 | 
            +
                    "dunning_configuration" => @dunning_configuration, 
         | 
| 270 | 
            +
                    "applepay_settings" => options.fetch(:applepay_settings, nil)
         | 
| 271 | 
            +
                  }
         | 
| 272 | 
            +
             | 
| 273 | 
            +
                  response = Response.new(request.post(path, data, options))
         | 
| 274 | 
            +
                  return_values = Array.new
         | 
| 275 | 
            +
                  
         | 
| 276 | 
            +
                  body = response.body
         | 
| 277 | 
            +
                  body = body["project"]
         | 
| 278 | 
            +
                  
         | 
| 279 | 
            +
                  
         | 
| 280 | 
            +
                  return_values.push(self.fill_with_data(body))
         | 
| 281 | 
            +
                  
         | 
| 282 | 
            +
             | 
| 283 | 
            +
                  
         | 
| 227 284 | 
             
                  return_values[0]
         | 
| 228 285 | 
             
                end
         | 
| 229 286 |  | 
| @@ -20,6 +20,8 @@ module ProcessOut | |
| 20 20 | 
             
                attr_reader :token_id
         | 
| 21 21 | 
             
                attr_reader :card
         | 
| 22 22 | 
             
                attr_reader :card_id
         | 
| 23 | 
            +
                attr_reader :gateway_configuration
         | 
| 24 | 
            +
                attr_reader :gateway_configuration_id
         | 
| 23 25 | 
             
                attr_reader :operations
         | 
| 24 26 | 
             
                attr_reader :refunds
         | 
| 25 27 | 
             
                attr_reader :name
         | 
| @@ -28,6 +30,7 @@ module ProcessOut | |
| 28 30 | 
             
                attr_reader :captured_amount
         | 
| 29 31 | 
             
                attr_reader :currency
         | 
| 30 32 | 
             
                attr_reader :error_code
         | 
| 33 | 
            +
                attr_reader :three_d_s_status
         | 
| 31 34 | 
             
                attr_reader :status
         | 
| 32 35 | 
             
                attr_reader :authorized
         | 
| 33 36 | 
             
                attr_reader :captured
         | 
| @@ -163,6 +166,26 @@ module ProcessOut | |
| 163 166 | 
             
                  @card_id = val
         | 
| 164 167 | 
             
                end
         | 
| 165 168 |  | 
| 169 | 
            +
                def gateway_configuration=(val)
         | 
| 170 | 
            +
                  if val.nil?
         | 
| 171 | 
            +
                    @gateway_configuration = val
         | 
| 172 | 
            +
                    return
         | 
| 173 | 
            +
                  end
         | 
| 174 | 
            +
             | 
| 175 | 
            +
                  if val.instance_of? GatewayConfiguration
         | 
| 176 | 
            +
                    @gateway_configuration = val
         | 
| 177 | 
            +
                  else
         | 
| 178 | 
            +
                    obj = GatewayConfiguration.new(@client)
         | 
| 179 | 
            +
                    obj.fill_with_data(val)
         | 
| 180 | 
            +
                    @gateway_configuration = obj
         | 
| 181 | 
            +
                  end
         | 
| 182 | 
            +
                  
         | 
| 183 | 
            +
                end
         | 
| 184 | 
            +
                
         | 
| 185 | 
            +
                def gateway_configuration_id=(val)
         | 
| 186 | 
            +
                  @gateway_configuration_id = val
         | 
| 187 | 
            +
                end
         | 
| 188 | 
            +
                
         | 
| 166 189 | 
             
                def operations=(val)
         | 
| 167 190 | 
             
                  if val.nil?
         | 
| 168 191 | 
             
                    @operations = []
         | 
| @@ -227,6 +250,10 @@ module ProcessOut | |
| 227 250 | 
             
                  @error_code = val
         | 
| 228 251 | 
             
                end
         | 
| 229 252 |  | 
| 253 | 
            +
                def three_d_s_status=(val)
         | 
| 254 | 
            +
                  @three_d_s_status = val
         | 
| 255 | 
            +
                end
         | 
| 256 | 
            +
                
         | 
| 230 257 | 
             
                def status=(val)
         | 
| 231 258 | 
             
                  @status = val
         | 
| 232 259 | 
             
                end
         | 
| @@ -284,6 +311,8 @@ module ProcessOut | |
| 284 311 | 
             
                  self.token_id = data.fetch(:token_id, nil)
         | 
| 285 312 | 
             
                  self.card = data.fetch(:card, nil)
         | 
| 286 313 | 
             
                  self.card_id = data.fetch(:card_id, nil)
         | 
| 314 | 
            +
                  self.gateway_configuration = data.fetch(:gateway_configuration, nil)
         | 
| 315 | 
            +
                  self.gateway_configuration_id = data.fetch(:gateway_configuration_id, nil)
         | 
| 287 316 | 
             
                  self.operations = data.fetch(:operations, nil)
         | 
| 288 317 | 
             
                  self.refunds = data.fetch(:refunds, nil)
         | 
| 289 318 | 
             
                  self.name = data.fetch(:name, nil)
         | 
| @@ -292,6 +321,7 @@ module ProcessOut | |
| 292 321 | 
             
                  self.captured_amount = data.fetch(:captured_amount, nil)
         | 
| 293 322 | 
             
                  self.currency = data.fetch(:currency, nil)
         | 
| 294 323 | 
             
                  self.error_code = data.fetch(:error_code, nil)
         | 
| 324 | 
            +
                  self.three_d_s_status = data.fetch(:three_d_s_status, nil)
         | 
| 295 325 | 
             
                  self.status = data.fetch(:status, nil)
         | 
| 296 326 | 
             
                  self.authorized = data.fetch(:authorized, nil)
         | 
| 297 327 | 
             
                  self.captured = data.fetch(:captured, nil)
         | 
| @@ -355,6 +385,12 @@ module ProcessOut | |
| 355 385 | 
             
                  if data.include? "card_id"
         | 
| 356 386 | 
             
                    self.card_id = data["card_id"]
         | 
| 357 387 | 
             
                  end
         | 
| 388 | 
            +
                  if data.include? "gateway_configuration"
         | 
| 389 | 
            +
                    self.gateway_configuration = data["gateway_configuration"]
         | 
| 390 | 
            +
                  end
         | 
| 391 | 
            +
                  if data.include? "gateway_configuration_id"
         | 
| 392 | 
            +
                    self.gateway_configuration_id = data["gateway_configuration_id"]
         | 
| 393 | 
            +
                  end
         | 
| 358 394 | 
             
                  if data.include? "operations"
         | 
| 359 395 | 
             
                    self.operations = data["operations"]
         | 
| 360 396 | 
             
                  end
         | 
| @@ -379,6 +415,9 @@ module ProcessOut | |
| 379 415 | 
             
                  if data.include? "error_code"
         | 
| 380 416 | 
             
                    self.error_code = data["error_code"]
         | 
| 381 417 | 
             
                  end
         | 
| 418 | 
            +
                  if data.include? "three_d_s_status"
         | 
| 419 | 
            +
                    self.three_d_s_status = data["three_d_s_status"]
         | 
| 420 | 
            +
                  end
         | 
| 382 421 | 
             
                  if data.include? "status"
         | 
| 383 422 | 
             
                    self.status = data["status"]
         | 
| 384 423 | 
             
                  end
         | 
| @@ -430,6 +469,8 @@ module ProcessOut | |
| 430 469 | 
             
                  self.token_id = data.fetch(:token_id, self.token_id)
         | 
| 431 470 | 
             
                  self.card = data.fetch(:card, self.card)
         | 
| 432 471 | 
             
                  self.card_id = data.fetch(:card_id, self.card_id)
         | 
| 472 | 
            +
                  self.gateway_configuration = data.fetch(:gateway_configuration, self.gateway_configuration)
         | 
| 473 | 
            +
                  self.gateway_configuration_id = data.fetch(:gateway_configuration_id, self.gateway_configuration_id)
         | 
| 433 474 | 
             
                  self.operations = data.fetch(:operations, self.operations)
         | 
| 434 475 | 
             
                  self.refunds = data.fetch(:refunds, self.refunds)
         | 
| 435 476 | 
             
                  self.name = data.fetch(:name, self.name)
         | 
| @@ -438,6 +479,7 @@ module ProcessOut | |
| 438 479 | 
             
                  self.captured_amount = data.fetch(:captured_amount, self.captured_amount)
         | 
| 439 480 | 
             
                  self.currency = data.fetch(:currency, self.currency)
         | 
| 440 481 | 
             
                  self.error_code = data.fetch(:error_code, self.error_code)
         | 
| 482 | 
            +
                  self.three_d_s_status = data.fetch(:three_d_s_status, self.three_d_s_status)
         | 
| 441 483 | 
             
                  self.status = data.fetch(:status, self.status)
         | 
| 442 484 | 
             
                  self.authorized = data.fetch(:authorized, self.authorized)
         | 
| 443 485 | 
             
                  self.captured = data.fetch(:captured, self.captured)
         | 
    
        data/lib/processout/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: processout
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 2. | 
| 4 | 
            +
              version: 2.5.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Manuel HUEZ
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2018-01-10 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -64,6 +64,7 @@ files: | |
| 64 64 | 
             
            - ".travis.yml"
         | 
| 65 65 | 
             
            - Gemfile
         | 
| 66 66 | 
             
            - LICENSE.txt
         | 
| 67 | 
            +
            - Makefile
         | 
| 67 68 | 
             
            - README.md
         | 
| 68 69 | 
             
            - Rakefile
         | 
| 69 70 | 
             
            - bin/console
         |