Showing posts with label Standard များ. Show all posts
Showing posts with label Standard များ. Show all posts

Jun 26, 2017

HL7 Message ဆိုတာဘာလဲ။

sagaing
(HL7 Wiki မှ ပုံဖြစ်ပါသည်။)

နည်းပညာတွေကို သက်ဆိုင်ရာနယ်ပယ်ထဲမှာ ထည့်သွင်းအသုံးပြုကြတဲ့အခါ အဲ့ဒီနယ်ပယ်အတွက် ဖန်တီးထားတဲ့ စနစ်တွေဟာ တစ်ခုထက်မကရှိနိုင်ပါတယ်။  အဲ့ဒီစနစ်တွေဟာ မတူညီတဲ့ အဖွဲ့အစည်းတွေ၊ နည်းပညာတွေနှင့် ထုတ်လုပ်ထားလေ့ရှိကြတယ်၊ နောက်ပြီး စနစ်တွေဟာ သီးသန့်တည်ရှိနေလို့မရသလို၊ စနစ်တစ်ခုနှင့်တစ်ခု အပြန်အလှန်ဆက်သွယ်ပြီးလည်း လုပ်ဆောင်နေကြရတယ်။  ယင်းကဲ့သို့စနစ်တွေ အပြန်အလှန်ဆက်သွယ်ပြီး လုပ်ဆောင်နိုင်တာက Standard လို့ခေါ်တဲ့ စံသတ်မှတ်ချက်တွေကြောင့်ဖြစ်တယ်။  အဲ့ဒီ စံသတ်မှတ်ချက်တွေထဲမှာ တစ်ခုအပါအဝင်ဖြစ်တဲ့  HL7 Message စံသတ်မှတ်ချက်ဟာ ကျမ္မာရေးနှင့်သက်ဆိုင်တဲ့ ဆေးပညာနယ်ပယ်အတွက် အသုံးပြုတဲ့စံသတ်မှတ်ချက်ဖြစ်တယ်။  HL7 ဆိုတာ Health Level 7 ဖြစ်ပါတယ်။  ကျမ္မာရေးစောင့်ရှောက်မှုစနစ်တွေမှာ လူနာတစ်ယောက်နှင့်သက်ဆိုင်တဲ့ အချက်အလက်တွေကို စနစ်တစ်ခုနှင့်တစ်ခု အပြန်အလှန်ပေးပို့နိုင်ဖို့ ဖန်တီးထားတဲ့ Standard ကို HL7 လို့ခေါ်ပါတယ်။

HL7 လို့ဘာလို့ခေါ်တာလဲ။
နည်းပညာနယ်ပယ်က လူတိုင်းနီးပါး OSI Model (Open System Interconnection Model) အကြောင်းကို သိပြီးသားဖြစ်ပါလိမ့်မယ်။  OSI Model မှာ Layer ၇ခု ရှိပါတယ်၊ အဲ့ဒီ Layer တွေထဲမှာ နောက်ဆုံး Layer ဖြစ်တဲ့ Layer - 7 ဟာ Application Layer ဖြစ်ပါတယ်။  HL7 Standard ကို Application Layer မှာပဲအသုံးပြုပါတယ်။  အဲ့ဒါကြောင့် Health Level 7 လို့ ခေါ်တာဖြစ်ပါတယ်။  HL7 စံသတ်မှတ်ချက်တွေကို Health Level Seven International လို့အမည်ရတဲ့ NGO အဖွဲ့ကနေ၊ ANSI (American National Standards Institute) နှင့် ISO (International Standards Organization) တို့ရဲ့ အတည်ပြုချက်တွေနှင့်၊ ထုတ်ပြန်ထားတာဖြစ်ပါတယ်။  အောက်ပါပုံကတော့ Layer ၇ခုနှင့်ဖွဲ့စည်းထားတဲ့ OSI Model ပုံဖြစ်ပါတယ်။

(Source : Internet)

HL7 Message Standard Version
HL7 Standard တွေထဲမှာ HL7 Message နှင့်သက်ဆိုင်တဲ့ Standard ကို Version 2.x နှင့် Version 3 ဆိုပြီး (၂)မျိုး တွေ့နိုင်ပါတယ်။  Version 2.x နှင့် Version 3 မှာ နည်းပညာအားဖြင့် အဓိကခြားနားချက်ကတော့ Version 3 မှာ Object Oriented Design Methodology နှင့် XML အသုံးပြုလာခြင်းပဲဖြစ်ပါတယ်။  ဒီခြားနားမှုအပြင် Version 3 ဟာ Version 2.x တွေအတွက် Backward Compatible လို့ခေါ်တဲ့ နောက်ကြောင်းပြန်သဟဇာတဖြစ်မှုတွေ မပါဝင်ကြောင့် Version အသစ်တစ်ခုကဲ့သို့ဖြစ်ခဲ့ပါတယ်။  Version 2.x ကို နည်းပညာအသုံးပြုတဲ့ သာမာန်ဆေးရုံ၊ ဆေးခန်းတွေမှာရှိတဲ့ စနစ်တွေမှာ တွေ့နိုင်ပြီး၊ Version 3 ကိုတော့ အစိုးရဆေးရုံကြီးတွေ၊ နိုင်ငံတကာနှင့် ချိတ်ဆက်လုပ်ကိုင်နေကြတဲ့ ဆေးရုံကြီးတွေက နည်းပညာအသုံးပြုတဲ့ စနစ်တွေမှာ တွေ့နိုင်ပါတယ်။  ဒီအချက်တွေကြောင့် Version 2.x ဟာ လက်ရှိအချိန်အထိ စနစ်တော်တော်များများမှာ အသုံးပြုနေတဲ့ Standard တစ်ခုအနေနှင့် တည်ရှိနေပါတယ်။

HL7 Message ပုံစံနှင့်ဖွဲ့စည်းပုံ

HL7 Version 2.x Message Standard 

Version 2.x Message တစ်ခုကို Segment လို့ခေါ်တဲ့ အပိုင်းတွေ နှင့်ဖွဲ့စည်းထားပါတယ်။  Segment တစ်ခုဟာ တကယ်တော့ လိုင်းတစ်လိုင်း (သို့) စာကြောင်းတစ်ကြောင်းဖြစ်ပါတယ်။  Message တစ်ခုဟာ ဘယ်လို Message အမျိုးအစားဖြစ်တယ်ဆိုတာကို ပထမဆုံး Segment တစ်ခုဖြစ်တဲ့ MSH Segment ကိုကြည့်ခြင်းအားဖြင့် သိနိုင်ပါတယ်။  ဥပမာအနေဖြင့် အောက်ပါ Message တစ်ခုကိုကြည့်လိုက်ရင်...

MSH|^~\&|SOURCE|383018129|PRIORITY HEALTH|382715520|2007100914484648||ORU^R01|0129938170710091448|P|2.3| PID|1|1034157|012993817||LASTNAME^FIRSTNAME||19520101|M|||1234 MAIN^^DEARBORN HEIGHT^MI^48127|||||||| 
PD1|1|||1234567890^DOCLAST^DOCFIRST^M^^^^^NPI| 
OBR|1|||80061^LIPID PROFILE^CPT-4||20070911|||||||||| 
OBX|1|NM|13457-7^LDL (CALCULATED)^LOINC|49.000|MG/DL| 0.000 - 100.000|N|||F| OBX|2|NM|2093-3^CHOLESTEROL^LOINC|138.000|MG/DL|100.000 - 200.000|N|||F| OBX|3|NM|2086-7^HDL^LOINC|24.000|MG/DL|45.000 - 150.000|L|||F| 
OBX|4|NM|2571-8^TRIGLYCERIDES^LOINC|324.000|MG/DL| 0.000 - 150.000|H|||F|
 PriorityHealth မှ နမူနာ ဖြစ်ပါတယ်။

အနီရောင်ခြယ်ထားတာတွေက Segment တွေရဲ့ အစဖြစ်ပါတယ်။  Segment တစ်ခုဟာ Field တွေနှင့် ဖွဲ့စည်းထားပါတယ်။  Field တစ်ခုနှင့် တစ်ခုကို Vertial Bar ( | ) နှင့်ကန့်သတ်ထားပါတယ်။  MSH ဆိုတာ Message Header ဖြစ်ပြီး၊ MSH Segment ရဲ့ ကိုးခုမြောက် Field ဟာ Message Type (အမျိုးအစား) ဖြစ်ပါတယ်။  အဲ့ဒီနေရာမှာ ORU^R01 ဆိုတာတွေ့ရပါတယ်။  Message Type ကတော့ Obervation Result (ဆေးစစ်မှုအဖြေ) ဖြစ်ပါတယ်။  ဒီ Message ထဲမှာ ရောဂါလက္ခဏာ၊ ခန္ဓာကိုယ်က အရေးကြီးအစိတ်အပိုင်းတွေ (ဥပမာ၊​အသည်း၊ နှလုံး၊ အဆုတ်) စသည်တို့ရဲ့ အခြေအနေ၊ စသည်ဖြင့်ပါဝင်ပါတယ်။  Message ထဲမှာ PID ဆိုတာ Patient Identification ဖြစ်ပါတယ်။  လူနာနှင့်ပတ်သက်တဲ့ အချက်အလက်တွေ ပါဝင်ပါတယ်။  PD1 ဆိုတဲ့ Segment က Patient Additional Demographic ဖြစ်ပါတယ်။  လူနာနှင့်ပတ်သက်တဲ့ အခြားအချက်အလက်တွေဖြစ်ပါတယ်။  PD1 က လိုအပ်မှ ဆရာဝန်တွေထည့်သွင်း ဖေါ်ပြတဲ့ Segment တစ်ခုဖြစ်ပါတယ်။  OBR ဆိုတဲ့ Segment က Observation Request ဖြစ်ပါတယ်။  ဆေးစစ်မှုကို လုပ်ဆောင်တဲ့နေ့နှင့် အခြားလိုအပ်တဲ့ အချက်အလက်တွေဖြစ်ပါတယ်။  OBX Segment ကတော့ Observation Result ဖြစ်ပါတယ်။  ဆရာဝန်ရဲ့ လူနာကိုစစ်ဆေးမှုပေါ်မူတည်ပြီး OBX Segment တွေကို တစ်ခုထက်မက တွေ့နိုင်ပါတယ်။  အခြား Message Type တွေရဲ့ ဖွဲ့စည်းပုံကလည်း ဒီ Message ကဲ့သို့ဖြစ်ပါတယ်။  Segment တွေကို လေ့လာချင်ရင် ဒီနေရာမှာ လေ့လာနိုင်ပါတယ်။  Microsoft ရဲ့ HL7 Message Structure မှာလည်း Message Type တွေ၊ Segment တွေကို လေ့လာနိုင်ပါတယ်။

HL7 Version 3 Message Standard

Version 3 Message တစ်ခုကို XML နည်းပညာနှင့် ဖွဲ့စည်းတည်ဆောက်ထားပါတယ်။  နည်းပညာသမားတွေအနေနှင့်ကတော့ XML (Extensible Markup Language) ဆိုတာကို ရင်းနှီးပြီးသားဖြစ်ပါတယ်။  Version 3 Message တစ်ခုကို အောက်ပါအတိုင်း XML tag တွေနှင့် ဖွဲ့စည်းထားပါတယ်။

<POLB_IN224200 ITSVersion="XML_1.0" xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <id root="2.16.840.1.113883.19.1122.7" extension="CNTRL-3456"/> <creationTime value="200202150930-0400"/> <!-- The version of the datatypes/RIM/vocabulary used is that of May 2006 --> <versionCode code="2006-05"/> <!-- interaction id= Observation Event Complete, w/o Receiver Responsibilities --> <interactionId root="2.16.840.1.113883.1.6" extension="POLB_IN224200"/> <processingCode code="P"/> <processingModeCode nullFlavor="OTH"/> <acceptAckCode code="ER"/> <receiver typeCode="RCV"> <device classCode="DEV" determinerCode="INSTANCE"> <id extension="GHH LAB" root="2.16.840.1.113883.19.1122.1"/> <asLocatedEntity classCode="LOCE"> <location classCode="PLC" determinerCode="INSTANCE"> <id root="2.16.840.1.113883.19.1122.2" extension="ELAB-3"/> </location> </asLocatedEntity> </device> </receiver> <sender typeCode="SND"> <device classCode="DEV" determinerCode="INSTANCE"> <id root="2.16.840.1.113883.19.1122.1" extension="GHH OE"/> <asLocatedEntity classCode="LOCE"> <location classCode="PLC" determinerCode="INSTANCE"> <id root="2.16.840.1.113883.19.1122.2" extension="BLDG24"/> </location> </asLocatedEntity> </device> </sender> <controlActProcess classCode="CACT" moodCode="EVN"> <subject typeCode="SUBJ" contextConductionInd="false"> <encounterEvent classCode="ENC" moodCode="EVN"> <id root="1.56.3.4.7.5" extension="122345" assigningAuthorityName="Maple Hospital Emergency"/> <code code="EMER" codeSystem="2.16.840.1.113883.5.4"/> <statusCode code="active"/> <subject contextControlCode="OP"> <patient classCode="PAT"> <id root="1.56.3.4.7.9" extension="55321" assigningAuthorityName="Maple Hospital Patients"/> <patientPerson classCode="PSN" determinerCode="INSTANCE"> <name> <given>Rob</given> <given>P</given> <family>Young</family> </name> <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/> <birthTime value="19800309"/> </patientPerson> </patient> </subject> </encounterEvent> </subject> </controlActProcess> </POLB_IN224200>
Wiki နှင့် Oracle မှ နမူနာများ ဖြစ်ပါတယ်။

POLB_IN224200 က Root tag ဖြစ်ပါတယ်။  Message ထဲမှာတွေ့ရတဲ့ နံပါတ်တွေဟာ Global သတ်မှတ်ထားတဲ့ Unique ID တွေဖြစ်ပါတယ်။  Message တွေမှာ Root tag အပါအဝင်၊ creationTime၊ processingCode၊ ဘယ်ကနေပို့ပြီး (sender)၊ ဘယ်ကလက်ခံတယ် (receiver) စသည် tag တွေနှင့်ဖွဲ့စည်းထားတဲ့အပိုင်းကို Transmission Wrapper လို့ခေါ်ပါတယ်။  အဲ့ဒီထဲမှာမှ Query Control Wrapper ဆိုတဲ့ tag လာပါတယ်။  အဲ့ဒီ tag ထဲမှာမှ Medical အချက်အလက်တွေကို သက်ဆိုင်ရာ tag အစုလိုက် ခွဲခြားပြီးဖွဲ့စည်းထားပါတယ်။  နမူနာ Message ထဲမှာ controlActProcess tag က Query Control Wrapper တစ်ခုဖြစ်ပါတယ်။  အဲ့ဒီ ထဲမှာမှ ဆေးရုံနှင့်ပတ်သက်တဲ့ အချက်အလက်၊ လူနာနှင့်ပတ်သက်တဲ့ အချက်လက်နှင့် အခြားဆေးပညာပိုင်းဆိုင်ရာ အချက်အလက်တွေ ပါဝင်ပါတယ်။  V3 Message တွေကို HTTP နှင့် SOAP Web Services တွေကို အသုံးပြုပြီး တစ်နေရာမှ၊ တစ်နေရာသို့ ပေးပို့ပါတယ်။  Web Services အကြောင်းကို လေ့လာချင်ရင် ဒီနေရာမှာ ကျွန်တော်ရေးသားထားပါတယ်။  အောက်ပါပုံကတော့ HL7 V3 မှာပါဝင်တဲ့ Layer တွေနှင့် Model ပုံဖြစ်ပါတယ်။


HL7 Message နှင့်ပတ်သက်တဲ့ အခြားလင့်ခ်များ
HL7Wiki
Oracle HL7 V3 Sample Project
HL7 Overview PDF
HL7 Implementation Guide
HL7 Message V2 and V3
Version of the HL7 Standard
Health Level 7

Apr 5, 2017

PCI DSS ဆိုတာဘာလဲ။

sagaing
PCI DSS ဆိုတာ Payment Card Industry Data Security Standard ဖြစ်ပါတယ်။  Credit Card (သို့) Debit Card အသုံးပြုသူတွေရဲ့ ကိုယ်ရေးကိုယ်တာအချက်အလက်တွေနှင့် Card နှင့် ငွေပေးချေခဲ့တဲ့ Transaction အချက်အလက်တွေကို လုံခြုံအောင်ကာကွယ်ပေးနိုင်မယ့် မူဝါဒနှင့်လုပ်ငန်းစဉ်တွေပဲဖြစ်ပါတယ်။  ဒီမူဝါဒတွေ၊ လုပ်ငန်းစဉ်တွေ ကို (PCI SSC - Payment Card Industry Security Standards Council) ဆိုတဲ့အဖွဲ့ရဲ့ ဦးဆောင်မှုနှင့် ချမှတ်ထားတာဖြစ်ပြီး၊ PCI DSS ဆိုတာကို ငွေပေးချေကဒ်ကုမ္ပဏီကြီးတွေဖြစ်တဲ့ Visa, MasterCard, Discover နှင့် American Express တို့ပူးပေါင်းပြီး Card ကိုအသုံးပြုပြီး မသမာသည့်နည်းလမ်းတွေဖြင့် ငွေပေးချေမှုတွေ ပပျောက်အောင် ၂၀၀၄ မှာစတင်ပြီးဖန်တီးခဲ့တာဖြစ်ပါတယ်။  PCI DSS ရဲ့ နောက်ထပ် ရည်ရွယ်တစ်ခုက Card အသုံးပြုတဲ့သူတွေရဲ့ အရေးပါတဲ့အချက်အလက်တွေကို ကာကွယ်ပေးဖို့ဖြစ်ပါတယ်။  ၂၀၀၄ ခုနှစ်မှာ စတင်ခဲ့တဲ့ PCI DSS ဟာ အခုဆိုရင် PCI DSS နောက်ဆုံး ဗားရှင်း 3.2 ကို ဧပြီ ၂၀၁၆ မှာထုတ်ပြန်ခဲ့ပါတယ်။  PCI DSS ဗားရှင်းတွေကို Wikipedia မှာ အခုလိုဖေါ်ပြထားပါတယ်။

PCI DSS ကိုလိုက်နာရန် အဓိကလိုအပ်ချက် (၁၂) ချက်
PCI DSS ကိုလိုက်နာရန် အဓိကအချက် (၁၂) ချက်ကို အမျိုးအစားခွဲခြားသတ်မှတ်တဲ့အခါမှာ ခေါင်းစဉ် (၆) ခုဖြင့် သတ်မှတ်ပါတယ်။

၁)  Build and Maintain a Secure Network
(လုံခြုံစိတ်ချရတဲ့ ကွန်ယက်တစ်ခုကို တည်ဆောက်ခြင်းနှင့် ပြုပြင်ထိန်းသိမ်းခြင်း)
a) Install and maintain a firewall configuration to protect data
(အချက်အလက်တွေကို အကာအကွယ်ဖြစ်စေရန် ဗိုင်းရပ်နှင့် အခြားသောတိုက်ခိုက်မှုတွေကို ကာကွယ်ပေးနိုင်မယ့်ပစ္စည်းတွေကို တပ်ဆင်ခြင်းနှင့် ပြုပြင်ထိန်းသိမ်းခြင်း)
b) Do not use vendor-supplied defaults for system passwords and other security parameters
(ကွန်ပျူတာပစ္စည်းရောင်းချသူတွေ ထည့်သွင်းသတ်မှတ်ပေးထားတဲ့ လျှို့ဝှက်စကားလုံးတွေနှင့် အခြားလုံခြုံရေးဆိုင်ရာ လျှို့ဝှက်စကားလုံးတွေကို ကွန်ပျူတာစနစ်မှာ မပြင်ဆင်ပဲအသုံးမပြုရ)

၂) Protect Cardholder Data
(ကဒ်အသုံးပြုသူတွေရဲ့ အချက်အလက်တွေကိုကာကွယ်ပေးခြင်း)
c) Protect stored data (use encryption)
(သိမ်းဆည်းထားတဲ့အချက်အလက်တွေကို လုံခြုံပြီး၊ ဖတ်လို့မရအောင် ဖုံးကွယ်ထားခြင်းဖြင့် ကာကွယ်ပေးခြင်း)
d) Encrypt transmission of cardholder data and sensitive information across public net
(အများသုံးကွန်ယက်တွေထဲမှာ အချက်အလက်တွေ ဖြတ်သန်းစီးဆင်းမှုနှင့် ပို့လွှတ်မှုတွေမှာ လုံခြုံပြီး၊ ဖတ်လို့မရသည့်နည်းလမ်းဖြင့် ဖုံးကွယ်ပေးခြင်း)

၃) Maintain a Vulnerability Management Program
(အားနည်းချက်တွေကို စီမံခန့်ခွဲမယ့် အစီအစဉ်တစ်ခုကို ထိန်းသိမ်းထားခြင်း)
e) Use and regularly update anti-virus software
(ဗိုင်းရပ်ဆော့ဖ်ဝဲလ်ကို အသုံးပြုခြင်းနှင့် အမြဲမွန်းမံခြင်း)
f) Develop and maintain secure systems and applications
(လုံခြုံစိတ်ချရတဲ့စနစ်တွေနှင့် အသုံးချမယ့်ဆော့ဒ်ဝဲလ်တွေကို ပေါ်ပေါက်လာအောင် လုပ်ဆောင်ခြင်းနှင့် ပြုပြင်ထိန်းသိမ်းခြင်း)

၄) Implement Strong Access Control Measures
(လုပ်ဆောင်မှုတိုင်းအတွက် တိုင်းတာသတ်မှတ်ချက်တွေကို ခိုင်မာစွာ အကောင်အထည်ဖေါ်ခြင်း)
g) Restrict access to data by business need-to-know
(လုပ်ဆောင်တဲ့အချက်အလက်တွေကို သိရန်လိုအပ်တဲ့အလုပ်ကိစ္စအလိုက် ကန်သတ်ထားခြင်း)
h) Assign a unique ID to each person with computer access
(ကွန်ပျူတာအသုံးပြုမှုကို လူတစ်ဦးခြင်းစီအလိုက် သီးသန့် ID ဖြင့် သတ်မှတ်ထားခြင်း)
i) Restrict physical access to cardholder data
(ကဒ်အသုံးပြုသူတွေရဲ့ အချက်အလက်ကို ကိုယ်တိုင်ပါဝင်ဆောင်ရွက်မှု ကန်သတ်ထားခြင်း)

၅) Regularly Monitor and Test Networks
(ကွန်ယက်တွေကို ပုံမှန် စမ်းသပ်ခြင်းနှင့် စောင့်ကြည့်ပေးခြင်း)
j) Track and monitor all access to network resources and cardholder data
(ကွန်ယက်ထဲမှာ ကဒ်အသုံးပြုသူတွေရဲ့ အချက်အလက်တွေနှင့် အခြားရင်းမြစ်တွေကို အသုံးပြုဆောင်ရွက်မှု အားလုံးကို စောင့်ကြည့်ခြင်းနှင့် ခြေရာခံခြင်း)
k) Regularly test security systems and processes
(လုပ်ငန်းစဉ်တွေနှင့် စနစ်တွေရဲ့ လုံခြုံရေးကို ပုံမှန်စစ်ဆေးခြင်း)

၆) Maintain an Information Security Policy
(သတင်းအချက်အလက် လုံခြုံရေးမူဝါဒတစ်ခုကို ထိန်းသိမ်းခြင်း)
l) Maintain a policy that addresses Information Security
(သတင်းအချက်အလက်လုံခြုံရေးအမည်ဖြင့် မူဝါဒတစ်ခုကို ထိန်းသိမ်းခြင်း)

PCI Security Standards မှကိုးကားသည်။

PCI ဘာကြောင့် အရေးပါတာလဲ။  MasterCard ကဖေါ်ပြထားတဲ့ PDF ဖိုင်ဖြစ်ပါတယ်။



အခြား ဆက်စပ်လေ့လာရန် လင့်ခ်များ
Payment Security Educational Resources
How to Secure with the PCI Data Security Standard
Assessor & Solutions
PCI DSS v. 3.2: New Requirements Coming to Protect Your Customers’ Wallets

Jan 8, 2017

De Facto နှင့် De Jure Standard ဆိုတာဘာလဲ။

sagaing
နည်းပညာနှင့်ပတ်သက်ပြီးလေ့လာဖူးတဲ့လူတိုင်း ဒီ Standard ၂ခုကို အမြဲလိုလိုတွေ့ဖူးပါလိမ့်မယ်။  ဒီ Standard နှင့်ပတ်သက်ပြီး Internet ကနေရှာဖွေဖတ်မှတ်ပြီး၊ အတွေးကွန့်ဖြည့်စွပ် မျှဝေပါရစေ။  De Facto Standard ဆိုတာ အစိုးရအဖွဲ့အစည်းတွေ၊ International Standard Orginization (ISO) တွေက တရားဝင်သတ်မှတ်တာမဟုတ်ပဲ၊ ကျယ်ကျယ်ပြန့်ပြန့် လက်ခံသုံးစွဲမှုပေါ်မှာ မူတည်ပြီး သတ်မှတ်တဲ့ Standard တစ်ခုပဲဖြစ်တယ်။ လက်တွေ့မှာ လူအများကျေနပ်လက်ခံပြီး၊ စျေးကွက်ထဲမှာ ကျယ်ကျယ်ပြန့်ပြန့် လွှမ်းမိုးထားနိုင်တဲ့ ထုတ်ကုန်၊ စနစ်၊ အလေ့အထ၊ ဝန်ဆောင်မှု စသည်တို့မှာ De Facto Standard တွေပဲဖြစ်တယ်။  De Jure Standard ကတော့ Standard Organization တစ်ခုခုက (သို့) ဥပဒေအရ ထောက်ခံအတည်ပြု သတ်မှတ်ထားတဲ့ Standard ဖြစ်တယ်။  အချို့Standard တွေက De Facto ကနေ De Jure ကိုပြောင်းလဲ သတ်မှတ်လိုက်တဲ့ Standard တွေလည်းရှိတယ်။  ဥပမာ ကွန်ပျူတာလောကမှာဆိုရင် HTML နှင့် PDF ဖိုင်တွေပဲဖြစ်တယ်။  လက်ရှိအချိန်ထိ De Facto Standard အနေနှင့် ရှိနေတာတွေကတော့ ဥပမာ Microsoft Windows(Word/Excel)၊ QWERTY Keyboard (Keyboard ထိပ်မှ English စာလုံး QWERTY ခလုပ် ၆ခုကို ကိုယ်စားပြု၊ အမည်ပေးထားတာဖြစ်ပြီး၊ လက်နှိပ်စက်မှစတင်ကာ ကွန်ပျူတာအထိ အသုံးပြုနေဆဲဖြစ်သည့်  လက်ကွက်ပုံစံ)၊ PCL(Printer Control Language = HP ကဖန်တီးထားပြီး Laser Printer တွေမှာ အသုံးပြုတဲ့ Protocol) စသည် တို့ပဲဖြစ်တယ်။ (မှတ်ချက် အခြားနည်းပညာတွေနှင့် အခြားနယ်ပယ်တွေမှာလည်း Standard သတ်မှတ်ထားတာတွေ အများကြီးရှိနိုင်ပါသေးတယ်)။ နည်းပညာအသစ်တွေ ကျယ်ပြန့်စွာ ပေါ်ထွန်းလာဖို့အတွက် Standard သတ်မှတ်မှုတွေဟာ မရှိမဖြစ် လိုအပ်ပါတယ်။ သို့သော် Standard သတ်မှတ်မှုတွေမှာ ကြုံတွေ့ရတဲ့အငြင်းပွားဖွယ် ကိစ္စတွေကတော့ မူပိုင်ခွင့်တွေပဲဖြစ်တယ်။  Apple ရဲ့ အချို့နည်းပညာတွေကို လူအများသုံးစွဲနိုင်ဖို့ De Facto Standard အနေနှင့်သတ်မှတ်ဖို့ Google ရဲ့တောင်းဆိုမှုမှ အငြင်းပွားခဲ့တဲ့ဖြစ်ရပ်တွေ ရှိခဲ့ပါတယ်။  Apple ရဲ့ နည်းပညာတစ်ခုဖြစ်တဲ့ Mini DisplayPort ဟာ De Facto Standard ဖြစ်ပြီး Microsoft Surface Pro Tablet တွေမှာလည်း အသုံးပြုပါတယ်။


Dec 31, 2016

ISO 8583 ဆိုတာဘာလဲ။

sagaing
ကဒ်နှင့်ငွေပေးချေတဲ့စနစ်တွေအကြောင်းကို ပြောတော့မယ်ဆိုရင် ISO8583 ဟာ အဓိက အခန်းကဏ္ဏတစ်ခုအနေနှင့် ပြောမှရမည့် စံသတ်မှတ်ချက်တစ်ခုပဲဖြစ်ပါတယ်။  ဒီ စံသတ်မှတ်ချက်ကို ပြည်ပြည်ဆိုင်ရာ စံသတ်မှတ်သည့် အဖွဲ့အစည်း (International Standard Organization) က ထုတ်ပြန်ထားတာဖြစ်ပါတယ်။ ISO8583 စံသတ်မှတ်ချက်က ဘဏ္ဏာရေးဆိုင်ရာ Message တွေကို နည်းပညာတွေအသုံးပြုပြီး တစ်နေရာမှ တစ်နေရာသို့ ပေးပို့တဲ့အခါမှာ အသုံးပြုဖို့သတ်မှတ်ထားတဲ့ Message ပုံစံ၊ စံသတ်မှတ်ချက်တစ်ခုဖြစ်ပါတယ်။ အကယ်၍ ကျွန်တော့်မှာ ဘဏ်တစ်ခုက Credit (သို့) Debit Card တစ်ကဒ် ရှိတယ်ဆိုပါစို့၊ အဲ့ဒီကဒ်ကို အသုံးပြုပြီး စင်ကာပူမှာ စျေးဝယ်လို့ရသလို၊ ATM မှာလည်း ငွေထုတ်လို့ရပါတယ်၊ အမေရိကားသွားပြီး စျေးဝယ်လို့ရသလို၊ ATM ကငွေထုတ်လို့လည်း ရပါတယ်။ အဲ့ဒါ ဘာလို့လည်းဆိုတော့ စံသတ်မှတ်ချက်တွေ ရှိနေတဲ့အတွက် ဘယ်နေရာသွားသွား၊ ဘဏ်မရွေးပဲ ငွေကြေးနှင့်ပတ်သက်တဲ့ အလုပ်တွေကို ကဒ်လေးတစ်ခုတည်းနှင့် လုပ်ဆောင်နိုင်တာဖြစ်ပါတယ်။  ကျွန်တော်တို့အနေနှင့် ကဒ်ကို အသုံးပြုပြီးတော့ Transaction တစ်ခုကိုလုပ်လိုက်မယ်ဆိုရင်၊ အဲ့ဒီ Transaction တစ်ခုနောက်ကွယ်မှာရှိတဲ့ ဆက်စပ်နေသည့်လုပ်ဆောင်ချက်တွေဟာ အင်မတန်မှ များပြားပါတယ်။  Transaction တစ်ခုဆိုတာ ဝယ်တာ (Purchase)၊ ငွေထုတ်တာ (Withdraw)၊ ငွေထည့်တာ (Deposit)၊ ငွေပေးချေတာ (Payment)၊ ငွေလွှဲတာ (Transfer)၊ လက်ကျန်စစ်တာ (Balance Inquiry) စသည်ဖြင့် ဘဏ္ဏာရေးဆိုင်ရာ အလုပ်တစ်ခုကို လုပ်တာဖြစ်ပါတယ်။  ကဒ်အသုံးပြုသူတစ်ယောက်က Transaction တစ်ခုခုကို လုပ်လိုက်လျှင် အောက်မှာမြင်ရသည့် ပုံအတိုင်း Card ထဲက အချက်အလက်တွေကို တစ်နေရာမှ တနေရာသို့ အပြန်အလှန် ပေးပို့ပေးမှာ ဖြစ်ပါတယ်။


Consumer = စျေးဝယ်
Merchant = စျေးသည် (သို့) ကုန်သည်
Hardware Provider = အရောင်းစနစ် တီထွင်ရောင်းချသူ
Payment Processor = Acquirer = ငွေပေးချေသည့်လုပ်ငန်းဝန်ဆောင်မှုကို အွန်လိုင်းအသုံးပြုပြီး နောက်ကွယ်က လုပ်ဆောင်ပေးသူ (ဥပမာ။ PayPal, Square, Due စသည်ဖြင့်)
Acquiring Bank = စျေးသည် (သို့) ကုန်သည်၏ဘဏ်
Card Network = ကဒ်တွေသုံးစွဲနိုင်အောင် လုပ်ဆောင်ပေးသူ (ဥပမာ။ Visa, MasterCard, American Express, Discover, စသည်ဖြင့်)
Issuing Bank = စျေးဝယ်ကို ကဒ်ထုတ်ပေးသည့် ဘဏ်

