transbank-sdk 1.0.2 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (129) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/reporte-de-error.md +40 -0
  3. data/.gitignore +3 -1
  4. data/.travis.yml +3 -1
  5. data/CHANGELOG.md +36 -0
  6. data/Dockerfile +1 -2
  7. data/Makefile +3 -3
  8. data/README.md +5 -8
  9. data/docker-compose.yml +1 -1
  10. data/lib/transbank/sdk.rb +9 -5
  11. data/lib/transbank/sdk/oneclick/base.rb +64 -0
  12. data/lib/transbank/sdk/oneclick/errors/oneclick_error.rb +16 -0
  13. data/lib/transbank/sdk/oneclick/inscription/errors/mall_inscription_delete_error.rb +16 -0
  14. data/lib/transbank/sdk/oneclick/inscription/errors/mall_inscription_finish_error.rb +16 -0
  15. data/lib/transbank/sdk/oneclick/inscription/errors/mall_inscription_start_error.rb +16 -0
  16. data/lib/transbank/sdk/oneclick/inscription/errors/oneclick_mall_inscription_errors.rb +3 -0
  17. data/lib/transbank/sdk/oneclick/inscription/inscription.rb +3 -0
  18. data/lib/transbank/sdk/oneclick/inscription/responses/mall_inscription_delete_response.rb +18 -0
  19. data/lib/transbank/sdk/oneclick/inscription/responses/mall_inscription_finish_response.rb +15 -0
  20. data/lib/transbank/sdk/oneclick/inscription/responses/mall_inscription_start_response.rb +14 -0
  21. data/lib/transbank/sdk/oneclick/inscription/responses/oneclick_mall_inscription_responses.rb +3 -0
  22. data/lib/transbank/sdk/oneclick/mall/errors/mall_transaction_authorize_error.rb +16 -0
  23. data/lib/transbank/sdk/oneclick/mall/errors/mall_transaction_refund_error.rb +16 -0
  24. data/lib/transbank/sdk/oneclick/mall/errors/mall_transaction_status_error.rb +16 -0
  25. data/lib/transbank/sdk/oneclick/mall/errors/oneclick_mall_errors.rb +4 -0
  26. data/lib/transbank/sdk/oneclick/mall/mall_inscription.rb +73 -0
  27. data/lib/transbank/sdk/oneclick/mall/mall_transaction.rb +97 -0
  28. data/lib/transbank/sdk/oneclick/mall/oneclick_mall.rb +4 -0
  29. data/lib/transbank/sdk/oneclick/mall/responses/mall_transaction_authorize_response.rb +16 -0
  30. data/lib/transbank/sdk/oneclick/mall/responses/mall_transaction_refund_response.rb +16 -0
  31. data/lib/transbank/sdk/oneclick/mall/responses/mall_transaction_status_response.rb +15 -0
  32. data/lib/transbank/sdk/oneclick/mall/responses/oneclick_mall_responses.rb +4 -0
  33. data/lib/transbank/sdk/oneclick/mall_deferred/errors/mall_deferred_transaction_capture_error.rb +16 -0
  34. data/lib/transbank/sdk/oneclick/mall_deferred/mall_deferred_inscription.rb +20 -0
  35. data/lib/transbank/sdk/oneclick/mall_deferred/mall_deferred_transaction.rb +42 -0
  36. data/lib/transbank/sdk/oneclick/mall_deferred/responses/mall_deferred_transaction_capture_response.rb +16 -0
  37. data/lib/transbank/sdk/oneclick/oneclick.rb +12 -0
  38. data/lib/transbank/sdk/onepay/base.rb +10 -0
  39. data/lib/transbank/sdk/onepay/models/item.rb +1 -1
  40. data/lib/transbank/sdk/onepay/models/refund.rb +4 -5
  41. data/lib/transbank/sdk/onepay/models/shopping_cart.rb +1 -1
  42. data/lib/transbank/sdk/onepay/models/transaction.rb +11 -9
  43. data/lib/transbank/sdk/onepay/requests/request.rb +1 -1
  44. data/lib/transbank/sdk/onepay/requests/transaction_create_request.rb +6 -1
  45. data/lib/transbank/sdk/onepay/responses/response.rb +1 -1
  46. data/lib/transbank/sdk/patpass/errors/integration_type_error.rb +8 -0
  47. data/lib/transbank/sdk/patpass/errors/patpass_error.rb +15 -0
  48. data/lib/transbank/sdk/patpass/patpass_by_webpay/base.rb +47 -0
  49. data/lib/transbank/sdk/patpass/patpass_by_webpay/errors/patpass_by_webpay_errors.rb +12 -0
  50. data/lib/transbank/sdk/patpass/patpass_by_webpay/errors/transaction_commit_error.rb +15 -0
  51. data/lib/transbank/sdk/patpass/patpass_by_webpay/errors/transaction_create_error.rb +15 -0
  52. data/lib/transbank/sdk/patpass/patpass_by_webpay/errors/transaction_status_error.rb +15 -0
  53. data/lib/transbank/sdk/patpass/patpass_by_webpay/options.rb +9 -0
  54. data/lib/transbank/sdk/patpass/patpass_by_webpay/patpass_by_webpay.rb +16 -0
  55. data/lib/transbank/sdk/patpass/patpass_by_webpay/responses/patpass_by_webpay_responses.rb +3 -0
  56. data/lib/transbank/sdk/patpass/patpass_by_webpay/responses/transaction_commit_response.rb +20 -0
  57. data/lib/transbank/sdk/patpass/patpass_by_webpay/responses/transaction_create_response.rb +15 -0
  58. data/lib/transbank/sdk/patpass/patpass_by_webpay/responses/transaction_status_response.rb +21 -0
  59. data/lib/transbank/sdk/patpass/patpass_by_webpay/transaction.rb +93 -0
  60. data/lib/transbank/sdk/patpass/patpass_comercio/base.rb +47 -0
  61. data/lib/transbank/sdk/patpass/patpass_comercio/errors/inscription_start_error.rb +15 -0
  62. data/lib/transbank/sdk/patpass/patpass_comercio/errors/inscription_status_error.rb +15 -0
  63. data/lib/transbank/sdk/patpass/patpass_comercio/errors/patpass_comercio_errors.rb +2 -0
  64. data/lib/transbank/sdk/patpass/patpass_comercio/inscription.rb +79 -0
  65. data/lib/transbank/sdk/patpass/patpass_comercio/options.rb +9 -0
  66. data/lib/transbank/sdk/patpass/patpass_comercio/patpass_comercio.rb +5 -0
  67. data/lib/transbank/sdk/patpass/patpass_comercio/responses/inscription_start_response.rb +13 -0
  68. data/lib/transbank/sdk/patpass/patpass_comercio/responses/inscription_status_response.rb +13 -0
  69. data/lib/transbank/sdk/patpass/patpass_comercio/responses/patpass_comercio_responses.rb +2 -0
  70. data/lib/transbank/sdk/transaccion_completa/base.rb +49 -0
  71. data/lib/transbank/sdk/transaccion_completa/errors/transaccion_completa_error.rb +16 -0
  72. data/lib/transbank/sdk/transaccion_completa/errors/transaccion_completa_errors.rb +6 -0
  73. data/lib/transbank/sdk/transaccion_completa/errors/transaction_commit_error.rb +14 -0
  74. data/lib/transbank/sdk/transaccion_completa/errors/transaction_create_error.rb +14 -0
  75. data/lib/transbank/sdk/transaccion_completa/errors/transaction_installments_error.rb +14 -0
  76. data/lib/transbank/sdk/transaccion_completa/errors/transaction_refund_error.rb +14 -0
  77. data/lib/transbank/sdk/transaccion_completa/errors/transaction_status_error.rb +14 -0
  78. data/lib/transbank/sdk/transaccion_completa/mall/mall_transaction.rb +164 -0
  79. data/lib/transbank/sdk/transaccion_completa/mall/responses/mall_transaction_commit_response.rb +14 -0
  80. data/lib/transbank/sdk/transaccion_completa/mall/responses/mall_transaction_installments_response.rb +11 -0
  81. data/lib/transbank/sdk/transaccion_completa/mall/responses/mall_transaction_responses.rb +3 -0
  82. data/lib/transbank/sdk/transaccion_completa/mall/responses/mall_transaction_status_response.rb +14 -0
  83. data/lib/transbank/sdk/transaccion_completa/options.rb +7 -0
  84. data/lib/transbank/sdk/transaccion_completa/responses/transaccion_completa_responses.rb +5 -0
  85. data/lib/transbank/sdk/transaccion_completa/responses/transaction_commit_response.rb +16 -0
  86. data/lib/transbank/sdk/transaccion_completa/responses/transaction_create_response.rb +10 -0
  87. data/lib/transbank/sdk/transaccion_completa/responses/transaction_installments_response.rb +13 -0
  88. data/lib/transbank/sdk/transaccion_completa/responses/transaction_refund_response.rb +14 -0
  89. data/lib/transbank/sdk/transaccion_completa/responses/transaction_status_response.rb +16 -0
  90. data/lib/transbank/sdk/transaccion_completa/transaccion_completa.rb +5 -0
  91. data/lib/transbank/sdk/transaccion_completa/transaction.rb +117 -0
  92. data/lib/transbank/sdk/transbank_error.rb +6 -0
  93. data/lib/transbank/sdk/utils/json_utils.rb +75 -0
  94. data/lib/transbank/sdk/utils/net_helper.rb +82 -0
  95. data/lib/transbank/sdk/{onepay/utils → utils}/request_builder.rb +18 -10
  96. data/lib/transbank/sdk/{onepay/utils → utils}/signature_utils.rb +0 -0
  97. data/lib/transbank/sdk/utils/utils.rb +9 -0
  98. data/lib/transbank/sdk/version.rb +1 -1
  99. data/lib/transbank/sdk/webpay/errors/integration_type_error.rb +8 -0
  100. data/lib/transbank/sdk/webpay/errors/webpay_error.rb +14 -0
  101. data/lib/transbank/sdk/webpay/webpay_plus/base.rb +74 -0
  102. data/lib/transbank/sdk/webpay/webpay_plus/deferred/deferred_transaction.rb +108 -0
  103. data/lib/transbank/sdk/webpay/webpay_plus/deferred/errors/transaction_capture_error.rb +16 -0
  104. data/lib/transbank/sdk/webpay/webpay_plus/deferred/errors/webpay_plus_deferred_errors.rb +1 -0
  105. data/lib/transbank/sdk/webpay/webpay_plus/deferred/responses/transaction_capture_response.rb +22 -0
  106. data/lib/transbank/sdk/webpay/webpay_plus/deferred/responses/webpay_plus_deferred_responses.rb +1 -0
  107. data/lib/transbank/sdk/webpay/webpay_plus/errors/transaction_commit_error.rb +17 -0
  108. data/lib/transbank/sdk/webpay/webpay_plus/errors/transaction_create_error.rb +16 -0
  109. data/lib/transbank/sdk/webpay/webpay_plus/errors/transaction_refund_error.rb +16 -0
  110. data/lib/transbank/sdk/webpay/webpay_plus/errors/transaction_status_error.rb +16 -0
  111. data/lib/transbank/sdk/webpay/webpay_plus/errors/webpay_plus_errors.rb +13 -0
  112. data/lib/transbank/sdk/webpay/webpay_plus/mall/mall_transaction.rb +88 -0
  113. data/lib/transbank/sdk/webpay/webpay_plus/mall/responses/mall_transaction_commit_response.rb +23 -0
  114. data/lib/transbank/sdk/webpay/webpay_plus/mall/responses/mall_transaction_status_response.rb +21 -0
  115. data/lib/transbank/sdk/webpay/webpay_plus/mall/responses/webpay_plus_mall_responses.rb +2 -0
  116. data/lib/transbank/sdk/webpay/webpay_plus/mall_deferred/mall_deferred_transaction.rb +109 -0
  117. data/lib/transbank/sdk/webpay/webpay_plus/options.rb +9 -0
  118. data/lib/transbank/sdk/webpay/webpay_plus/responses/transaction_commit_response.rb +20 -0
  119. data/lib/transbank/sdk/webpay/webpay_plus/responses/transaction_create_response.rb +15 -0
  120. data/lib/transbank/sdk/webpay/webpay_plus/responses/transaction_refund_response.rb +19 -0
  121. data/lib/transbank/sdk/webpay/webpay_plus/responses/transaction_status_response.rb +21 -0
  122. data/lib/transbank/sdk/webpay/webpay_plus/responses/webpay_plus_responses.rb +4 -0
  123. data/lib/transbank/sdk/webpay/webpay_plus/transaction.rb +89 -0
  124. data/lib/transbank/sdk/webpay/webpay_plus/webpay_plus.rb +24 -0
  125. data/transbank-sdk.gemspec +1 -1
  126. metadata +112 -11
  127. data/lib/transbank/sdk/onepay/utils/json_utils.rb +0 -73
  128. data/lib/transbank/sdk/onepay/utils/net_helper.rb +0 -38
  129. data/lib/transbank/sdk/onepay/utils/utils.rb +0 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2a8df6263667dd5d56a5ec33958d00bce55377a0fcd5c021a7e9a19a3c5f6f6b
