POS simulator format SPDH HPDH Verifone and custom

Posted on 14th Feb 2022 6134 views

Terminal Interface For POS transactions

POS simulation is necessary even when you have a real POS device to test with. POS simulation allows you to use many cards, even those you cannot issue, to run regressions and Load Tests.

 

The SPDH (Standard POS Device Handler) message format is not exactly ISO 8583-like, but it shares some similarities. Let me break it down for you:

  1. ISO 8583:

    • Definition: ISO 8583 is an international standard for financial transaction card originated interchange messaging.
    • Purpose: It defines a message format and communication flow so that different systems can exchange transaction requests and responses.
    • Usage: Most card-based transactions (such as payments in stores or ATMs) use ISO 8583 at some point in the communication chain.
    • Fields: ISO 8583 defines standard fields (data elements) that remain consistent across systems, with additional fields for network-specific details.
    • Examples: Mastercard, Visa, and Verve networks base their authorization communications on ISO 8583.
  2. SPDH:

    • Definition: SPDH is used in point-of-sale (POS) systems for handling card-based transactions.
    • Message Format: SPDH messages are not strictly ISO 8583-like. They use specific field separators to delimit data elements.
    • Parser: SPDH messages are parsed within specific environments (like iso8583.info) with top-level descriptions.
    • Market-Specific Subfields: Some market-specific subfields are not fully defined in SPDH messages.
    • Use Cases: SPDH supports transfers for airlines, lodging, auto rental, healthcare, and mobile services.

 

SPDH Standard Header Description

SPDH Header Position: 1-2; Name: Device Type; Format: ascii(2); Contents: “9.”

SPDH Header Position: 3-4 ; Name: Transmission Number; Format: numeric(2); Contents: “00” (If message subtype = 'S'), “01” –“99”(otherwise)

SPDH Header Position: 5-20 ; Name: Terminal ID; Format: ascii(16); Contents:  Unique terminal ID
 
SPDH Header Position: 21-26 ; Name: SPDH Version Number; Format: ascii(6); Contents:  Version Number
 
SPDH Header Position: 27-32 ; Name: Current Date; Format: numeric(6); Contents:  Senderdate YYMMDD
 
SPDH Header Position: 33-38 ; Name: Current time; Format: numeric(6); Contents: Sender time HHMMSS
 
SPDH Header Position: 39; Name: Message Type; Format: numeric(6); ascii(1)'F' (Financial)‘A’ (Administrative)
 
SPDH Header Position: 40; Name: Message Subtype; Format: ascii(1); Contents: 'O': online, for normal trans'S': Store & Forward. 'F': Forced
 
SPDH Header Position: 41-42; Name: Transaction Code; Format:numeric(2); Contents: A Code defining the message
 
SPDH Header Position: 43; Name: Processing Flag 1; Format: ascii(1); Contents: '0' or '1'
 
SPDH Header Position: 44; Name: Processing Flag 2; Format: ascii(1); Contents: '5'in request‘0’ in response
 
SPDH Header Position: 45; Name: Processing Flag 3; Format: ascii(1); Contents: '0'
 
SPDH Header Position: 46-48; Name: Response Code; Format: numeric(3); Contents: '000'in request ;A code in response.
 
 

SPDH FID List

In addition to the header, an SPDH message may contain additional fields called Fids
 
FID
NAME
USED
B
Amount 1
For all financial types
C
Amount 2
Only used for adjustment
D
Account Type
For all
financial types
F
Approval Code
For all financial types
G
MAC
For all types
P
Draft Capture Flag
For all financial types
Q
Echo Data
For all types
a
User Defined Data
For
all financial types and Close
Batch
b
PIN
-
block
Only if online PIN
d
Retailer ID
For all financial types
e
POS
Condition Code
For all financial types
f
PIN length
Only if online PIN
h
Sequence Number
For all financial types
i
Sequence Number
Original
Only adjustment
l
Totals Batch
Only if Draft Capture is used
q
Track2
For all financ
ial types
6B
Manual Card Verification
For all financial types
 
