Aplikasi C# sebagai tambahan pada software POS yang sudah ada

pemrograman


Hai,

Saya telah membaca banyak artikel tentang pengembangan aplikasi POS dengan perpustakaan MS POS.net di C#. Namun, kebutuhan saya sedikit berbeda.

Saya ingin membangun aplikasi C# yang akan diinstal sebagai tambahan pada perangkat lunak POS yang ada (di perangkat POS apa pun). Saya sedang membangun tambahan untuk mencatat detail tambahan tentang tagihan & pelanggan di basis data.

Saya memiliki keraguan berikut

1. Apakah mungkin?
2. Jika jawaban 1 adalah ya, apakah ada dua software yang dapat menerima event dari perangkat POS? Seperti barcode yang dipindai?

Bantuan apa pun sangat dihargai

Salam
Taher

Solusi 1

1. Apakah mungkin?

Pada setiap perangkat POS? TIDAK.

Perangkat POS yang paling umum di seluruh dunia adalah mesin kasir kuno yang bagus. Anda tidak dapat menjalankan aplikasi C# pada itu.

Mungkin perangkat POS paling umum berikutnya di seluruh dunia adalah sistem POS berpemilik yang disediakan oleh perusahaan seperti NCR yang dipasang di pengecer besar. Mereka belum tentu menjalankan Windos, dan bahkan jika mereka menjalankannya, mereka tidak akan dikonfigurasi untuk memungkinkan Anda menginstal add-on pihak ketiga.

Rata-rata bisnis kecil-menengah Anda menggunakan mesin kasir, atau membeli perangkat POS dari seseorang seperti NCR atau HP yang juga menjual perangkat lunak yang menjalankannya kepada mereka. Minimal, perangkat lunak melacak inventaris atau menghasilkan laporan penjualan. Dan vendor yang sama memiliki opsi perangkat lunak yang akan melacak detail tambahan — dan sudah terintegrasi serta berfungsi dengan sistem tersebut. Kemungkinan besar vendor tersebut tidak memiliki banyak insentif untuk memberi Anda API terbuka untuk ditambahkan ke sistem mereka — dan juga kemungkinan besar rata-rata bisnis Anda tidak akan mengambil risiko menggunakan solusi pihak ketiga jika mereka bisa mendapatkannya dari vendor yang sama. .

Jadi apa yang Anda targetkan?

Carilah perangkat POS yang ingin Anda kembangkan aplikasinya.

Apakah hanya sekedar pembaca barcode, ditambah pembaca strip magnetik, ditambah beberapa software yang berjalan di atas pc berbasis windows?

Kalau begitu, YA mungkin tergantung pada seberapa banyak pekerjaan yang ingin Anda lakukan.

(Tetapi sebelum Anda melangkah lebih jauh, cari tahu apakah ada orang yang benar-benar akan menggunakan apa yang Anda pikirkan. Berapa banyak bisnis yang memiliki sistem POS semacam itu? Apakah vendor aslinya sudah menyediakan opsi perangkat lunak yang serupa dengan yang Anda pikirkan? Survei beberapa dari bisnis tersebut dan cari tahu apakah (a) mereka membutuhkan atau menginginkan apa yang Anda pikirkan dan (b) apakah mereka akan membelinya dari Anda dan bukan dari vendor aslinya.)

2. Jika jawaban 1 adalah ya, apakah ada dua software yang dapat menerima event dari perangkat POS? Seperti barcode yang dipindai?

YA, tapi Anda mungkin harus menulis driver perangkat Anda sendiri untuk melakukannya.

Sangat tidak mungkin perangkat lunak POS yang ada memiliki API terbuka sehingga Anda bisa mendapatkan datanya. Hal ini juga sangat tidak mungkin bahwa penulis asli perangkat lunak POS merancang sistem dengan gagasan bahwa mereka akan berbagi pembaca strip magnetik dan pembaca kode batang dengan paket perangkat lunak lain.

Jika demikian, maka Anda masih dapat mengganti driver perangkat yang ada untuk perangkat tersebut (atau, mungkin lebih sederhana, menambahkan driver ke rantai driver perangkat untuk perangkat tersebut) sehingga Anda dapat mencegat data dari perangkat saat masuk ke paket perangkat lunak lainnya.

(Untuk memberi Anda gambaran tentang apa yang saya bicarakan, inilah artikel proyek kode tentang mencegat penekanan tombol:

Pemantauan Keystroke[^]

Mencegat data dari perangkat lain mungkin lebih rumit, namun konsepnya sama.)

Jika Anda harus menulis driver tingkat kernel untuk melakukan apa yang Anda inginkan, Anda akan menulisnya dalam C atau C++ asli daripada C#.

Jadi jawabannya adalah:

Iya itu mungkin.
TETAPI, kecuali ada alasan kuat untuk melakukannya, hal itu tidak sebanding dengan jumlah pekerjaan yang dilakukan.

Solusi 2

Itu sangat mungkin! Biasakan diri Anda bagaimana komponen POS bekerja sama. 1) Antarmuka POS yang sedang dikerjakan kasir. 2) EPS atau sistem pembayaran yang akan terhubung ke terminal POS, pinpad, pembaca bar code, timbangan, dan terhubung dengan prosesor/bank dll. Cari tahu format paket TCP/IP karena banyak prosesor yang menggunakan jaringan tertentu protokol – dari XML ke beberapa jenis protokol TLV dll. Buat aplikasi klien/server untuk mencegat paket yang datang dari EPS menuju prosesor, ekstrak data penting yang ingin Anda simpan dalam DB dan meneruskan paket ke prosesor, kemudian menerima respon dari prosesor dan mengirimkannya kembali ke POS.
CATATAN – semua ini mengasumsikan tidak ada enkripsi yang terlibat! Selain itu, dengan pendekatan ini Anda tidak akan mengetahui transaksi tunai, cek, atau kartu hadiah karena transaksi tersebut dapat diproses melalui pemroses yang berbeda kecuali Anda menambahkan “sniffer” untuk setiap kemungkinan tujuan.

POS—>EPS—->SNIFFER ANDA—>Prosesor—>Bank : Lalu kembali.

コメント

タイトルとURLをコピーしました