API Nativa
O Mamba Websdk oferece um conjunto de funções capazes de interagir com as funcionalidades nativas do POS. Para isso, basta importar as funções nativas necessárias
e.g.
App
App define funções relacionadas ao aplicativo
close()
Fecha o aplicativo
closeWithFilter(showConfirmationDialog: boolean, callBack: function)
Fecha o aplicativo depois de executar o callback. Se o showConfirmationDialog for TRUE será apresentado um dialog de confirmação para sair do app.
Gif
Anima arquivos no formato .gif de forma nativa. Um gif que utilize recursos web (com a tag img
por exemplo) terá um desempenho muito inferior, além de ter um comportamento imprevisível.
Recomendamos utilizar o componente MbGif
para lidar com gifs no POS. Nele, é abstraída boa parte do trabalho necessário.
show (path: string, x?: number, y?: number): boolean
Mostra o gif em uma determinada posição, relativa ao viewport
.
Se x
ou y
forem negativos, o gif não irá aparecer.
Note que quando um gif está aparecendo, todos os eventos de teclado serão consumidos por ele
Esse método também realiza o cache
do gif, caso não tenha sido feito
Parâmetro | Tipo | Descrição |
---|---|---|
path | string | O caminho do gif, relativo à raiz do projeto |
x | number? | A posição do gif no eixo x |
y | number? | A posição do gif no eixo y |
retorna true
se o gif foi mostrado com sucesso
setPosition (path: string, x: number, y: number): boolean
Muda a posição do gif.
Esse método também realiza o cache
do gif, caso não tenha sido feito
Se a posição de x
ou y
for negativa, a posição não será alterada
Parâmetro | Tipo | Descrição |
---|---|---|
path | string | O caminho do gif, relativo à raiz do projeto |
x | number? | A posição do gif no eixo x |
y | number? | A posição do gif no eixo y |
retorna true
se a posição foi atualizada com sucesso
hide (): void
Esconde o gif
cache (path: string): boolean
Faz cache do gif para um carregamento mais rápido.
Parâmetro | Tipo | Descrição |
---|---|---|
path | string | O caminho do gif, relativo à raiz do projeto |
retorna true
se o cache foi feito com sucesso
get (path: string): IRect
Retorna a posição e as dimensões do gif
Parâmetro | Tipo | Descrição |
---|---|---|
path | string | O caminho do gif, relativo à raiz do projeto |
O objeto de retorno é um retângulo com as seguintes características
Parâmetro | Tipo | Descrição |
---|---|---|
x | number | Posição do gif no eixo x |
y | number | Posição do gif no eixo y |
w | number | Largura do gif |
h | number | Altura do gif |
Http
Http encapsula todos os requests que devem ser realizados pelo POS
send(params: object, callback: function)
Keyboard
Lida com o tipo do teclado. Recomendamos utilizar o componente MbInput
que já lida com o tipo do teclado
setKeyboardAsNumeric()
Muda o tipo do teclado para numérico
setKeyboardAsAlphanumeric()
Muda o tipo do teclado para alfanumérico
Merchant
Lida com as informações do lojista
getInfo(): IMerchant
Retorna as informações do lojista
Parâmetro | Tipo | Descrição |
---|---|---|
street | string | Rua do lojista |
number | string | Número do local do estabelecimento |
complement | string | Complemento do endereço |
neighborhood | string | Bairro do estabelecimento |
zipCode | string | CEP do estabelecimento |
city | string | Cidade do estabelecimento |
state | string | Estado do estabelecimento |
country | string | País do estabelecimento |
acquirerIssuedMerchantId | string | Stone code do lojista |
displayName | string | Nome mostrado no POS, definido pelo lojista |
taxationIdentificationType | string | ‘CPF’ ou ‘CNPJ’, de acordo com o cadastro do lojista |
taxationIdentificationNumber | string | O valor correspondente ao campo ‘taxationIdentificationType’. Será o CPF ou CNPJ do lojista |
checkPassword(password: string)
Verifica se a senha corresponde à senha do lojista no POS
getStoneCode(): string
Retorna o StoneCode do lojista
Payment
Lida com a realização de pagamentos.
pay (proposedAmount: number, callback?: function)
Abre o aplicativo de pagamento para o usuário continuar com a operação. Após o aplicativo fechar, a callback será chamada contendo o valor efetivamente pago pelo usuário. Caso a transação não tenha sido realizada, este parâmetro será 0
Parâmetro | Tipo | Descrição |
---|---|---|
proposedAmount | number | Valor a ser pago, em centavos |
callback | function | Callback chamada assim que a transação é encerrada |
e.g.
isPaying(): boolean
Retorna true
se um pagamento está sendo feito
failedPaying (): boolean
Retorna true
se o último pagamento falhou
enableCardEvent ()
Habilita o evento de cartão. Caso um cartão seja inserido ou passado pela tarja magnética, se o evento de cartão estiver habilitado, o evento oncardevent
será emitido para o document
e.g.
disableCardEvent ()
Desabilita o evento de cartão.
getCardHolderName (): string
Retorna o nome do portador do cartão referente ao último pagamento
getItk (): string
Retorna o itk da transação
getAtk (): string
Retorna o atk da transação
getAuthorizationDateTime (): string
Retorna a data hora da última transação, caso tenha sido bem sucedida
getBrand (): string
Retorna a bandeira do cartão da última transação, caso tenha sido bem sucedida
getOrderId (): string
Retorna o Order ID da última transação, caso tenha sido bem sucedida
getPan (): string
Retorna o pan mascarado da última transação, caso tenha sido bem sucedida
getAuthorizationCode (): string
Retorna o código de autorização da última transação, caso tenha sido bem sucedida
getInstallmentCount (): string
Retorna o número de parcelas da última transação, caso tenha sido bem sucedida
getType (): string
Retorna qual foi o tipo da última transação efetuada com sucesso
Printer
Responsável por lidar com a impressora térmica do POS
print (element: HTMLElement, config?: IPrinterConfig, callback?: function)
Imprime um HTMLElement
. Para obter um melhor resultado, é recomendado criar uma div
com o tamanho exato da filipeta e imprimí-lo. Desta forma, não há distorções causadas por redimensionamento. Note que o HTMLElement
a ser impresso precisa estar inserido no DOM.
Recomendamos utilizar o componente MbPrintArea
para realizar impressões de forma fácil e rápida.
e.g.
Parâmetro | Tipo | Descrição |
---|---|---|
element | HTMLElement | Elemento a ser impresso |
config | IPrinterConfig | Objeto que configura alguns parâmetros da impressão |
callback | function | Callback chamada quando a impressão termina. Seu primeiro argumento é o erro da impressão |
A interface IPrinterConfig é a seguinte
Parâmetro | Tipo | Descrição |
---|---|---|
scale_to_paper_width | boolean | Define se o elemento deve ser redimensionado para comportar o tamanho da filipeta. Caso não seja e seu tamanho seja maior do que o necessário, ele será cortado |
use_dithering | boolean | Define se deve ser aplicado um algoritmo de dithering no elemento. Use esta função somente para imprimir imagens, pois o dithering diminui a qualidade da impressão de texto |
getPaperWidth (): number
Retorna o tamanho da filipeta, em pixels
isPrinting (): boolean
Retorna true
se a impressora está ocupada com uma impressão
failedPrinting (): boolean
Retorna true
se a última impressão falhou
System
beep (tone?: string, duration?: number)
Faz um beep. Esta função atualmente é blocante no POS, logo a execução do código será bloqueada até que o beep termine.
Parâmetro | Tipo | Descrição |
---|---|---|
tone | string | O tom do beep, no formato ‘TONE*’, onde * é um número de 1 a 7 e quanto maior o número, maior a frequência |
duration | number | A duração do beep, em ms |
e.g.
getCurrentConnectionType (): string
Retorna em qual rede o POS está conectado - Wifi
ou 3G
changeAdapter (desiredAdapter: string): boolean
Muda o adaptador de rede, retorna true
em caso de sucesso, false
em falha - wifi
ou 3G
hasEthernet (): boolean
Retorna true
se o POS possui ethernet
hasWifi (): boolean
Retorna true
se o POS possui wifi
hasGprs (): boolean
Retorna true
se o POS possui GPRS
isBatteryPresent (): boolean
Retorna true
se o POS possui uma bateria presente
getPowerSupply (): string
Retorna a fonte de energia atual do POS. Os possíveis valores são USB
, ADAPTER
e BATTERY
getTimeFromBoot (): number
Retorna o tempo desde o boot em ms
getSerialNumber (): string
Retorna o número serial do POS
getBatteryStatus (): string
Retorna o status da bateria. Os possíveis valores são CHECK_NOT_SUPPORTED
, IN_CHARGE
, CHARGE_COMPLETE
, DISCHARGE
, ABSENT
getBatteryLevel (): number
Retorna o nível da bateria. Este nível é discreto e depende do status da bateria. Uma tabela com os possíveis valores para cada estado é apresentada abaixo
Estado da bateria | Nível da bateria |
---|---|
CHECK_NOT_SUPPORTED | 0 |
IN_CHARGE | 0 |
CHARGE_COMPLETE | 100 |
DISCHARGE | 10, 30, 50, 70, 90 |
ABSENT | 0 |
Transaction
getSupportedBrands (): string[]
Retorna uma lista contendo todas as bandeiras suportadas para o lojista
e.g.
getMaximumDetailedReportEntries (): number
Retorna o número máximo de transações retornadas pela função getDetailedReportList
getReportResume (from: Date, to: Date, callback: function)
Gera um relatório resumido das transações na data especificada
Parâmetro | Tipo | Descrição |
---|---|---|
from | Date | Data hora inicial do relatório |
to | Date | Data hora final do relatório |
callback | Date | função chamada quando o relatório foi gerado. Seu primeiro parâmetro é um objeto contendo o resumo. Seu segundo parâmetro é o erro, se houve algum |
O primeiro parâmetro da callback é um objeto com as seguintes características
Chave | Tipo | Descrição |
---|---|---|
totalApproved | number | Total de transações aprovadas |
approvedValue | number | Valor total aprovado, em centavos |
approvedTransactionsNumber | number | Total de transações aprovadas |
cancelledValue | number | Valor total cancelado, em centavos |
cancelledTransactionsNumber | number | Total de transações canceladas |
totalDebit | number | Valor total transacionado em débito |
totalCredit | number | Valor total transacionado em crédito |
totalVoucher | number | Valor total transacionado em voucher |
e.g.
getDetailedReportList (from: Date, to: Date, callback: function)
Gera um relatório detalhado por transação
O primeiro parâmetro da callback é uma lista de objetos com as seguintes características
Chave | Tipo | Descrição |
---|---|---|
brand | string | Bandeira do cartão utilizado na transação |
transactionType | string | Tipo de transação (e.g. Crédito à vista, Débito, …) |
totalAmountAuthorized | number | Valor da aprovado da transação, em centavos |
totalAmountCancelled | number | Valor da cancelado da transação, em centavos |
authorizationDateTime | Date | Data hora da transação |
lastCancellationDateTime | Date | Data hora do último cancelamento realizado nesta transação |
remainingValue | number | Valor efetivo em centavos da transação, após descontar o valore cancelado. |
installmentCount | number | Número de parcelas da transação |
transactionStatusCode | number | Código de estado da transação. Uma tabela com os códigos é mostrada abaixo |
-
Códigos de estado, acessíveis pela variável window.MbTransaction.TransactionStatusCodes
:
Chave | Tipo | Descrição |
---|---|---|
PENDING_REVERSAL_BY_TECHNICAL_ERROR | number | Erro técnico |
PENDING_REVERSAL | number | Ocorre quando o autorizador aprovou, mas o cartão não |
PENDING | number | Pendente |
UNKNOWN | number | Desconhecido |
APPROVED | number | Aprovado |
CANCELLED_BY_THE_USER | number | Cancelada pelo usuário |
CANCELLED_IN_REVISION_PROCESS | number | Pode ocorrer, por exemplo, quando o cartão não aprovou a transação |
CANCELLED_AUTOMATICALLY | number | Pode ocorrer, por exemplo, quando houve uma falha de conexão ou quando houve timeout |
FALLBACK_APPROVED | number | Aprovado utilizando tarja magnética |
FALLBACK_CANCELLED_BY_THE_USER | number | Cancelado utilizando tarja magnética |
FALLBACK_CANCELLED_AUTOMATICALLY | number | Mesmo que CANCELLED_AUTOMATICALLY, mas utilizando tarja magnética |
FALLBACK_CANCELLED_IN_REVISION_PROCESS | number | Mesmo que CANCELLED_IN_REVISION_PROCESS, mas utilizando tarja magnética |
e.g.
getConsolidatedReportList (from: Date, to: Date, callback: function)
Gera um relatório consolidado das transações no período desejado. O relatório é agrupado por bandeira.
O primeiro parâmetro da callback é uma objeto com as seguintes características
Chave | Tipo | Descrição |
---|---|---|
<BANDEIRA> | IConsolidatedTransaction[] | Lista com todas as transações consolidadas da bandeira |
A interface IConsolidatedTransaction
possui as seguintes características
Chave | Tipo | Descrição |
---|---|---|
totalApprovedBrand | number | Valor total proveniente das transações, após descontar o valor cancelado, em centavos |
approvedValueBrand | number | Valor total aprovado, em centavos |
approvedTransactionsNumber | number | Número de transações aprovadas |
cancelledValueBrand | number | Valor total cancelado, em centavos |
cancelledTransactionsNumber | number | Número de transações canceladas |
transactionType | string | Tipo da transação e.g. Débito, Crédito, Refeição, … |
e.g.