ယင်းကဲ့သို့ ဘဏ္ဏာရေးဆိုင်ရာ Message တွေ ပေးပို့သည့်အခါမှာ အသုံးပြုသော Message ပုံစံ၊ စံသတ်မှတ်ချက်ကို ISO8583 ဟုခေါ်ပါတယ်။  ATM စက်တွေမှာလည်း ISO8583 စံသတ်မှတ်ချက်ဖြင့် Message တွေကို ပေးပို့လုပ်ဆောင်ပါတယ်။

ISO8583 မှာ Version ဘယ်နှစ်မျိုးရှိလည်း။
ISO8583 မှာ Version (၃)မျိုး ရှိပါတယ်။ ISO8583:1987၊ ISO8583:1993 နှင့် ISO8583:2003 ဆိုပြီး ရှိပါတယ်။ ISO8583:2003 ကတော့နောက်ဆုံး Version ဖြစ်ပါတယ်။  ယခုအချိန်ထိ ကျယ်ပြန့်စွာသုံးစွဲနေတဲ့ Version ကတော့ ISO8583:1987 ပဲဖြစ်ပါတယ်။  Visa နှင့် MasterCard ကဲ့သို့သော အဖွဲ့အစည်းကြီးတွေပင်လျှင် ISO8583:1987 Version ကိုလက်ရှိအချိန်ထိ အသုံးပြုနေဆဲဖြစ်ပါတယ်။ ကျွန်တော် ကိုယ်တိုင်လည်း ISO8583:1987 Version ကိုပဲ သုံးဖူးတဲ့အတွက် အဲ့ဒီ Version ရဲ့ စံသတ်မှတ်ချက်တွေကို အဓိက မှတ်သားထားပါတယ်။

ISO8583 မှာ Message ပုံစံကို ဘယ်လိုသတ်မှတ်ပေးလည်း။
ISO8583 မှာ Message  တစ်ခုကိုအဓိက အပိုင်း (၃) ပိုင်းနှင့် ဖွဲ့စည်းထားပါတယ်။

၁) Message Type Indicator (MTI) = အချက်အလက် အမျိုးအစား ညွှန်းဆိုဖေါ်ပြချက်
MTI မှာ Digit ၄လုံးဖြင့်ဖွဲ့စည်းထားပါတယ်။  အဲ့ဒီ ၄လုံးမှာ...
0xxx - ရှေ့ဆုံးက Digit က ISO8583 Version ကိုရည်ညွှန်းပါတယ်။
0xxx ဆိုရင် ISO8583:1987 ဖြစ်ပါတယ်။
1xxx ဆိုရင် ISO8583:1993 ဖြစ်ပါတယ်။
2xxx ဆိုရင် ISO8583:2003 ဖြစ်ပါတယ်။

ဒုတိယ Digit က Transaction လုပ်မယ့် Message အမျိုးအစားသတ်မှတ်ချက် (Message Class) ဖြစ်ပါတယ်။
ဥပမာ။ 02xx ဆိုရင် ငွေကြေးနှင့်ပတ်သက်တဲ့ အလုပ်လုပ်မှာဖြစ်ပါတယ်။  00xx မှ 09xx ထိ ရှိပါတယ်။

တတိယ Digit က Transaction လုပ်မယ့် Message လုပ်ငန်းအမျိုးအစား (Message Function) ဖြစ်ပါတယ်။
ဥပမာ။ 020x ဆိုရင် ငွေကြေးနှင့်ပတ်သက်ပြီး တောင်းဆိုတဲ့ (Request) အလုပ်ကိုလုပ်မှာ ဖြစ်ပါတယ်။  021x ဆိုရင် Request ကို ပြန်လည်တုန့်ပြန်မှု (Response) လုပ်ပေးမှာဖြစ်ပါတယ်။  020x ကနေ 029x ထိရှိပါတယ်။

စတုတ္ထ Digit ကတော့ ဘယ်ကလာသည့် Message လည်းဆိုတာ ခွဲခြားတာ (Message Origin) ဖြစ်ပါတယ်။
ဥပမာ။ 0200 ဆိုရင် (ဘဏ် (သို့) ငွေကြေးအဖွဲ့အစည်း) Acquirer တစ်ခုဆီကလာတဲ့ အချက်အလက် ဖြစ်ပါတယ်။ 0200 ကနေ 0205 ထိရှိတယ်။
ဥပမာ။ MTI အပြည့်အစုံ 0200 ဆိုရင် ISO8583:1987 Version ဖြင့် Acquirer ဆီမှ Transaction တစ်ခုအတွက် ငွေကြေးနှင့်ပတ်သက်တဲ့ Request တစ်ခုလုပ်တယ်လို့ ပြောတာပဲဖြစ်ပါတယ်။

