DOL Options
What is a DOL?
DOL (Data Object List) are several parts of data that are typically exchanged in EMV Card Payments. Within PSP and in the Start Session or Read Card command, controllers can opt in to multiple DOL's to be returned if they are valid and exist in the response. This can provide additional context, as well as provide useful data for things such as receipts. Each DOL that can possibly be returned is listed below.
DOL's are encoded as BER-TLV's, (Basic Encoding Rules - Tag Length Value) and PSP identifies each DOL by its Tag as shown below.
DOL List
If a DOL is marked as Default, it will be returned in the stated Command Response if no DOL's have been requested in Start Session or Read Card, or if "Authorization DOL" or "Declined DOL" are enabled in the Protocol command.
| Tag | Explanation | Encoding | Stage/Scenario | Return as Default DOL in |
|---|---|---|---|---|
DFAA01 | Acquirer data | csv format | Auth, APOLLO only | - |
DFAA02 | Gateway data | csv format | Auth, APOLLO only | - |
DFAA6C | Encrypted card data | Byte array | Card/Auth, APOLLO only | - |
DFAA6D | Encrypted card used KSN | Byte array | Card/Auth, APOLLO only | - |
DFAA6E | Encrypted card used IV | Byte array | Card/Auth, APOLLO only | - |
DFAA6F | Encrypted card MAC | Byte array | Card/Auth, APOLLO only | - |
DFAA70 | Payter card hash, extended | Byte array | Card/Auth, APOLLO only | - |
DFCA02 | Host response code | UTF-8 | Auth | - |
DFCA03 | Transaction reference from host | Byte array | Auth | Session ApprovedSession Partially ApprovedDeclined Authorization |
DFCA07 | Brand id for acquirer matching | Byte array | Card/Auth | - |
DFCA08 | Acquirer ID | Byte array | Auth | - |
DFCA09 | Item Reference for a transaction | Byte array | Card/Auth | Session ApprovedSession Partially ApprovedDeclined Authorized |
DFCA0A | Brand name | UTF-8 | Auth | - |
DFCA0B | Payter masked PAN | UTF-8 | Card/Auth | Card ReadSession ApprovedSession Partially ApprovedDeclined Authorization |
DFCA0C | Authorization code | Byte array | Auth | - |
DFCA0D | Authorization entity | UTF-8 | Auth | - |
DFCA0E | Transaction timestamp | Numeric | Card/Auth | - |
DFCA0F | Expiry date | Byte array (0xYYMMDD or 0xYYMM) | Card/Auth | - |
DFCA1B | Card UID | Byte array | Card/Auth | Prop Card ReadCard ReadDeclined Authorized |
DFCA1C | Payter transaction ID | Byte array | Card/Auth | - |
DFCA4E | PSE or PPSE | Byte array | Card/Auth | - |
DFCA5C | Proprietary card token | Byte array | Card/Auth | - |
DFF002 | Card reference | Byte array | Auth | Session ApprovedSession Partially Approved |
DFF003 | Card hash from host | Byte array | Auth | Session ApprovedSession Partially Approved |
DFF006 | Payter card hash | Byte array | Card/Auth | Card ReadSession ApprovedSession Partially Approved |
DFF007 | Masked PAN from host | UTF-8 | Auth | - |
DFF00E | Error message | UTF-8 | Card/Auth | - |
DFF00F | Transaction record state | UTF-8 | Auth | - |
DFF010 | Transaction result (text) | UTF-8 | Auth | - |
DOL's will only be returned when present. DOL's can also be lengthy, so consider carefully whether you need any non default DOL data.