En este paso crearemos la transacción con el objetivo de obtener un identificador unico y poder en el siguiente paso redirigir al Tarjetahabiente hacia el formulario de pago
Para comenzar debes importar WebpayPlus y luego crear una transacción
@tx = Transbank::Webpay::WebpayPlus::Transaction.new(
::Transbank::Common::IntegrationCommerceCodes::WEBPAY_PLUS,
::Transbank::Common::IntegrationApiKeys::WEBPAY, :integration)
@resp = @tx.create(
buy_order,
session_id,
amount,
return_url
)
{
"token": "01abd8a777ebcf5ff4696fe23ed5abf5ca8420a18b66ceb5619dd60ab65005a9",
"url": "https://webpay3gint.transbank.cl/webpayserver/initTransaction"
}
Una vez creada la transacción, estos serán los datos de respuesta
Debes utilizar estos datos para crear un formulario
form_with url: "https://webpay3gint.transbank.cl/webpayserver/initTransaction", data: { remote: false }, method: :post do |form|
form.hidden_field :token_ws, value: "01abd8a777ebcf5ff4696fe23ed5abf5ca8420a18b66ceb5619dd60ab65005a9"
form.submit "Pagar"
end
Usando los siguientes datos
Campo
valor
Orden de compra(buyOrder)
buyOrder_43
ID de sesión (sessionid)
sessionId_14
Monto (amount)
1000
URL de retorno (returnUrl)
https://tbk-ruby-test.continuumhq.dev/webpay_plus/commit
Con la respuesta del servicio creamos el formulario, para efectos del ejemplo haremos el campo token_ws visible
Formulario de redirección