၂) Bitmaps = အချက်အလက် ပါဝင်မှုရှိ၊ မရှိစစ်ဆေးခြင်း
ISO8583 Message တစ်ခုမှာ ပါဝင်သည့် အချက်အလက် (Fields) တွေနှင့် အဲ့ဒီ Fields တွေထဲမှာ ထပ်မံပါရှိသည့် အချက်အလက်အခွဲ (Sub Fields) တွေမှာ Data ပါဝင်မှုရှိ၊ မရှိ စစ်ဆေးသည့်အပိုင်း ဖြစ်ပါတယ်။  Message တစ်ခုမှာ အနည်းဆုံး Bitmap တစ်ခုပါဝင်ပါတယ်။  Bitmaps ကို Hexadecimal အနေနှင့် ဖေါ်ပြလေ့ရှိပါတယ်။  ဥပမာ။  Hexadecimal 16 Digits ရှိတဲ့ Bitmap တစ်ခုဆိုပါဆို့ ...
E420002205809000 
ဒီ Bitmap ကို Binary အနေနှင့် ပြောင်းလိုက်မယ်ဆိုရင်...
1110010000100000000000000010001000000101100000001001000000000000
အခုလို 64 Digits ရှိတဲ့ Binary ကိန်းဂဏန်းတစ်ခု ရပါတယ်။ အဲ့ဒီ Binary Digits တွေက Bitmaps တွေရဲ့ နောက်မှာရှိတဲ့ အပိုင်း(၃) ဖြစ်တဲ့ Data Element (DE) ၆၄နေရာမှာ အချက်အလက်တွေ ပါဝင်မှုရှိ၊ မရှိကို စစ်ဆေးပေးမှာဖြစ်ပါတယ်။  0 ဆိုရင် Data Element (DE) တစ်ခုမှာ Data မရှိဘူး၊ 1 ဆိုရင်  Data Element (DE) တစ်ခုမှာ Data ရှိတယ်၊ စသည်ဖြင့် ၁ ကနေ ၆၄ထိရှိတဲ့ DE တွေကို စစ်ဆေးတာဖြစ်ပါတယ်။  အကယ်၍ Data Element (DE) က 64 Digits ထက်ပိုခဲ့မယ်ဆိုရင်...၊ နောက်ထပ် နေရာ 65 ကနေ 128 ထိရှိတဲ့ Data Element (DE) တွေကို စစ်ဆေးပေးနိုင်မယ့် ဒုတိယ Bitmap တစ်ခု ထပ်မံပါဝင်လာမှာ ဖြစ်ပါတယ်။  Data Element (DE) က 192 Digits ထိရှိနိုင်ပါတယ်။ 64 Digits ရှိတဲ့ Bitmaps တစ်ခုမှာ ပထမဆုံး Digit ကိုကြည့်ခြင်းအားဖြင့် နောက်ထပ် Bitmap တွေထပ်ရှိနိုင်လား၊ မရှိနိုင်ဘူးလားဆိုတာ သိနိုင်ပါတယ်။  ဥပမာပြထားတဲ့ 64 Digits Binary ကိန်းဂဏန်းမှာဆိုရင် 64 Digits ရဲ့ ပထမဆုံး Digit က (1) ဖြစ်တဲ့အတွက် ဒုတိယ Bitmap ရှိပါတယ်။  ဒါဆိုရင် ဒုတိယ Bitmaps တစ်ခုထည့်လိုက်ရင် အောက်ပါအတိုင်း ဖြစ်သွားပါလိမ့်တယ်။
E4200022058090008000000000000001
Binary ပြောင်းလိုက်ရင် အောက်ပါအတိုင်း Bitmaps ၂ခုရပါလိမ့်မယ်။
11100100001000000000000000100010000001011000000010010000000000001000000000000000000000000000000000000000000000000000000000000000

အနီရောင်က 1st Bitmap ဖြစ်ပြီး အစိမ်းရောင်က 2nd Bitmap ဖြစ်ပါတယ်။  1st Bitmap ကို Primary Bitmap လို့လည်း ခေါ်ပါတယ်။

၃) Data Element (DE) = အဓိက အချက်အလက်များ
Data Element ဆိုတာ ISO8583 Message တစ်ခုမှ Transaction လုပ်မည့် အချက်အလက်တွေဖြစ်သည့် (Amount, Account Number, Expired Date, Transaction Date, etc.,) စတာတွေကို ပြောတာဖြစ်ပါတယ်။ Field လို့လည်းခေါ်နိုင်ပါတယ်။  ISO8583:1987 Version မှာ Data Element (DE) 128 အထိသတ်မှတ်နိုင်ပါတယ်။ Data Element တွေမှာ Data ပုံစံ (Format)၊ အရွယ်အစား (Length) စသည့် သတ်မှတ်ချက်တွေရှိပါတယ်။  အောက်မှာပြထားတဲ့ Table က Wiki မှ Data Element အပြည့်အစုံကို ထုတ်နှုတ်ထားတာဖြစ်ပါတယ်။
Data FieldTypeUsage
1b 64Bit map (b 128 if secondary is present and b 192 if tertiary is present)
2n ..19Primary account number (PAN)
3n 6Processing code
4n 12Amount, transaction
5n 12Amount, settlement
6n 12Amount, cardholder billing
7n 10Transmission date & time
8n 8Amount, cardholder billing fee
9n 8Conversion rate, settlement
10n 8Conversion rate, cardholder billing
11n 6System trace audit number (STAN)
12n 6Time, local transaction (hhmmss)
13n 4Date, local transaction (MMDD)
14n 4Date, expiration
15n 4Date, settlement
16n 4Date, conversion
17n 4Date, capture
18n 4Merchant type
19n 3Acquiring institution country code
20n 3PAN extended, country code
21n 3Forwarding institution. country code
22n 3Point of service entry mode
23n 3Application PAN sequence number
24n 3Function code (ISO 8583:1993)/Network International identifier (NII)
25n 2Point of service condition code
26n 2Point of service capture code
27n 1Authorizing identification response length
28x+n 8Amount, transaction fee
29x+n 8Amount, settlement fee
30x+n 8Amount, transaction processing fee
31x+n 8Amount, settlement processing fee
32n ..11Acquiring institution identification code
33n ..11Forwarding institution identification code
34ns ..28Primary account number, extended
35z ..37Track 2 data
36n ...104Track 3 data
37an 12Retrieval reference number
38an 6Authorization identification response
39an 2Response code
40an 3Service restriction code
41ans 8Card acceptor terminal identification
42ans 15Card acceptor identification code
43ans 40Card acceptor name/location (1-23 address 24-36 city 37-38 state 39-40 country)
44an ..25Additional response data
45an ..76Track 1 data
46an ...999Additional data - ISO
47an ...999Additional data - national
48an ...999Additional data - private
49a or n 3Currency code, transaction
50a or n 3Currency code, settlement
51a or n 3Currency code, cardholder billing
52b 64Personal identification number data
53n 16Security related control information
54an ...120Additional amounts
55ans ...999ICC Data - EMV having multiple tags
56ans ...999Reserved ISO
57ans ...999Reserved national
58ans ...999Reserved national
59ans ...999Reserved national
60ans ...999Reserved national
61ans ...999Reserved private
62ans ...999Reserved private
63ans ...999Reserved private
64b 16Message authentication code (MAC)
65b 1Bitmap, extended
66n 1Settlement code
67n 2Extended payment code
68n 3Receiving institution country code
69n 3Settlement institution country code
70n 3Network management information code
71n 4Message number
72n 4Message number, last
73n 6Date, action (YYMMDD)
74n 10Credits, number
75n 10Credits, reversal number
76n 10Debits, number
77n 10Debits, reversal number
78n 10Transfer number
79n 10Transfer, reversal number
80n 10Inquiries number
81n 10Authorizations, number
82n 12Credits, processing fee amount
83n 12Credits, transaction fee amount
84n 12Debits, processing fee amount
85n 12Debits, transaction fee amount
86n 16Credits, amount
87n 16Credits, reversal amount
88n 16Debits, amount
89n 16Debits, reversal amount
90n 42Original data elements
91an 1File update code
92an 2File security code
93an 5Response indicator
94an 7Service indicator
95an 42Replacement amounts
96b 64Message security code
97x+n 16Amount, net settlement
98ans 25Payee
99n ..11Settlement institution identification code
100n ..11Receiving institution identification code
101ans ..17File name
102ans ..28Account identification 1
103ans ..28Account identification 2
104ans ...100Transaction description
105ans ...999Reserved for ISO use
106ans ...999Reserved for ISO use
107ans ...999Reserved for ISO use
108ans ...999Reserved for ISO use
109ans ...999Reserved for ISO use
110ans ...999Reserved for ISO use
111ans ...999Reserved for ISO use
112ans ...999Reserved for national use
113ans ...999Reserved for national use
114ans ...999Reserved for national use
115ans ...999Reserved for national use
116ans ...999Reserved for national use
117ans ...999Reserved for national use
118ans ...999Reserved for national use
119ans ...999Reserved for national use
120ans ...999Reserved for private use
121ans ...999Reserved for private use
122ans ...999Reserved for private use
123ans ...999Reserved for private use
124ans ...999Reserved for private use
125ans ...999Reserved for private use
126ans ...999Reserved for private use
127ans ...999Reserved for private use
128b 64Message authentication code
အဲ့ဒီမှာ ပြထားတဲ့ Type ဆိုတာ DE အမျိုးအစားနှင့်အရွယ်အစားကို ပြောတာဖြစ်ပါတယ်။  ဥပမာ ဆိုရင်...
n 12 ဆိုရင် numeric ကိန်း၁၂လုံးထိ သတ်မှတ်ရမယ်လို့ပြောတာ ဖြစ်ပါတယ်။
an 2 ဆိုရင် alphanumeric ကိန်း၂လုံးထိ သတ်မှတ်ရမယ်လို့ပြောတာ ဖြစ်ပါတယ်။
n..11 ဆိုရင် numeric ၁၁လုံးထိ အများဆုံး သတ်မှတ်နိုင်ပြီး ၄င်းရှေ့မှာ DE အရွယ်အစား (Length) (00 မှ 99 ထိ) ၂နေရာစာ သတ်မှတ်ပေးရမယ်လို့ ပြောတာဖြစ်ပါတယ်။ ဥပမာ 0512345 ဆိုပါစို့၊ ရှေ့က 05 က အလုံးအရေအတွက်ဖြစ်ပြီး နောက်က အဲ့ဒီအရေအတွက်အတိုင်းပါဝင်တဲ့ Data ဖြစ်ပါတယ်။ (..) ဆိုတာရှေ့မှာ ၂နေရာစာကို Data ရဲ့ အရွယ်အစား (Length) အဖြစ် သတ်မှတ်ပေးရမယ်လို့ ပြောတာဖြစ်ပါတယ်။ (...) ဆိုရင် Length ၃နေရာစာ (000-999) သတ်မှတ်ပေးရမယ်လို့ပြောတာဖြစ်ပါတယ်။ အဲ့ဒီ Data Type တွေကို အခုလိုလည်း ဖေါ်ပြနိုင်ပါတယ်။
.x = LVAR 
..xx = LLVAR
...xx = LLLVAR

