Class: Transbank::Webpay::TransaccionCompleta::MallTransaction
- Inherits:
-
Common::BaseTransaction
- Object
- Common::BaseTransaction
- Transbank::Webpay::TransaccionCompleta::MallTransaction
- Defined in:
- lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb
Constant Summary collapse
- DEFAULT_ENVIRONMENT =
:integration
- RESOURCES_URL =
::Transbank::Common::ApiConstants::WEBPAY_ENDPOINT
- CREATE_ENDPOINT =
(RESOURCES_URL + '/transactions/').freeze
- INSTALLMENTS_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}/installments').freeze
- COMMIT_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}').freeze
- STATUS_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}').freeze
- REFUND_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}/refunds').freeze
- CAPTURE_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}/capture').freeze
- INCREASE_AMOUNT_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}/amount').freeze
- INCREASE_AUTHORIZATION_DATE_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}/authorization_date').freeze
- REVERSE_PRE_AUTHORIZED_AMOUNT_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}/reverse/amount').freeze
- DEFERRED_CAPTURE_HISTORY_ENDPOINT =
(RESOURCES_URL + '/transactions/%{token}/details').freeze
Instance Method Summary collapse
- #capture(token, commerce_code, buy_order, authorization_code, amount) ⇒ Object
- #commit(token, details) ⇒ Object
- #create(buy_order, session_id, card_number, card_expiration_date, details, cvv = nil) ⇒ Object
- #deferred_capture_history(token, child_commerce_code, child_buy_order) ⇒ Object
- #increase_amount(token, child_commerce_code, child_buy_order, authorization_code, amount) ⇒ Object
- #increase_authorization_date(token, child_commerce_code, child_buy_order, authorization_code) ⇒ Object
-
#initialize(commerce_code = ::Transbank::Common::IntegrationCommerceCodes::TRANSACCION_COMPLETA_MALL, api_key = ::Transbank::Common::IntegrationApiKeys::WEBPAY, environment = DEFAULT_ENVIRONMENT) ⇒ MallTransaction
constructor
A new instance of MallTransaction.
- #installments(token, details) ⇒ Object
- #refund(token, buy_order, commerce_code_child, amount) ⇒ Object
- #reverse_pre_authorized_amount(token, child_commerce_code, child_buy_order, authorization_code, amount) ⇒ Object
- #status(token) ⇒ Object
Constructor Details
#initialize(commerce_code = ::Transbank::Common::IntegrationCommerceCodes::TRANSACCION_COMPLETA_MALL, api_key = ::Transbank::Common::IntegrationApiKeys::WEBPAY, environment = DEFAULT_ENVIRONMENT) ⇒ MallTransaction
Returns a new instance of MallTransaction.
18 19 20 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 18 def initialize(commerce_code = ::Transbank::Common::IntegrationCommerceCodes::TRANSACCION_COMPLETA_MALL, api_key = ::Transbank::Common::IntegrationApiKeys::WEBPAY, environment = DEFAULT_ENVIRONMENT) super(commerce_code, api_key, environment) end |
Instance Method Details
#capture(token, commerce_code, buy_order, authorization_code, amount) ⇒ Object
62 63 64 65 66 67 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 62 def capture(token, commerce_code, buy_order, , amount) request_service = ::Transbank::Shared::RequestService.new( @environment, format(CAPTURE_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.put(buy_order: buy_order, commerce_code: commerce_code, authorization_code: , capture_amount: amount) end |
#commit(token, details) ⇒ Object
41 42 43 44 45 46 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 41 def commit(token, details) request_service = ::Transbank::Shared::RequestService.new( @environment, format(COMMIT_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.put({details: details}) end |
#create(buy_order, session_id, card_number, card_expiration_date, details, cvv = nil) ⇒ Object
22 23 24 25 26 27 28 29 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 22 def create(buy_order, session_id, card_number, card_expiration_date, details, cvv = nil) request_service = ::Transbank::Shared::RequestService.new( @environment, CREATE_ENDPOINT, @commerce_code, @api_key ) request_service.post({ buy_order: buy_order, session_id: session_id, card_number: card_number, card_expiration_date: card_expiration_date, details: details, cvv: cvv }) end |
#deferred_capture_history(token, child_commerce_code, child_buy_order) ⇒ Object
108 109 110 111 112 113 114 115 116 117 118 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 108 def deferred_capture_history(token, child_commerce_code, child_buy_order) Transbank::Common::Validation.has_text_with_max_length(child_commerce_code, Transbank::Common::ApiConstants::COMMERCE_CODE_LENGTH, "child_commerce_code") Transbank::Common::Validation.has_text_with_max_length(token, Transbank::Common::ApiConstants::TOKEN_LENGTH, "token") Transbank::Common::Validation.has_text_with_max_length(child_buy_order, Transbank::Common::ApiConstants::BUY_ORDER_LENGTH, "child_buy_order") request_service = ::Transbank::Shared::RequestService.new( @environment, format(DEFERRED_CAPTURE_HISTORY_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.post(commerce_code: child_commerce_code, buy_order: child_buy_order) end |
#increase_amount(token, child_commerce_code, child_buy_order, authorization_code, amount) ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 69 def increase_amount(token, child_commerce_code, child_buy_order, , amount) Transbank::Common::Validation.has_text_with_max_length(child_commerce_code, Transbank::Common::ApiConstants::COMMERCE_CODE_LENGTH, "child_commerce_code") Transbank::Common::Validation.has_text_with_max_length(token, Transbank::Common::ApiConstants::TOKEN_LENGTH, "token") Transbank::Common::Validation.has_text_with_max_length(child_buy_order, Transbank::Common::ApiConstants::BUY_ORDER_LENGTH, "child_buy_order") Transbank::Common::Validation.has_text_with_max_length(, Transbank::Common::ApiConstants::AUTHORIZATION_CODE_LENGTH, "authorization_code") request_service = ::Transbank::Shared::RequestService.new( @environment, format(INCREASE_AMOUNT_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.put(commerce_code: child_commerce_code, buy_order: child_buy_order, authorization_code: , amount: amount) end |
#increase_authorization_date(token, child_commerce_code, child_buy_order, authorization_code) ⇒ Object
82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 82 def (token, child_commerce_code, child_buy_order, ) Transbank::Common::Validation.has_text_with_max_length(child_commerce_code, Transbank::Common::ApiConstants::COMMERCE_CODE_LENGTH, "child_commerce_code") Transbank::Common::Validation.has_text_with_max_length(token, Transbank::Common::ApiConstants::TOKEN_LENGTH, "token") Transbank::Common::Validation.has_text_with_max_length(child_buy_order, Transbank::Common::ApiConstants::BUY_ORDER_LENGTH, "child_buy_order") Transbank::Common::Validation.has_text_with_max_length(, Transbank::Common::ApiConstants::AUTHORIZATION_CODE_LENGTH, "authorization_code") request_service = ::Transbank::Shared::RequestService.new( @environment, format(INCREASE_AUTHORIZATION_DATE_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.put(commerce_code: child_commerce_code, buy_order: child_buy_order, authorization_code: ) end |
#installments(token, details) ⇒ Object
31 32 33 34 35 36 37 38 39 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 31 def installments(token, details) request_service = ::Transbank::Shared::RequestService.new( @environment, format(INSTALLMENTS_ENDPOINT, token: token), @commerce_code, @api_key ) details.map { |detail| request_service.post({commerce_code: detail['commerce_code'], buy_order: detail['buy_order'], installments_number: detail['installments_number']}) } end |
#refund(token, buy_order, commerce_code_child, amount) ⇒ Object
55 56 57 58 59 60 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 55 def refund(token, buy_order, commerce_code_child, amount) request_service = ::Transbank::Shared::RequestService.new( @environment, format(REFUND_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.post(buy_order: buy_order, commerce_code: commerce_code_child, amount: amount) end |
#reverse_pre_authorized_amount(token, child_commerce_code, child_buy_order, authorization_code, amount) ⇒ Object
95 96 97 98 99 100 101 102 103 104 105 106 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 95 def (token, child_commerce_code, child_buy_order, , amount) Transbank::Common::Validation.has_text_with_max_length(child_commerce_code, Transbank::Common::ApiConstants::COMMERCE_CODE_LENGTH, "child_commerce_code") Transbank::Common::Validation.has_text_with_max_length(token, Transbank::Common::ApiConstants::TOKEN_LENGTH, "token") Transbank::Common::Validation.has_text_with_max_length(child_buy_order, Transbank::Common::ApiConstants::BUY_ORDER_LENGTH, "child_buy_order") Transbank::Common::Validation.has_text_with_max_length(, Transbank::Common::ApiConstants::AUTHORIZATION_CODE_LENGTH, "authorization_code") request_service = ::Transbank::Shared::RequestService.new( @environment, format(REVERSE_PRE_AUTHORIZED_AMOUNT_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.put(commerce_code: child_commerce_code, buy_order: child_buy_order, authorization_code: , amount: amount) end |
#status(token) ⇒ Object
48 49 50 51 52 53 |
# File 'lib/transbank/sdk/webpay/transaccion_completa/mall_transaction.rb', line 48 def status(token) request_service = ::Transbank::Shared::RequestService.new( @environment, format(STATUS_ENDPOINT, token: token), @commerce_code, @api_key ) request_service.get end |