Acepta pagos
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.
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.
Propiedad | Tipo | Requerido | Descripción |
---|---|---|---|
transaction | String | Sí | Tipo de transacción: venta : operación de venta. devolucion : operación de anulación. |
userToken | String | Sí | Token de usuario. |
identifier | String | Sí | Envía un identificador único por transacción generado de tu lado. Máximo 256 caracteres. |
amount | Number | Sí | Monto de la transacción (sin propina incluida). Dos decimales. |
urlScheme | String | Sí | Aplicación, webhook o url que será llamada al final de cualquier transacción. Máximo 50 caracteres. |
tip | Number | No | Monto de la propina. Dos decimales. |
msi | Integer | No | Difiere 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. |
reference | String | No | Referencia de texto para identificar la transacción. Máximo 256 caracteres. |
String | No | Correo electrónico del cliente. Máximo 150 caracteres. | |
phone | String | No | Número de teléfono del cliente. Máximo 14 caracteres. |
showPhotoButton | Boolean | No | Te permite adjuntar una foto durante la transacción. Valor por defecto: falso. |
mandatoryPhoto | Boolean | No | Establece como obligatorio adjuntar una foto durante la transacción. Valor por defecto: falso. |
comesFromQR | Boolean | No | Debes 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.
Propiedad | Tipo | Descripción |
---|---|---|
result | String | Resultado de la operación:
|
statusinfo | String | En caso de error, se regresará información adicional. |
identifier | String | Identificador único por transacción enviado en la venta. Máximo 256 caracteres. |
amount | Number | Monto de la transacción (sin propina incluida). Dos decimales. |
authorization | String | Número de autorización. |
transactionId | String | Id de la transacción. |
tip | Number | Monto de la propina. Dos decimales. |
msi | Integer | Si es un pago diferido, se regresará el número de cuotas.
|
reference | String | Referencia de texto para identificar la transacción. Máximo 256 caracteres. |
String | Correo electrónico del cliente. Máximo 150 caracteres. | |
phone | String | Número de teléfono del cliente. Máximo 14 caracteres. |
creditcard | String | Últimos 4 dígitos de la tarjeta. |
cardtype | String | Tipo de tarjeta. |
arqc | String | Id único por transacción en tarjetas con chip (Authorization Request Cryptogram). |
aid | String | Identificador de aplicación del chip de la tarjeta. |
applabel | String | Etiqueta de aplicación del chip de la tarjeta. |
url | String | Id para voucher digital. |
bank | String | Emisor de la tarjeta. |
accountType | String | Tipo de cuenta:
|
name | String | Nombre del tarjetahabiente. |
bp_version | String | Versión de aplicación POS. |
Simula diferentes escenarios con los datos de prueba.
Revisa la referencia de iOS para información más detallada.