Developer Docs

Developer Docs

  • Overview
  • SDK
  • SoftPOS API
  • APOLLO API
  • Release Note
  • Languages iconEnglish
    • 繁體中文

›Recent Posts

Recent Posts

  • Release Note 2021-12-09
  • Release Note 2021-12-03
  • Release Note 2021-11-25
  • Release Note 2021-11-22
  • Release Note 2021-11-11

Release Note 2020-02-17

February 17, 2020

@MPS team

Major changes

  • Merging DBS, GPAP, DCC and other branches into development
  • Modified payment flow and structure to support for certain Amex, DBS, & GPAP and DCC functions
  • Added tip and pay in sale app
  • Update Marketplace to support customized repository (store) created at MARS
  • Update all APIs to use v2 with signing
  • Added direct Swiftpass WeChat Pay & Alipay support in payment app
  • Added several default configs for CHB, DBS, GPAP, Amex and hostsim
  • Adjusted receipt font
  • Several bug fixes

configmanager (ver_1.3.9_code_23)

  • Update Swiftpass hostconfig name and id
  • Update DBS supported entry mode
  • Enable tip and pay in AMEX ATS config
  • Change default AMEX ATS config to allow tip adjust even no sign
  • Update receipt request
  • Fix api key cleared after load default config
  • Add back AMEX ATS MID/TID for GEDC
  • Add Swiftpass QR
  • Update AMEX default config for ATS
  • Change hostsim AMEX url to use our aws host
  • Add spapputil lib
  • Update DBS JCB default profile mid and TID
  • Add support JCB in default DBS config
  • Update NII for DBS-PP default profile
  • Move strings to lib; Update reference
  • GP CUP update message format and TID
  • Update AMEX supported entry mode
  • Update default config of CHB & DBS
  • Change CHB default config CTL floorlimit to 0 for CUP
  • Change default AMEX config NII
  • Add AMEX default config
  • Change default config for DBS-PP
  • Update SDK to version 3.1 snapshot
  • AEIPS XP DRL setup. SDK version must at least 3.1 or above
  • Move SpectraSignInterceptor into payment lib
  • Save api key from maintenance
  • Add GP acq profile

maintenance (ver_1.0.15_code_14)

  • Update receipt request & printer test sample
  • Update set environment method
  • Fix QR code scanner camera freeze
  • Update base log url & log api version
  • Add spapputil lib
  • Add base url for device log & acra
  • Update permission checking
  • Remove sign interceptor for activation
  • Move SpectraSgnInterceptor into payment lib
  • Pass api key to config manager when activation

marketplace (ver_1.0.7_code_1005008)

  • Update repo detail labels and password dialog
  • Download path update: add hash credential to query
  • Remove unused dependence; extract password Dialog to a method
  • Handle if Server disable the installed Repo
  • Add password protect to market place
  • Migrate android support library to androidx
  • Add Credential to download/ update apk
  • Implement Add Repositories By Scan QR Code
  • Remove default repos
  • Get index.json by url