အဲ့ဒီ Data Type အပြည့်အစုံကို Wiki ရဲ့ Data Type မှာ ကြည့်လို့ရပါတယ်။
ISO8583 Message နမူနာပုံစံ...
0200E4200022058090008000000000000001161234567890123456001000000000010000123456100000008A000066ABCABC00008401000000010100000000000000000000000001100000010011001000000000000

အပြာရောင်က MTI
အနီရောင်က Bitmaps
ခရမ်းရောင်က Data Element (DE)
(မှတ်ချက်။ ဒီ Message နမူနာကိုအလွယ်တကူ နားလည်သဘောပေါက်အောင် ဖန်တီးထားတာဖြစ်ပါတယ်။ တကယ့် Message မှာတော့ အချက်အလက်တွေပိုမိုပါဝင်နိုင်သလို Message Encoding ပုံစံလည်း ကွဲပြားခြားနားနိုင်ပါတယ်။)

ISO8583 Message တွေကို တစ်နေရာမှ တစ်နေရာသို့ ဘယ်လိုပို့ကြလည်း။
ISO8583 Message တွေကို Computer Network တွေမှတဆင့် Internet ကိုအသုံးပြုပြီး တစ်နေရာမှ၊ အခြားတစ်နေရာသို့ ပေးပို့ကြပါတယ်။ Computer Network ထဲမှာရှိတဲ့ Server နှင့် Client ကွန်ပြူတာတွေမှာ IP နှင့် Port ဆိုတာရှိပါတယ်။  ကွန်ပြူတာတစ်လုံး၏ IP နှင့် Port မှတဆင့် အခြားကွန်ပြူတာတစ်လုံး၏ IP နှင့် Port ဆီကို Socket Connection အသုံးပြုပြီး အပြန်အလှန် (Request/Response) ပေးပို့ကြပါတယ်။  Internet ကိုအသုံးပြုပြီး အချက်အလက်တွေပို့တာဖြစ်သည့်အတွက် တခါတရံမှာ Internet Connection နှေးကွေးသဖြင့် Request လုပ်လိုက်ပေမယ့်လည်း Response မရတာမျိုးလည်း ဖြစ်တတ်ပါတယ်။  အဲ့လိုအခြေအနေမျိုးဖြစ်ခဲ့လျှင် သက်ဆိုင်ရာ Computer စနစ်တွေက အရင်လုပ်ခဲ့တဲ့ Request ကို Cancel လုပ်သည့် Request (Reversal Request) ကိုအလိုလျှောက် လုပ်ဆောင်ပေးနိုင်ပါတယ်။

ISO8583 ကို Card Payment နှင့်ပတ်သက်သည့် အဖွဲ့အစည်း တော်တော်များများ လိုက်နာအသုံးပြုကြပါတယ်။  ဒီ Standard ကို လိုက်နာအသုံးမပြုသည့် အဖွဲ့အစည်းများလည်း ရှိနိုင်ပါတယ်။  အောက်ဖေါ်ပြပါ အဖွဲ့အစည်းတွေကတော့ ISO8583 စံသတ်မှတ်ချက်နှင့် ကိုက်ညီအောင် လိုက်နာအသုံးပြုသည့် အဖွဲ့အစည်းတွေပဲ ဖြစ်ပါတယ်။


အခြား အဖွဲ့အစည်းတွေလည်း အများကြီးရှိနိုင်သေးပါတယ်။

ISO8583 ကို Card Payment Transaction လုပ်တဲ့နေရာမှာပဲ အသုံးပြုတာလား။
ယခုလက်ရှိအချိန်မှာတော့ Card Payment Transaction တင်မဟုတ်တော့ပါဘူး။  Mobile Payment တွေဖြစ်တဲ့ Apple Pay, Android Pay စသည့် Payment Transaction တွေမှာလည်း အသုံးပြုပါတယ်။

ကိုစစ်ကိုင်း၏ မှတ်စုများ. Powered by Blogger.