ISO8583py - Utilizando Python para o tratamento de mensagens ISO8583

ISO8583 é um padrão de mensagens em formato ASCII para ser utilizado na troca de informações financeiras, como entre aqueles terminais de cartão de crédito e as operadoras. Em Python, o processamento adequado da mensagem pode ser feito com a biblioteca ISO8583py descrita neste artigo.

[ Hits: 18.178 ]

Por: Igor V. Custódio em 09/04/2009


Introdução



ISO8583 é um padrão de mensagens em formato ASCII para ser utilizado na troca de informações financeiras, como entre aqueles terminais de cartão de crédito e as operadoras.

As mensagens são formadas por 3 partes:
  • Message Type Indication: Tipo indicativo da mensagem, por exemplo 0800 (Network Management Request), para indicar transações de teste de canal (Echo), abertura de comunicação etc;
  • Bitmap: O mapa de bits que a indicação de quais bits estão ativos e consequentemente presentes no pacote;
  • Bits: informações efetivamente.

A seguir temos um exemplo de uma mensagem ISO8583 do tipo 0800 (MTI):

Bits setados:
  • Bit 3 conteúdo 300000
  • Bit 24 conteúdo 045
  • Bit 41 conteúdo 11111111
  • Bit 42 conteúdo 222222222222222
  • Bit 63 conteúdo This is a Test Message

Assim, a mensagem final, com todos os campos e o bitmap seria: 08002000010000c0000230000004511111111222222222222222022This is a Test Message

Quebrando a mensagem, verifica-se:
  • MTI: 0800
  • Bitmap: 2000010000c00002
  • Dados: 30000004511111111222222222222222022This is a Test Message

Segundo o padrão, cada um dos bits deve ter um tamanho/tipo específico, possuindo também um nome que define sua finalidade.

Maiores informações sobre ISO8583, MTI, mapa de bits e os bits, podem ser visto na Wikipedia do ISO8583.

ISO8583py

A biblioteca IS8583py é feita inteiramente em Python e está licenciada segundo a GPL V.3 com suporte ao processamento das mensagens ISO8583.

O site do projeto é: ISO8583 Python Library

Neste site é possível:
  • Fazer download da biblioteca
  • Ter acesso à documentação
  • Ter acesso ao código fonte
  • Ter acesso a exemplos de utilização

    Próxima página

Páginas do artigo
   1. Introdução
   2. Download e instalação
   3. Exemplo - Uso básico
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

rwd - Restart When Down

Desenvolvendo aplicações GUI simples em Python & Glade (PyGTK) com banco de dados SQLite

Arduino com Bluetooth e pySerial

Sockets em Python

Python + ADB

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts