Acepta pagos

Android
iOS

Acepta pagos con una terminal desde tu punto de venta móvil a través de nuestra aplicación POS. Puedes integrar tu aplicación iOS mediante Links.

Ejecuta una acción en nuestra aplicación POS utilizando esquemas de URL personalizados en iOS desde tu aplicación nativa o web. Configura la solicitud con todos los parámetros requeridos para abrir la aplicación POS y realizar la operación. La aplicación POS se abrirá cuando se envíe una solicitud al esquema de url personalizado Billpocket://.

Es necesario que tengas instalada y configurada nuestra aplicación POS en el mismo dispositivo que la aplicación punto de venta.

Modelo de datos de la solicitud

Estos son todos los parámetros que puedes configurar al momento de realizar una solicitud.

PropiedadTipoRequeridoDescripción
transactionStringTipo de transacción: venta: operación de venta. devolucion: operación de anulación.
userTokenStringToken de usuario.
identifierStringEnvía un identificador único por transacción generado de tu lado. Máximo 256 caracteres.
amountNumberMonto de la transacción (sin propina incluida). Dos decimales.
urlSchemeStringAplicación, webhook o url que será llamada al final de cualquier transacción. Máximo 50 caracteres.
tipNumberNoMonto de la propina. Dos decimales.
msiIntegerNoDifiere un pago en cuotas. Establece el número de cuotas a diferir el pago: 0 : Pago único. 3: 3 cuotas. 6: 6 cuotas. 9: 9 cuotas. 12: 12 cuotas.
referenceStringNoReferencia de texto para identificar la transacción. Máximo 256 caracteres.
emailStringNoCorreo electrónico del cliente. Máximo 150 caracteres.
phoneStringNoNúmero de teléfono del cliente. Máximo 14 caracteres.
showPhotoButtonBooleanNoTe permite adjuntar una foto durante la transacción. Valor por defecto: falso.
mandatoryPhotoBooleanNoEstablece como obligatorio adjuntar una foto durante la transacción. Valor por defecto: falso.
comesFromQRBooleanNoDebes establecer esta propiedad como true si la url de la transacción proviene de una imagen QR.

Operaciones

Descubre todas las operaciones disponibles a través de integraciones por App to app.

Venta

Realiza una venta por un monto fijo (incluyendo impuestos) en tu comercio a través de una terminal. La terminal te permite leer la tarjeta de tu cliente y realizar operaciones implicadas en el proceso DUKPT. La responsabilidad de tu sistema punto de venta es obtener los datos leidos de la terminal y armar el mensaje con la información requerida para enviar una solicitud. Envía la información a Kushki para su procesamiento.

A continuación se muestra un ejemplo de cómo llamar la aplicación POS.

En este ejemplo, los valores necesarios para la solicitud se obtienen a través de campos de texto para ser concatenados a la url.

URLScheme = [URLScheme stringByReplacingOccurrencesOfString:@"@"trx_token"" withString:token];

Luego, los valores de NSString se concatenan y se convierten a NSURL para formar una url válida. Puedes usar stringWithFormat para concatenar NSString como se muestra a continuación.

NSString *URLScheme = @"billpocket://?transaction=venta&usertoken=4db75aba5211fc0e067a68c3e6e0a53f25e0b001ba4186b5be714ff1c0980d1a&amount=500.00&tip=50.00&identifier=bpTRX&urlScheme=MyApp&reference=Venta%20-%20B99773E6BAD6";

Abre la url a través del método open().

func open(
_ url: ourURL,
options: [UIApplication.OpenExternalURLOptionsKey : Any] = [:],
completionHandler completion: ((Bool) -> Void)? = nil
)

Si la información enviada es correcta, se abrirá la aplicación POS en la pantalla de pago con la configuración establecida para la transacción. Sigue los pasos en pantalla para finalizar el proceso de cobro con la terminal.

Revisa la documentación para realizar una anulación.

Respuesta

Recibe la respuesta de una solicitud a través de un callback URL. La respuesta se devuelve a un esquema de url personalizado que definas. Debes registrar el esquema de url personalizado dentro de tu aplicación para que pueda manejar las solicitudes entrantes. Revisa la documentación sobre custom url scheme o Universal link para manejar la respuesta en tu aplicación. Consulta también la documentación de Apple sobre cómo permitir que otras aplicaciones apunten a tu aplicación.

Ejemplo de respuesta a un esquema de url personalizado:

myapp://result=aprobada&statusinfo=&amount=100.00&tip=15.00&reference=Pago%20%26%20%25%20%23%20(%20)%20/%20@%20con%20propina%20a%203%20meses%20sin%20intereses&transactionid=72037…

Dependiendo del resultado de la operación, podrás recibir información adicional a través de algunas de las siguientes propiedades.

PropiedadTipoDescripción
resultStringResultado de la operación:
  • aprobada: transacción aprobada con éxito.
  • rechazada: operación declinada.
  • error: ocurrió un error con la operación.
statusinfoStringEn caso de error, se regresará información adicional.
identifierStringIdentificador único por transacción enviado en la venta. Máximo 256 caracteres.
amountNumberMonto de la transacción (sin propina incluida). Dos decimales.
authorizationStringNúmero de autorización.
transactionIdStringId de la transacción.
tipNumberMonto de la propina. Dos decimales.
msiIntegerSi es un pago diferido, se regresará el número de cuotas.
  • 0 : Pago único.
  • 3: 3 cuotas.
  • 6: 6 cuotas.
  • 9: 9 cuotas.
  • 12: 12 cuotas.
referenceStringReferencia de texto para identificar la transacción. Máximo 256 caracteres.
emailStringCorreo electrónico del cliente. Máximo 150 caracteres.
phoneStringNúmero de teléfono del cliente. Máximo 14 caracteres.
creditcardStringÚltimos 4 dígitos de la tarjeta.
cardtypeStringTipo de tarjeta.
arqcStringId único por transacción en tarjetas con chip (Authorization Request Cryptogram).
aidStringIdentificador de aplicación del chip de la tarjeta.
applabelStringEtiqueta de aplicación del chip de la tarjeta.
urlStringId para voucher digital.
bankStringEmisor de la tarjeta.
accountTypeStringTipo de cuenta:
  • credit: tarjeta de crédito.
  • debit: tarjeta de débito.
nameStringNombre del tarjetahabiente.
bp_versionStringVersión de aplicación POS.

Simula diferentes escenarios con los datos de prueba.

Revisa la referencia de iOS para información más detallada.


Datos de prueba
Realiza los ajustes necesarios en tu sistema con los datos de prueba.
Transacciones
Obtén la lista de transacciones con información relevante para tus operaciones.