paymentapp (ver_1.3.6_code_20)

  • Handle field 60
  • Avoid logging not important message to server
  • Use payment log instead of print stack trace for security reason
  • admin setting now password protected and UPI sensitive function will check adminMode
  • Add mechanism to reject txn if settlement in progress. Also user can clear flag through admin setting
  • Should not modify adjustable flag after upload pending advise type transaction
  • Whether allow tip adjust when no sign depends on acq profile config
  • AMEX: fix de25 for offline sale
  • Fix settlement bitmap not initialized
  • Update success response currency from request data
  • AMEX: Use correct updated trace when do batch upload
  • Handle close api
  • Add admin function of upload pending offline transaction
  • Update dcc setting fragment
  • AMEX: Use new field lastUpdateTrace. Also disable DE54 if tip amount is zero
  • Update emv tags for JCB purchase
  • Update entry mode for JCB fallback
  • AMEX: Handle tip amount when do tip adjustment
  • Update receipt request
  • AMEX: Use void txn trace and time for batch upload
  • AMEX: batch upload include voided txn
  • basic gw provide open function to control whether batch upload will include voided txn
  • AMEX Batch upload use zero amount for voided txn it. This can deal with GW that have different time zone issue"
  • Fix tran result not displayed if octopus framework not installed
  • Fix lock task after payment end caused by delay
  • AMEX: Convert from UTC back to local time when parse reply from host
  • 8583 gateway setup date time in response object now factorize into open function and subclass can override it. This can deal with GW that have different time zone issue
  • AMEX: Code cleanup
  • AMEX: Fixed batch upload 8583 error in processing code, pos entry mode and pos cond code.
  • Handle settlement offline and tip msg upload result must approve
  • Fixed offline transaction acq ID null and hence settlement wrong. The problem is caused by gateway being reset by DCC decision changed and hence we need to setup again gateway during checkTransactionOnline
  • Handle void retry interceptor
  • startEMV now need to pass transactionType as well and kernel will use it to output tag 9C
  • void retry
  • Batch upload use lastUpdateTime when exist and fallback to createTime when it's null
  • Update refund and void response
  • AMEX Batch upload also use org trace in de62
  • AMEX refund run in half emv mode first until we clarify correct config
  • AMEX refund run in full emv mode
  • Whether run rxn in half emv mode should be a gateway's decision. Move this function to basicGateway and allow subclass to override
  • AMEX: Disable txn data and time in void message
  • AMEX: Fixed DE62 private field in void message need to use org trace
  • AMEX: Remove DE38 in all cancel message
  • Adjust admin layout
  • Update SDK and support request amount send TLV during DCC flow
  • Update DCC statistic when payment completed. This info is mainly for PP settlement use
  • Add octopus tip
  • DBS CUP Reversal
  • fixed chip card dcc flow not save dcc obj in result issue
  • void transaction
  • DBS CUP Auth-com, Auth-void
  • wechat scan QR code
  • Fix problems found in AMEX ATS QR test
  • Adjust layout
  • Implement DBS CUP settlement, sale adjust, batch up load
  • best practice: Add markup text in PSC dialog if VISA
  • Fixed PDS length field and should use BCD format. Now can use download PYC table instead of local bin table
  • Handle DCC void as it will solely depends on org transaction data to decide use dcc or not
  • Fixed CTL cannot do txn as amount must be provided. In this case SDK need to change the way such that under ICC request amount must be called even amount already provided during startEmv
  • Fixed DCC manual pan entry cannot do rate lookup problem
  • Fixed switch to manual pan fragment crash because of timer setText. Now move countdown timer to paymentActivity
  • impl DBS CUP VIOD 8583 msg
  • present QR code and query
  • Save markup rate text and rate text in dcc object
  • Update tranResult object when doing DCC. Result Activity will show dcc amount in temporary way and should further fine tune
  • Support DCC settlement
  • Implement DCC refund flow. It's slightly different with purchase such that User have to choose whether to use DCC beforehand
  • Support other tran type like refund and void in msg level
  • Implement PP response code table
  • AdvanceSettingPasswordDialog use new spapputil library ref
  • Update settlement & batch upload fields
  • Implement check local bin table by using storage data
  • Add support of local bin table download
  • Change flow to handle DCC in ICC case such that the correct amount and currency can be send to SDK during amount request callback. However right now SDK not support provide PAN and T2Data in this callback so hardcode those values first
  • Update transaction count down timer
  • Use proper text when sending reversal request
  • Rate lookup use proper UI
  • Remove emv timer
  • Allow passing optional string when call commInProgressUpdateUI
  • Change dcc flow to make use of event for decision made
  • Update visa 8583 msg
  • Update ReversalRefundCancel fields
  • DCC Chip card support
  • Support MSR transaction in PP
  • Remove track 1 status checking of bad swipe
  • Update reversal purchase bitmap
  • DCC support rate lookup call
  • Update entry mode logic
  • Pad field 61 for batch upload only
  • Update enter manual key in password flow
  • Update batch upload emv tags
  • Update entry code for offline sale
  • Pad field 62 length
  • Handle offline transaction trace number
  • Fix typo; update strings
  • Update SDK snapshot version 3.1-ss that use EMV_PINTIMEOUT or default 60 seconds in offline pin
  • Fix AE batch upload message
  • Update reversal fields
  • Update field 62 of ReversalPurchaseCancel
  • Remove field 56 for settlement
  • Update 9F41 field get current trace number
  • reslove conflicts
  • Show error if response code is not approved / batch upload for settlement
  • Fix trace number not added before settlement if there is 220 request
  • fix second settlement trace number
  • Handle settlement fail
  • Handle visa field 63 sale and void
  • Add GP key injection
  • fix back crash issue
  • Add payment timer
  • MPS-39 disable activity animation
  • Update manual entry amount
  • CUP Pre-auth 8583 request
  • Fix DE25, DE44, DE55 in AMEX
  • Update SDK snapshot version 3.1 that fix offline pin input timeout hang problem
  • Fixed CPQR 026 and 027
  • Fixed CPQR 016 and 018
  • Fix setup gateway with incorrect payment method Abort transaction in case tlv data is null
  • cup sale, refund 8583 request
  • Fixed AMEX CPQR 013 test case
  • Fixed AMEX R CPQR 011 test case
  • Fixed AMEX QR CPQR 010 test case
  • Add password protection for manual key in
  • Rewrite part of QR scan code logic. Problem is when scan an invalid QR code during SALE it will cause paymentApp processing forever until WDT
  • Add AMEX QR support
  • AMEX: Fixed parse DE55
  • Update AE phrase DE55
  • Update tip adjust and offline msg
  • AMEX support HTTP channel if URL protocol start with it
  • AMEX: Fixed parse DE55 construct online reply format problem
  • Fix AMEX GW: when construct onlineReply throw exception don't send null string. This potentially make the txn offline approve even server reply de39 is not 00
  • Finished first feature pyc table download
  • Update refund batch upload msg and settlement msg
  • Update SDK to 3.1 snapshot and fix AMEX L3 DRL test case
  • Support rate report download 8583
  • Update entry mode checking
  • Move entry mode checking out of getBitmap
  • Add checking length in CVN dialog
  • Update DBS fields for different message type
  • Fix AMEX CVN type
  • Update DSB CUP sale request
  • Set 123field bitmap
  • Update DBS CTL field 55
  • Add settlement currency
  • Update batch upload msg
  • Remove obsolete function handleEMVCardVerificationNumber and checkTransactionOnline function in EMVFragment as it's move to basicFragment already. Also fixed the bug that only AMEX need ask CVN
  • Remove getTagData in AMEX
  • Add CVN in manual sale
  • Add string
  • Move SpectraSgnInterceptor & ByteArray extension function into payment lib
  • Fix compile error
  • Add display text when CTL card read ok as it's AEIPS cert req
  • Update part of DBS message fields & emv tags in field 55
  • Isolate HTTP error into seperate commError type such that display transaction result page can use more precise error text
  • Update spgw v2 sign method for both put and get
  • CVN no need to show in Auth with chip type
  • Update refund reversal msg
  • Allow modify batch number in admin setting
  • Add dcc setting fragment
  • Add dummy planetpayment gw
  • Set GP pay and tip msg
  • Set tip amount
  • Remove string
  • Update GP reversal message
  • Add refund void reversal message
  • Fixed entry mode of MSR for GP use 90 instead of 02. Additional data also define enum instead of hardcode