6E
Point Of Services Entry Mode
For all financial types
6F
Electronic Commerce Flag
For all financial types
6H
Card Verification Digits Presence
Indicator
And Result
For all financial types
6I
Transaction Currency Code
For all financial types
6L
XID/Trans Stain
Only in Visa electronic commerce
transactions using the 3D
-
Secure
method
6O
Smart Card Request Data
For all financial types
6P
Smart Card Additional Request
Data
For all financial types
6Q
Smart Card Response Data
For all financial types
6R
Smart Card Additional Response
Data
For all financial types
6T
Key Serial Number and
Descriptor
For all types
6V
Authentication Collection
Indicator
Only in electronic commerce
transactions using the 3D
-
Secure
method
6W
CAVV/AAV result Code
Only in electronic commerce
transactions using the 3D
-
Secure
method
6X
Point Of Service Data
Conditional
used if required by the
DPC. For all financial types
6Y
Authentication Data
Only in MasterCard electronic
commerce transactions using the
3D
-
Secure method
6e
Interchange Compliance Data
Only if interchange compliance
data was received in the
authorization
response to the DPC
9A
Authorizing
Entity
For all financial types
9C
POS Capability Code
For all financial types
9D
Retrieval Reference Number
For all financial types
9I
Merchant Category Code
For all financial types
9K
Credit Length Map
For all financial types
9L
Acquirer Information
For all financial types
9N
Update Information
For all financial types
9P
EMV Terminal Capability
Only if the terminal is EMV capable
9Q
Additional Terminal Capabilities
For all financial types
9R
Point of Service Indicator
For all financial types
9S
Merchant Name and Location
For all financial types
9o
Downlo
ad Indicator
For all types
99
Security Information
For all types
9q
Reserved for customer internal
use
9r
Reserved for customer internal
use
9s
Reserved for customer internal
use
9t
Reserved
for customer internal
use
9u
Reserved for customer internal
use
9v
Reserved for customer internal
use
9w
Reserved for customer internal
use
9x
Reserved for customer internal
use
9y
Reserved for customer internal
use
9z
Reserved for customer
internal
use
 
 


LinkedIn

Docs Home ISO8583 Simulator Simulator Tutorials ISO8583 Converter Cards Issuer BASE24 Base24-eps Reference Guide ISO8583 Switch HSM Simulator POS Simulator Products Switch


Top Read Articles


BIN List & Range for MasterCard, Visa, Amex, Diners, Discover, JCB, CUP 231529 views

ISO8583 Response Codes for Transaction processing 93228 views

Read smart card chip data with APDU commands ISO 7816 72009 views

ISO8583 Processing Codes for Transaction Processing 40916 views

ISO8583 Message Types for Transaction Processing 39934 views

MCC Codes - Merchant Category Codes to use in ISO8583 Field 18 28248 views

Deploy, run and generate with neaPay Card Data Generator 25486 views

Run the neaPay ISO8583 simulator 24115 views

ISO8583 message: The list of ISO 4217 currency codes for data elements 49 and 52 23203 views

ISO8583 payments message format, programmers guide 21802 views

ISO8583 ATM POS Crypto API integration with exchanges like Coinbase or Binance 18895 views

Java version for neapay products Simulator Converter Switch Authorization Cards Issuer 18135 views

Cards and Banks Training 18069 views

ISO8583 Message Converter JSON and XML interface specification mapping 17353 views

Log Files in BASE24 classic 12960 views

Support for the neaPay products: Authorization, Switch, Converter, Simulator, Issuer 12485 views

BASE24 classic vs BASE24-eps 11641 views

BASE24 documentation to read 11235 views

Create a new test case in the neaPay ISO8583 simulator Video guide 11059 views

EMV explained for programmers 10663 views

Deploy the neaPay ISO8583 simulator - video guide 10606 views

BASE24 classic interview questions 10566 views

ISO8583 converter to JSON XML SQL to HTTP host - message flow - video guide - Part.2 10421 views

ISO8583 Simulator neapay- Performance testing at 500, 1000 and 1500 Transactions per second 9743 views

Load Test enabling and performance testing at 1TPS and 100TPS 9544 views

ISO8583 converter to JSON XML SQL to HTTP Host - host unavailable - video guide- Part.3 9368 views