4
- data.tar.gz: 4e29a90d4381147b9b19bb08668b1734cc484fba4fcafe7fbd7ae07b68570a09
3
+ metadata.gz: fff116ca100cca2cfb3c412a46d825a78215ba4acbea4308ce56a4a8192de5cd
4
+ data.tar.gz: e6adde4697ebd79ef504bd6dfce1b202ea42049bba0ebf686156ccc1d3487697
5
5
  SHA512:
6
- metadata.gz: d0e29ff5c3d210822298617a5b83d96fc75de102d2f29a09a792f8aa40befafd2bdb2f4ce556ec2cc34892c350d899d950cdf88689334222390c67e88a82ed2f
7
- data.tar.gz: e854d191d260c530fc7ef3250d4d5f59ce230176d68f2895c5c2d9c414b13888c546c86ab55e837443a17625567a8de1e79aea703d72c8906e036ad8e1d9e53f
6
+ metadata.gz: 84dccd970b7eeeee1eefe733b7a80493ecdfb9be0720fbf4c56eb04292a06596a9f19956a2c56fda5a23a31c2534f6808789e598124f1015e4d8eb8a401ddbb6
7
+ data.tar.gz: 14a9d437bce2c682ca60b33534490764a743ca0b2482f3ef0dc1ea72f530f92c6fb6c9304374bb77cace773df523c8498f82d519ee055e990c776556ac344e17
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: Reporte de Error
3
+ about: Crea un reporte para ayudarnos a mejorar
4
+ title: ''
5
+ labels: bug
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe el bug**
11
+
12
+ Una descripción concisa sobre el bug.
13
+
14
+ **Para reproducir**
15
+
16
+ 1. Configura '...'
17
+ 2. Crea un objeto '...'
18
+ 3. Ejecuta el método '...'
19
+ 4. Se ve el error en '...'
20
+
21
+ **Comportamiento observado**
22
+
23
+ Describe de forma concisa lo que observaste siguiendo los pasos para reproducir el error.
24
+
25
+ **Comportamiento esperado**
26
+
27
+ Una explicación concisa y clara de qué es lo que esperas que ocurra.
28
+
29
+ **Capturas de pantalla**
30
+
31
+ Si aplica, agrega aquí capturas de pantalla que ayuden a explicar tu problema.
32
+
33
+ **Versiones (por favor agrega aquí la siguiente información):**
34
+ - SDK: [e.g. 1.1.0]
35
+ - Ruby: [e.g. 2.5.2]
36
+ - Bundler: [e.g. 2.0.1]
37
+
38
+ **Contexto adicional**
39
+
40
+ Agrega cualquier otro información sobre el problema aquí.
data/.gitignore CHANGED
@@ -6,9 +6,11 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ /.DS_Store/
9
10
  .idea