paymentlib (ver_1.3.13_code_26)

  • Update dto version
  • Add offline adjusted image and add advice transaction path
  • Add last update trantype
  • Add allowTipAdjustWithoutSign in acquireProfile config
  • Typo in last commit
  • Add extra string key to control settlement req upload transaction only
  • Adjust string template
  • Add lastUpdateTrace in result object BIN table
  • fix percentage string
  • Add terminal response code for reject operation as settlement in progress
  • Add function to get key of api key
  • Add request data tip amount
  • Add string
  • Change entry mode abbreviation
  • Update logic to get acra & device log url
  • Add device util to get rom is under production / debug mode
  • Update acra url
  • Change dcc rate from bigdecimal to string
  • Add markup rate text in dcc object
  • Add PP host response code
  • Move AdvanceSettingPasswordDialog to spapputil lib
  • Add DCC network mgt enum
  • Update QRcode acquirer format name
  • Add CHB QR format
  • Add log url for device log & acra
  • Use S/N instead of android id for logging
  • Update strings; update translations; fix typo
  • Change getAcquirerByPaymentMethodAndBin logic. If input not specify or host not exist dcc flag default is not use
  • Add GP CUP message format enum
  • Set password option for manual key in
  • Add new terminal response contaCTLess not permitted as SDK changed
  • Add isDccAllow check in getAcquirerByPaymentMethodAndBin if this argument is non-null
  • Add SenderDialog enum and card verification number
  • Add DCC network management action enum
  • Update device log endpoint
  • Add SpectraSgnInterceptor & ByteArray extension function
  • Add string for CTL card read ok
  • Update v2 sign calculate method
  • Set api key in local config
  • Get api key from NetworkConfigHelper
  • Add ENUMs /strings for EPS enquiry
  • Add DCC an option when call helper function in getAcquirerByPaymentMethodAndBin and isOperationAllowed

quicklaunch (ver_1.0.10_code_11)

  • fix version typo
  • Add EPS Enquiry button