BASE24 classic screens examples explained 9353 views

ISO8583 converter to JSON XML SQL to HTTP host - start& run - video guide - Part.1 9140 views

Changing fields definitions in the ISO8583 simulator and message converter 9030 views

Run the neaPay ISO8583 converter to JSON, XML, SQL, in a test environment 9015 views

Sample Recommended design for an Acquirer test cases suite, Scenarios and Regression 8987 views

Adding your own card to the Payments simulator to test your system 8932 views

BASE24-eps interview questions 8875 views

Deploy the neaPay HSM simulator in a test environment 8794 views

Connect the neaPay ISO8583 Acquirer simulator to your own host or Issuer 8761 views

Card readers supported by neaPay payments simulator, CHIP and NFC 8757 views

Run One, Run Scenario, Run All, Run Load in the neaPay ISO8583 Simulator - Use guide 8728 views

Trace configuration in neaPay Simulator, Converter, Switch, Authorization and Cards Issuer 8693 views

Enabling traces in the payments simulator 8686 views

How the fingerprint reader works in the ISO8583 payments simulator 8682 views

Regression Testing in 1 click with instant Analytics and CSV report 8679 views

ISO8583 Message Converter to XML SQL CSV interface specification mapping 8641 views

Altering test cases in Excel for the ISO8583 simulator 8638 views

Deploy the neaPay ISO8583 Payments converter in a test environment 8594 views

BASE24 classic cards configuration tutorial with Examples 8503 views

Add extra custom fields to the ISO8583 simulator 8234 views

BASE24 classic ATM configuration Tutorial in ATD and XPNET with examples 8185 views

Deploy the Payments Switch Router in a test environment 8161 views

PCI compliant with neapay switch 7906 views

BASE24-EPS ACI DESKTOP tutorial - Getting started 7718 views

POS simulator format SPDH HPDH Verifone and custom 6135 views

BASE24 classic prefix configuration tutorial CPF with examples 5728 views

Swift Message Structure ISO 15022 and ISO 20022 5584 views

BASE24 classic tracing of transactions. Audits, configuration, enabling and opening 5477 views

BASE24 classic Institution configuration Tutorial with example 5159 views

SWIFT Common Message Type List with examples 4992 views

SWIFT Message types complete list reference 4978 views

ACI BASE24 classic automatic extract configuration 4951 views

BASE24 classic balance file configuration PBF with example 4558 views

First steps with BASE24 Classic 4349 views

Getting started with using Prognosis for BASE24 and BASE24-eps 4298 views

ISO8583 Card Transaction BIN Prefix Router with neapay Switch 3579 views

ISO8583 Load Balancer with neapay Switch Router 3577 views

ISO8583 simulator scheduling tasks and test regressions 3576 views

POS Transaction types explained 2614 views

ISO8583 simulator Visa MasterCard Amex CUP configuration demo video 2580 views

Recent Articles on Iso8583


Choose the product you need

Converter ISO8583 JSON

Convert ISO8583 to JSON XML SQL

ISO8583 Card Interface

ISO8583 Interface Handler

ISO20022 Converter

Convert ISO20022 to ISO8583 ...

ISO8583 Builder Parser

Build and parse ISO8583 messages

Card Switch Router

ISO8583 Switch Router Bin Amount

Card Payments Authorization

Authorize cards and ledger

POS Payments Acquirer

Acquiring Aggregating host from devices

Cards Issuing Host

Aggregate filter convert IoT payments

ISO8583 Simulator

ISO8583 HISO98 HISO87 simulator

ISO20022 Simulator

ISO20022 & SWIFT simulator

POS Simulator

POS protocols simulator

Web Api Simulator

Web API tester Performance

EMV QR Connector

EMV QR Code Interface Connector

IoT Connector

IoT Payments Acquiring Connector & Router

Alerts Notifications

Detect Anomalies, Alerts & Notifications

Clearing & Settlement

Generate Convert Import

 
Contact us

Get a free quote, Ask for details
Get help

Download software

Try the software yourself
Download & Run

Documentation

Read Documentation and Start guides

Online Tools

Online Tools Overview