Skip to content
This repository was archived by the owner on Jun 20, 2026. It is now read-only.

Repository files navigation

webpay-nodejs

Módulo no oficial para integrar la API de WebPay, Anulaciones y OneClick de Transbank en Node.js, con soporte para promesas.

Instalación

npm install webpay-nodejs

Transacción normal

Revisa el directorio /showcase para ver ejemplos funcionando $ node showcase/test<DesiredTest>

  1. Instanciar
constWebPay=require('webpay-nodejs');letwp=newWebPay({commerceCode: youCommerceCode,publicKey: youPublicKey,// .cert fileprivateKey: youPrivateKey,// .key filewebpayKey: youWebpayKey,// .pem fileenv: WebPay.ENV.INTEGRACION});
  1. Iniciar Transacción
wp.initTransaction({buyOrder: buyOrden,sessionId: req.sessionId,returnURL: url+'/verificar',finalURL: url+'/comprobante',amount: amount}).then((data)=>{res.redirect(data.url+'?token_ws='+data.token);})
  1. Obtener datos de la transacción
wp.getTransactionResult(token).then((transaccion)=>{// datos de la transaccion})
  1. Aceptar la transacción
wp.acknowledgeTransaction(token)

Opcionalmente, anular

wp.nullify({authorizationCode: '123',authorizedAmount: 2000,buyOrder: buyOrder})

Para los métodos de OneClick, usar wp.oneclick.* y wp.onclickmall.* respectivamente.

Changelog

v1.4.0

Las versiones anteriores tienen problemas de seguridad en sus dependencias. Se recomienda actualizar a ésta versión como punto mínimo.

  • Se agregaron dependencias faltantes (ejs). Notificado por ffflabs (#15).
  • Se agregó una versión propia de ursa, y actualización de soap. Ahora la instalación no tiene problemas de seguridad. Gracias nicolaslopezj (#20).
  • Se corrigieron problemas en los ejemplos. Gracias DiruzCode (#17), Rubenazo (#9).
  • Agregado soporte parcial para pagos diferidos (Falta documentación). BluebambooSRL (#11).
  • Se agregó más formalismo en la licencia (archivos COPYING, COPYING.LESEER). La licencia sigue siendo la misma, LGPL.

v1.3.0

  • Se agregó soporte para WebPay OneClick Mall. Gracias Alonso Gaete! (#6).
  • Correcciones menores internas al manejo de errores (no implica cambios en la API).
  • Los ejemplos ahora manejan los errores (solo a modo de demostración).
  • Se actualizaron los certificados de WebPay Normal.
  • Se eliminaron dependencias sin uso.

v1.2.0

  • Se agregó soporte para WebPay OneClick
  • Gracias a la observación de Joaquin Gumucio L., se reemplazó la dependencia de "ursa" por una versión pura en js "ursa-purejs", solucionando de esta forma problemas en algunos equipos productos de usar una librería nativa. Ahora el código es 100% js.
  • Se actualizaron los ejemplos, ahora están en el directorio showcase

v1.0.0 (Breaking Changes)

  • getTransactionResult retornaba transaction.detailOutput como un array con un único objeto las propiedades, ahora transaction.detailOutput retorna directamente dicho objeto.

    • Ejemplo antes: transaction.detailOutput[0].amount
    • Ejemplo ahora: transaction.detailOutput.amount

Legalidades

Agradecimientos a FabianBravoA por el algoritmo de verificación especial de Transbank.

Agradecimientos a Leonardo Gatica por descubrir el significado de los códigos de respuesta de WebPay OneClick desde el número -8 al -1.

Éste código se distribuye con la licencia libre LGPL. Revisar COPYING.LESSER para detalles.

About

[Spanish/Chile] Módulo no oficial para integrar WebPay Plus en Node.js, con soporte para promesas.

Resources

Stars

94 stars

Watchers

14 watching

Forks

Releases

Packages

Used by

Contributors

Languages