10
11
  *.gem
11
12
  Gemfile.lock
12
13
  .built
13
14
  .bundled
14
-
15
+ .rakeTasks
16
+ .DS_Store
@@ -1,8 +1,10 @@
1
1
  deploy:
2
2
  provider: rubygems
3
3
  api_key:
4
- secure: DrUEm8pAjKtSekGBZz9/dMK92CSj2J+Zi1KOMLdDMckD4UCifusmbyqsp+RWAYBX1fWREyjMW0VvaPgj2eYOEaQrr6+TmygQMel1sFKSC6pOMVHQ3NMPwacVG5rGlNlK5+1PuNyR/ZGwtIdWkHe8+g9CvlvliNdY5KYtVs0pnwGUOMeQAwuIgM/w7uSm67zL7M3pYqEArU73EoX9puUS+k6aQ+KtxBckpqi7GtA5+42F8kTvEg+Y0h385qOvnQhjwepYh6YvfTeyzxc5fqFiBlO4TZp4rCoCpEeY1XO1VBCip+aGe5FVoWJrWkYONWdKV4GGzQd0Kd2Jmis4ieBDoi1julUK+uudy3CcjT3pSvSl6NyEpkUDJrJLZ9vn5P5SRJrUsWPDpkun5TptOnc1W1lgyJRypM47BbJ/qRzSr279iQmbvkEMci132Vp3v1Q17zDzBAyI13jirxNN4aw/PB0UCG7XRxqfEhnN391p1QVjB5u24G8r+gxABrJQA0WroKvQACstHd160wFWHxb57kSTaD32j3dzIbT+IdylF0ENmGQCohhUjwZt9ldv5cdQOyq0Jhsu9j8T/VzSRc52n1by1JQgl4nu4b7pmmNbfsEL6P13+m93TyKQiK0tr4CgdzF2XrY/bBJxoMvUTd2To4X77IRMayjkoZWEOT2RzrA=
4
+ secure: Y3z7qW8UhuDi0AqMr9T6ti46w3jLuLDRLuHUBTff80lYAZhBwCNj7U9UvlgELTiOC/nLREtboGW5ZUf3XIIiRr2oIqCSSWYVR6OCuPGTHS/hvGBi0T5jEL30/YuIEbIuz3xkXqN15WlOouKVgfPsNcL8mfLZBZMHQ9QwB6P0E2rg2GZj1QVqAUjnn/JGet0d2EJb48YyndN4nGVhaXXUQhcyyy1+XWEkC3nCo6v1dwE5pS8QK4kcRevRvL9G8mebxX74IuIbgW2bXBHPLNUbuUOHuNNUrrNIJDFUf8xXouLDT5QN4CsoldcgSIGuBvcJlmoubQFfju4iuGt/xnL8BtsKDy3iZ+xnIji6h7MGNAOpiZ7e2LavGvO5luYVEpuv2iG9V/FpJY5DJcBZ8779LnA97NAV7bz383tjihCfR9kzUh5rs2To42FV0IQj0btWuGesVmPefWjwV/EzjmbN0+PhNmxDwQAJS49cHycZKTeestaR4MgHigXZ2CGRAJSKYr3Tj7/r8KZW6MGY6KgXiwjpu+d3+UidAwI1viiRrCGuWBALkAAaxGR0H8qamMsJr/DQtjAgXDITRlAScpWzicgvEEHyXTos45EIrsJZV72O/jj8Zvbw83rEMv8It3yCS43deLsyw+5a4i9y9HFKuGQPa8w7yR1xEOnh6G3AiWY=
5
5
  gem: transbank-sdk