receipt (ver_1.2.16_code_19)

  • Update html template
  • Update printDataType to receiptRequest.receiptType
  • Update template style
  • Remove unused font asset; post delay for rendering html and screenshot to avoid blank screen
  • AMEX CPQR receipt
  • Edit print string; Adjust styles; Edit EPS template
  • Move SpectraSignInterceptor into payment lib
  • Adjust style
  • Print base/ tip in void receipt
  • Adjust card & report builder
  • Change report using builder template
  • Update html builder
  • Refactor using html builder
  • Add EPS Template

sale (ver_1.2.15_code_18)

  • Handle custom tip amount input
  • Update variable totalAmount to tipAmount
  • Update receipt request
  • Check config and transactionType before switch to tipFragment
  • Adjust tip and pay layout
  • Handle cancel back to keypad
  • Add pay with tip api
  • Add AMEX icon in QR; change server problem icon
  • Add QR code scanning for auth with cup input
  • Move string to lib
  • Update new fragment tip

settlement (ver_1.0.8_code_9)

  • Remove admin mode
  • Avoid reload fragment if re-select bottom navigation item
  • Update receipt request
  • Set activity to adjust pan
  • Add delete batch in admin mode
  • Update string
  • Update for EPS Settlement

support (ver_1.0.11_code_12)

  • Move SpectraSignInterceptor into payment lib

tmsclient (ver_1.1.13_code_16)

  • Add receipt type

transactions (ver_1.1.16_code_16)

  • Update Swiftpass get status api
  • Update get mid from app config
  • Add Swiftpass query
  • Refresh details page when on resume
  • Update db version
  • Update receipt request
  • Batch upload sql filter list do not filter VOIDED txn. Let paymentApp do the filtering instead
  • Get offline transaction without approve status
  • Get offline transaction without void type
  • Move SpectraSignInterceptor into payment lib
  • Update id to name
  • Add back port number used for debug db
  • Avoid logging not important message to server
  • Replace hardcode strings
  • Update api request url
  • Fix date range picker incorrect time
  • Update logic to get host
  • Add function to delete transaction record by acquireId in content provider
  • Update logic to check spectra host
  • Add sign interceptor
  • Update QR code refund status
  • Update direct mode dont upload data to mars, update sql
  • Fix missing transaction in listing after refresh
  • Fix lint check warning / error
  • Ignore spelling checking
  • Remove not use code
  • Code inspection
  • Update total transaction calculation
  • Remove settlement util pref file code
  • Set get settlement data by db
  • Not allow to adjust tip / void / refund for voided / refunded transaction
  • Show refund button in listing & details page
  • Adjust layout
  • Only update tran status from api if it is processing
  • Add button in details to get latest status of processing transaction
  • Add function to force reload tms config
  • Remove BatchDetailActivity in manifest
  • Don't print auth for details report
  • Hide total refund in widget
  • Move string to lib for translation; update string
  • Remove redundant log
  • auth transaction dont add amount to settlement list
  • Save acquire name
  • Fix local config is not initialized when upload records to tms
  • Subtract total amount of refund & void transaction
  • Hide refund button
  • align layout with settlement
  • Update lib; update style
  • Update history list order by
  • if void update time to lastupdatetime field
  • Add status for report printing
  • Update settlement get offline list
  • Fix cannot upload transaction records to tms if failed records more than one
  • Fix missing payment logs in server
  • Close swipe layout after button click
  • Add refund button in transaction list
  • Remove get batch list auth transaction
  • Clear settlement preferences if no records in db
  • Update f-Droid description with next line
  • Force reload tms config in content provider
  • Fixed crash when print receipt clicked without receipt service installed
  • Add detail page refund button transaction

Recent Posts
  • Major changes
    • configmanager (ver_1.3.9_code_23)
    • maintenance (ver_1.0.15_code_14)
    • marketplace (ver_1.0.7_code_1005008)
    • paymentapp (ver_1.3.6_code_20)
    • paymentlib (ver_1.3.13_code_26)
    • quicklaunch (ver_1.0.10_code_11)
    • receipt (ver_1.2.16_code_19)
    • sale (ver_1.2.15_code_18)
    • settlement (ver_1.0.8_code_9)
    • support (ver_1.0.11_code_12)
    • tmsclient (ver_1.1.13_code_16)
    • transactions (ver_1.1.16_code_16)
Developer Docs
About
APOLLO ecosystemProducts and servicesHardware spec
Development
Development with APOLLOSDK overviewAPI overview
Support
Spectra TechnologiesContact us
Copyright © 2022 Spectra Technologies.
Site by Docusaurus