Botón de Pago: Método Prepare

Como vimos en la implementación del botón del pago, el método prepare nos ayuda a preparar la transacción que se llevará a cabo, es necesario indicar al servicio PayPhone los parámetros de los cuales se compone la venta, como el valor, los impuestos, entre otros. Debes hacer una llamada POST a la siguiente dirección:  https://pay.payphonetodoesposible.com/api/button/Prepare  con un objeto del tipo Json que cuente con los siguientes parámetros:

Todos los valores monetarios a enviar deben ir multiplicados por 100, por ejemplo, $1 dólar = 100; $1.50 dólares = 150.

Nombre Tipo Opcional Descripción
Amount Integer Valor total por cobrar al cliente
AmountWithoutTax Integer X Valor del subtotal de los productos que no cobran impuestos. Solo se usa con tipo de facturación tarifa 0% o mixta.
AmountWithTax Integer X Valor del subtotal de los productos que cobran impuestos sin sumar el valor de los impuestos. Solo se usa con tipo de facturación con IVA o mixta.
Tax Integer X Valor total de los impuestos. Solo se usa con tipo de facturación con IVA o mixta.
Service Integer X Valor del servicio
Tip Integer X Valor de la propina
Currency String X Moneda con la que se cobra, ejemplo “USD”.
TimeZone Integer X Zona horaria con la que se cobra.
Lat String X Latitud de la ubicación de la tienda.
Lng String X Longitud de la ubicación de la tienda.
ClientTransactionId String Identificador de la transacción en la aplicación del cliente (String asignado por ti o tu plataforma)
ResponseUrl String Url de respuesta donde PayPhone enviara al cliente después de finalizada la transacción
Lang String X Lenguaje de la transacción
StoreId String X Id del Store que va a cobrar, Este valor solo se envía cuando se manejan diferentes tiendas o sucursales, si no se usan diferentes tiendas se puede omitir. Para especificar que tienda hace el cobro, el storeID se obtiene desde la página web de PayPhone Developer, en la sección solicitud de compañía, columna Acciones, Listado de tiendas.
TerminalId String X Id del terminal que va a cobrar
Reference String X Referencia de la transacción, por ejemplo “Venta Zapatos Azules”
AditionalData String X Datos adicionales que quieras guardar de la transacción.
OptionalParameter String X Parámetro opcional a tu disposición.

No olvides que en la llamada POST debes agregar una cabecera (header) de tipo “Authorization” indicando el token de autenticación generado previamente (Haz click aquí para ver como obtener el token), debes poner antes del token la palabra “Bearer “. Recuerda que el Amount (Valor a cobrar) es la suma del detalle de los campos amountWithTax, amountWithoutTax, tax, service y tip, todos estos son opcionales, pero debe haber al menos uno para que el amount se vea respaldado. Para el siguiente ejemplo usaremos amount y amountwithouttax con el mismo valor.  La llamada en formato cUrl sería de la siguiente manera:

curl -X POST \
https://pay.payphonetodoesposible.com/api/button/Prepare\
-H 'authorization: Bearer {TU TOKEN AQUÍ}' \
'Amount=<span style="color: #ff9900;">VALORACOBRAR</span>&amp;AmountwithoutTax=<span style="color: #ff9900;">VALORACOBRARSINIMPUESTO</span>&amp;clientTransactionId=<span style="color: #ff9900;">TUCLIENTTRANSACTIONID</span>&amp;responseURL=<span style="color: #ff9900;">TUURLDERESPUESTA</span>'

Cuando hagas la llamada POST, recibirás un objeto Json con los siguientes parámetros:

  • paymentId: Identificador del pago.
  • payWithPayPhone: URL a la que debes redirigir al usuario para que realice el pago utilizando PayPhone.

Cuando el cliente pague a través del botón PayPhone, el sistema lo redirigirá a tu URL de respuesta con un atributo «ID» que debes recuperar ejecutando un GET en tu URL.

Este ID te ayudara para completar la segunda parte del botón de pago, el método confirm

Puedes consultar el catálogo de errores haciendo click aquí.

2 Comments

  1. Rados

    Buenos Dias, al consumir el metodo me da este mensaje:

    response: {«message»:»Su aplicación no esta autorizada para acceder a este recurso. Verifique que el token este bien copiado o a que recursos puede acceder su tipo de aplicación.»}

    El token ya lo genere pro aun asi me dice que no tengo autorizacion, necesito agregar estos valores.
    Id Cliente:
    Clave secreta:
    Contraseña de codificación:
    Si es asi como son los tags de envio

    1. PayPhone Editor

      Hola buenos días, el método prepare es un método de tipo WEB, por favor verifica que tu aplicación este configurada de esa forma. Si gustas puedes escribirnos a swiesner@livepayphone.com para ayudarte con tus futuras dudas.

      Un Saludo.

Leave A Comment?