6
6
  on:
7
7
  tags: true
8
8
  repo: TransbankDevelopers/transbank-sdk-ruby
9
+ rvm:
10
+ - 2.4.1
@@ -4,6 +4,42 @@ Todos los cambios notables a este proyecto serán documentados en este archivo.
4
4
  El formato está basado en [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
  y este proyecto adhiere a [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [1.4.0] - 2020-12-03
8
+ ### Added
9
+ - Se agregan métodos de configuración para integración a Webpay Plus en sus modalidades diferidas y mall diferida.
10
+ - Se agregan métodos de configuración para integración a Webpay Oneclick en su modalidad mall diferida.
11
+
12
+ ### Fixed
13
+ - Se arregla forma en que se lee configuración del SDK, estaba tomando valores de una constante en vez de la variable de clase correspondiente. Este arreglo es para todos los productos con la excepción de Onepay
14
+
15
+ ## [1.3.1] - 2020-10-29
16
+ ### Fixed
17
+ - Se revierte commit que elimina requires necesarios para productos REST
18
+
19
+ ## [1.3.0] - 2020-10-26
20
+
21
+ ### Added
22
+
23
+ - Se agrega soporte para:
24
+ - Webpay Plus Rest
25
+ - modalidad normal
26
+ - modalidad captura diferida
27
+ - modalidad mall
28
+ - modalidad mall captura diferida
29
+ - Patpass by Webpay Rest
30
+ - Patpass Comercio Rest
31
+ - Transacción completa Rest
32
+ - modalidad mall
33
+ - Oneclick Mall Captura diferida
34
+
35
+ ## [1.2.0] - 2019-12-26
36
+ ### Added
37
+ - Se agrega soporte para Oneclick Mall y Transacción Completa en sus versiones REST.
38
+
39
+ ## [1.1.0] - 2018-04-08
40
+ ### Added
41
+ - Se agregaron los parámetros `qr_width_height` y `commerce_logo_url` a Options, para definir el tamaño del QR generado para la transacción, y especificar la ubicación del logo de comercio para ser mostrado en la aplicación móvil de Onepay. Puedes configurar estos parámetros globalmente o por transacción.
42
+
7
43
  ## [1.0.2] - 2018-11-29
8
44
  ### Fixed
9
45
  - Corrige problema que evitaba poder utilizar un `CHANNEL` distinto a `WEB`
data/Dockerfile CHANGED
@@ -1,6 +1,5 @@
1
- FROM ruby:2.2-jessie
1
+ FROM ruby:2.4-jessie
2
2
  RUN apt-get update && apt-get install
3
- RUN gem install bundler
4
3
  RUN mkdir -p /sdk
5
4
  WORKDIR /sdk
6
5
  COPY . /sdk
data/Makefile CHANGED
@@ -11,8 +11,8 @@ build: .built .bundled
11
11
  docker-compose build
12
12
  touch .built
13
13
 
14
- .bundled: Gemfile Gemfile.lock
15
- docker-compose run --rm web bundle install
14
+ .bundled: Gemfile
15
+ docker-compose run web bundle install
16
16
  touch .bundled
17
17
 
18
18
  logs:
@@ -21,4 +21,4 @@ logs:
21
21
  clean:
22
22
  docker-compose rm
23
23
  rm .built
24
- rm .bundled
24
+ rm .bundled
data/README.md CHANGED
@@ -4,7 +4,7 @@ SDK Oficial de Transbank
4
4
 
5
5
  ## Requisitos:
6
6
 
7
- - Ruby 2.2+
7
+ - Ruby 2.4+
8
8
 
9
9
  # Instalación
10
10
 
@@ -75,16 +75,13 @@ make
75
75
  ```
76
76
 
77
77
  ### Deploy de una nueva versión.
78
- Para generar una nueva versión, se debe crear un PR (con un título "Prepare release X.Y.Z" con los valores que correspondan para X, Y y Z). Se debe seguir el estándar semver para determinar si se incrementa el valor de X (si hay cambios no retrocompatibles), Y (para mejoras retrocompatibles) o Z (si sólo hubo correcciones a bugs).
78
+ Para generar una nueva versión, se debe crear un PR (con un título "Prepare release X.Y.Z" con los valores que correspondan para `X`, `Y` y `Z`). Se debe seguir el estándar semver para determinar si se incrementa el valor de `X` (si hay cambios no retrocompatibles), `Y` (para mejoras retrocompatibles) o `Z` (si sólo hubo correcciones a bugs).
79
79
 
80
80
  En ese PR deben incluirse los siguientes cambios:
81
81
 
82
- Modificar el archivo CHANGELOG.md para incluir una nueva entrada (al comienzo) para X.Y.Z que explique en español los cambios de cara al usuario del SDK.
82
+ 1. Modificar el archivo `CHANGELOG.md` para incluir una nueva entrada (al comienzo) para `X.Y.Z` que explique en español los cambios **de cara al usuario del SDK**.
83
+ 2. Modificar [version.rb](./lib/transbank/sdk/version.rb) para poner la nueva versión que corresponde.
83
84
 
84
- Modificar este README.md para que los ejemplos usen la nueva versión X.Y.Z
85
-
86
- Modificar [version.rb](./lib/transbank/sdk/version.rb) para poner la nueva versión que corresponde
87
-
88
- Luego de obtener aprobación del pull request, debe mezclarse a master e inmediatamente generar un release en GitHub con el tag vX.Y.Z. En la descripción del release debes poner lo mismo que agregaste al changelog.
85
+ Luego de obtener aprobación del pull request, debe mezclarse a master e inmediatamente generar un release en GitHub con el tag `vX.Y.Z`. En la descripción del release debes poner lo mismo que agregaste al changelog.
89
86
 
90
87
  Con eso Travis CI generará automáticamente una nueva versión de la librería y la publicará en RubyGems.
@@ -15,6 +15,6 @@ services:
15
15
  - "8000:8000"
16
16
 
17
17
  bundle_cache:
18
- image: ruby:2.2-jessie # Should be the same as the app Dockerfile.dev base image
18
+ image: ruby:2.4-jessie # Should be the same as the app Dockerfile.dev base image
19
19
  volumes:
20
20
  - /usr/local/bundle
@@ -7,9 +7,10 @@ require 'base64'
7
7
 
8
8
  require "transbank/sdk/version"
9
9
 
10
+ require 'transbank/sdk/transbank_error'
10
11
  require 'transbank/sdk/onepay/errors/errors'
11
12
 
12
- require 'transbank/sdk/onepay/utils/utils'
13
+ require 'transbank/sdk/utils/utils'
13
14
 
14
15
  require 'transbank/sdk/onepay/requests/requests'
15
16
  require 'transbank/sdk/onepay/responses/responses'
@@ -17,7 +18,10 @@ require 'transbank/sdk/onepay/responses/responses'
17
18
  require 'transbank/sdk/onepay/models/models'
18
19
  require 'transbank/sdk/onepay/base'
19
20
 
20
- module Transbank
21
- module Onepay
22
- end
23
- end
21
+ require 'transbank/sdk/webpay/webpay_plus/webpay_plus'
22
+
23
+ require 'transbank/sdk/oneclick/oneclick'
24
+ require 'transbank/sdk/patpass/patpass_by_webpay/patpass_by_webpay'
25
+ require 'transbank/sdk/patpass/patpass_comercio/patpass_comercio'
26
+
27
+ require 'transbank/sdk/transaccion_completa/transaccion_completa'
@@ -0,0 +1,64 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ class Base
5
+ DEFAULT_API_KEY = '579B532A7440BB0C9079DED94D31EA1615BACEB56610332264630D42D0A36B1C'.freeze
6
+
7
+ DEFAULT_ONECLICK_MALL_COMMERCE_CODE = '597055555541'.freeze
8
+ DEFAULT_ONECLICK_MALL_CHILD_COMMERCE_CODES = [
9
+ '597055555542'.freeze,
10
+ '597055555543'.freeze
11
+ ].freeze
12
+
13
+ DEFAULT_ONECLICK_MALL_DEFERRED_COMMERCE_CODE = '597055555547'.freeze
14
+ DEFAULT_ONECLICK_MALL_DEFERRED_CHILD_COMMERCE_CODES = [
15
+ '597055555548'.freeze,
16
+ '597055555549'.freeze
17
+ ].freeze
18
+
19
+ @api_key = DEFAULT_API_KEY
20
+ @commerce_code = DEFAULT_ONECLICK_MALL_COMMERCE_CODE
21
+ @integration_type = :TEST
22
+ @integration_types = {
23
+ LIVE: "https://webpay3g.transbank.cl/",
24
+ TEST: "https://webpay3gint.transbank.cl/"
25
+ }
26
+
27
+ class << self
28
+ attr_reader :integration_types
29
+ attr_accessor :api_key, :integration_type, :commerce_code
30
+
31
+ def integration_type_url(integration_type)
32
+ type = integration_type.upcase.to_sym
33
+ return @integration_types[type] unless @integration_types[type].nil?
34
+ valid_values = @integration_types.keys.join(', ')
35
+ raise Transbank::Webpay::Errors::IntegrationTypeError, "Invalid integration type, valid values are #{valid_values}"
36
+ end
37
+
38
+ def current_integration_type_url
39
+ @integration_types[@integration_type]
40
+ end
41
+
42
+ def integration_type=(integration_type)
43
+ type = integration_type.upcase.to_sym
44
+ return @integration_type = type unless @integration_types[type].nil?
45
+ valid_values = @integration_types.keys.join(', ')
46
+ raise Transbank::Webpay::Errors::IntegrationTypeError, "Invalid integration type, valid values are #{valid_values}"
47
+ end
48
+
49
+ def configure_mall_for_testing
50
+ @api_key = DEFAULT_API_KEY
51
+ @commerce_code = DEFAULT_ONECLICK_MALL_COMMERCE_CODE
52
+ self.integration_type = :TEST
53
+ end
54
+
55
+ def configure_mall_deferred_for_testing
56
+ @api_key = DEFAULT_API_KEY
57
+ @commerce_code = DEFAULT_ONECLICK_MALL_DEFERRED_COMMERCE_CODE
58
+ self.integration_type = :TEST
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,16 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ module Errors
5
+ class OneclickError < StandardError
6
+ attr_accessor :code, :message
7
+ def initialize(message, code)
8
+ @code = code
9
+ @message = message
10
+ super(message)
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ module Errors
5
+ class MallInscriptionDeleteError < OneclickError
6
+ attr_accessor :code, :message
7
+ def initialize(message, code)
8
+ @code = code
9
+ @message = message
10
+ super(message, code)
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ module Errors
5
+ class MallInscriptionFinishError < OneclickError
6
+ attr_accessor :code, :message
7
+ def initialize(message, code)
8
+ @code = code
9
+ @message = message
10
+ super(message, code)
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ module Errors
5
+ class MallInscriptionStartError < OneclickError
6
+ attr_accessor :code, :message
7
+ def initialize(message, code)
8
+ @code = code
9
+ @message = message
10
+ super(message, code)
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,3 @@
1
+ require 'transbank/sdk/oneclick/inscription/errors/mall_inscription_delete_error'
2
+ require 'transbank/sdk/oneclick/inscription/errors/mall_inscription_start_error'
3
+ require 'transbank/sdk/oneclick/inscription/errors/mall_inscription_finish_error'
@@ -0,0 +1,3 @@
1
+ require 'transbank/sdk/oneclick/errors/oneclick_error'
2
+ require 'transbank/sdk/oneclick/inscription/errors/oneclick_mall_inscription_errors'
3
+ require 'transbank/sdk/oneclick/inscription/responses/oneclick_mall_inscription_responses'
@@ -0,0 +1,18 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ class MallInscriptionDeleteResponse
5
+ attr_accessor :status, :code
6
+ def initialize(code)
7
+ code = code.to_i
8
+ @code = code
9
+ if code == 204
10
+ @status = 'OK'
11
+ elsif code == 404
12
+ @status = 'Not found'
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,15 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ class MallInscriptionFinishResponse
5
+ FIELDS = [:response_code, :tbk_user, :authorization_code,
6
+ :card_type, :card_number]
7
+ attr_accessor *FIELDS
8
+ def initialize(json)
9
+ FIELDS.each {|field| send("#{field}=", json["#{field}"]) }
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
15
+
@@ -0,0 +1,14 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ class MallInscriptionStartResponse
5
+ attr_accessor :token, :url_webpay
6
+
7
+ def initialize(json)
8
+ @token = json['token']
9
+ @url_webpay = json['url_webpay']
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,3 @@
1
+ require 'transbank/sdk/oneclick/inscription/responses/mall_inscription_delete_response'
2
+ require 'transbank/sdk/oneclick/inscription/responses/mall_inscription_start_response'
3
+ require 'transbank/sdk/oneclick/inscription/responses/mall_inscription_finish_response'
@@ -0,0 +1,16 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ module Errors
5
+ class MallTransactionAuthorizeError < OneclickError
6
+ attr_accessor :code, :message
7
+ def initialize(message, code)
8
+ @code = code
9
+ @message = message
10
+ super(message, code)
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ module Transbank
2
+ module Webpay
3
+ module Oneclick
4
+ module Errors
5
+ class MallTransactionRefundError < OneclickError
6
+ attr_accessor :code, :message
7
+ def initialize(message, code)
8
+ @code = code
9
+ @message = message
10
+ super(message, code)
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end