Changelog
This page records the update history of SUNBAY Developer Documentation, including new documentation, content updates, structural adjustments, and more.
2026-10-20
Promoted Android SDK v1.1.0 documentation to current
- Updated the dependency coordinate to
com.sunmi:sunbay-taplink-sdk-android:1.1.0. - Marked the v1.1.0 Version History entry as
(Current)and removed the(Current)marker from v1.0.10. - Added the paired Tapro version (v1.0.5) to the v1.1.0 entry as reference-only version pairing — not a minimum-version requirement — consistent with the note that Tapro app versions are not SDK versions and that
352is no longer synthesized from the Tapro app version. - Corrected the
TaplinkConfig.setTimeout(int)wording to reflect that it updates and returns the sameTaplinkConfiginstance.
2026-10-10
Prepared Android SDK v1.1.0 documentation (release pending)
- Added a pending v1.1.0 version-history entry and migration guidance for timeout units, Java configuration, LAN recovery, and terminal-information error handling.
- Updated the SDK error-code reference and
getTerminalInfo()example to explain that v1.1.0 no longer generates error352from the Tapro app version. - The installation coordinate and current-version marker remain on v1.0.10 until the maintainer confirms the published artifact version.
- Added explicit Tapro v1.0.5+ requirements beside
getTerminalInfo()and the CPad Pay Sub-Screen mode, so readers can check both SDK and terminal versions before integration.
2026-09-22
Android SDK connection and timeout behavior clarified
- Documented that
ConnectionConfig.autoReconnectcontrols internal LAN discovery fallback, background service monitoring, and reconnects after service changes, while explicitdiscoverLanServicesandautoDiscoverAndConnectcalls remain available when it is disabled. - Fixed automatic LAN recovery when the same terminal host restarts on a newly advertised port, and complete discovery immediately after the matching service resolves instead of waiting for the full 30-second window.
- Restricted mDNS discovery to non-connected states; successful LAN connection now stops discovery immediately.
- Clarified request timeout precedence and units: per-request
requestTimeoutuses milliseconds and takes priority;TaplinkConfig.timeoutremains in seconds with a 180-second default and is converted internally when used as the fallback. - Added the local-channel timeout lifecycle: App-to-App ignores callback timeout and never returns
306; LAN/Cable return306, cancel only while cancellable, and suppress late callback results. - Clarified that card-reading timeout is returned as a terminal
FAILEDtransaction result with the messageread card timeout.
2026-09-15
Taplink SDK for Android v1.0.10
- Updated the dependency coordinate and current-version reference to
com.sunmi:sunbay-taplink-sdk-android:1.0.10. - Added the v1.0.9 migration for the removal of automatic LAN/Cable and cable-protocol selection.
- Documented Android API 24/25 compatibility, removal of the Jackson runtime dependency, LAN/reconnect hardening, SDK re-initialization cleanup, and more precise
getTerminalInfo()error handling. - Removed remaining Cable auto-connection wording from the integration guides and clarified that integrations must explicitly select
USB_VSP,RS232, orUSB_AOA.
New: SAF Offline Transactions (Store-and-Forward)
- Added a dedicated SAF Offline Transactions page under the Android (Kotlin) client-side SDK, documenting the ISV-facing store-and-forward interfaces: the Offline mode switch, terminal online capability query, SAF limit configuration, upload mode, the
safModetransaction flow (including Offline Approved and the acceptance confirmation callback),QUERY/VOID/BATCH_CLOSEhandling, and the SAF management APIs (lists, single upload, upload-all task, and result callback).
2026-09-11
Sub-Screen availability clarified
- Clarified across the integration guides and Android SDK reference that Sub-Screen mode is available only when Tapro runs on the CPad Pay Sub-Screen edition.
Cross-Device modes corrected
- Removed obsolete Cross-Device Auto routing documentation. Cross-Device now documents only the LAN and Cable strategies, with explicit cable-protocol selection.
2026-09-03
Taplink SDK for Android v1.0.9
- Updated the dependency coordinate to
com.sunmi:sunbay-taplink-sdk-android:1.0.9 - Rewrote the Connection Modes chapter around integration modes:
ON_DEVICE,CROSS_DEVICE(CrossDeviceStrategy.LAN/CABLE) andSUB_SCREEN, with a mapping table to the classicAPP_TO_APP/LAN/CABLEAPI (which remains fully supported) - Added a Choosing a mode table and an explicit “no code changes required when upgrading from v1.0.8” note
- Updated the Quick Start connect example to
ConnectionConfig.createOnDeviceMode() - Published the
getTerminalInfo()read-only terminal information query in thev1.0.9 (Current)version history entry - Removed the obsolete
TerminalInfo.logofield from the Android SDK reference - Removed obsolete
autoOpenUsbScreenPlayerconfiguration guidance; useSUB_SCREENfor mandatory customer-display activation - Corrected Android SDK transaction examples to pass amounts in the smallest currency unit
- Updated the integration architecture guide to reflect that Cable mode is now available
- Updated the local integration basic steps to use the v1.0.9 On-Device, Cross-Device, and Sub-Screen modes
- Aligned the Sub-Screen SDK section with the On-Device and Cross-Device sections in the connection-mode hierarchy
2026-09-02
Integration architecture upgraded
- Upgraded integration classification from connection-based (App-to-App / LAN / Cable) to form-based (On-Device / Cross-Device / Sub-Screen)
- Cloud mode now presented under Cross-Device
- Updated Semi-Integrated setup instructions to replace legacy Taplink Configuration switch
2026-08-25
Merchant APIs now return processor identifier lists
- Retrieve Merchant response adds
midList, returning thechannelCode,channelName, andmidassigned by each payment channel (processor). - List Merchant Terminals response adds
tidListon every terminal, returning thechannelCode,channelName, andtidassigned by each payment channel (processor). - Clarified that
middiffers from the platformmerchantIdandtiddiffers from the terminal serial number (sn); an empty array is returned when no payment channel has been enabled.
2026-08-07
Android SDK v1.0.8 API Audit
- Audited the v1.0.7 and v1.0.8 AARs class-by-class and documented every previously missing change.
- Documented the expanded
PaymentEventprogress states and the generic fallback event used for unrecognized event codes. - Recorded the breaking changes:
PaymentEvent.WaitingOnlineResponsewas removed in favour ofOnlineProcessing; JSON serialisation moved from Gson to Jackson 2.17.2;BasicRequest/BasicResponse.bizDatachanged fromJsonObjecttoString;ConnectionConfig.createAppMode()now takes an optionalAppToAppMode. - Documented
AppToAppMode,TipSuggestions.names, and thePaymentResult.relatedTransactionStatus/transactionBatchStatusfields.
Tip Configuration Source Precedence
- Clarified that
tipConfig.useHostConfig = trueignores every other request field,onScreenTipincluded — combining it withonScreenTip = falsedoes not skip tipping. - Scoped the
onScreenTip/suggestionsbehavior table touseHostConfig = false, which is the only case it describes. - Documented that with
useHostConfig = false,tipModeandtipWithTaxno longer fall back to the terminal values when omitted — the same rule that already applied tosuggestions. - Extended the behavior table with a receipt tip area column: the tip is captured in exactly one place — the on-screen tip leaves no tip area on the receipt, while disabling it moves capture to the receipt as either suggested amounts or a blank tip line.
2026-08-06
Android SDK Signature & Tip Configuration Source
- Rewrote the Android SDK signature documentation around
signatureConfigand itsSignatureConfigfactory methods, replacing the previoussignatureEntryLocationdescription. - Documented
useHostConfigfor bothsignatureConfigandtipConfig: it selects one whole configuration source (terminal or request) and the two are never merged field by field. - Clarified that a
nulltipConfig.suggestionsmeans no suggested tips are shown and does not fall back to the platform values. - Added amount-threshold signature options (
onScreenAbove,onReceiptAbove) and thenone()option. - Documented
signatureConfigin the Cloud/semi-integration Sale and Auth API references, and confirmed the legacysignatureEntryLocationfield stays supported (an explicitentryLocationalone selects the request configuration). - Extended
signatureConfigsupport to non-referenced refunds (RefundRequest.nonReferencedBuilder().setSignatureConfig(...)); referenced refunds still reject it. - Batch Close now accepts the transaction-receipt values
MERCHANTandCUSTOMERforprintReceiptand treats them asAUTOinstead of returning a parameter error. - Documented receipt-printed tip suggestions:
tipConfig.onScreenTip = falsecombined withsuggestionsno longer skips tipping — the terminal prints the suggested amounts on the receipt instead of showing a tip screen. - Clarified
tipConfig.tipMode:AFTER_SALEauthorizes the sale first, then prompts for the tip and sends a follow-up tip adjustment — identical to how the terminal behaves outside semi-integration. Your callback still fires only once, after the tip is settled. - Corrected the
amount.tipAmount/tipConfigrule: the two are mutually exclusive and passing both returnsTipConfigConflict(E302). The previous text incorrectly stated thattipAmounttakes precedence.
2026-07-29
Batch Close Report Printing
- Added the optional
printReceiptfield to Batch Close requests. - Documented
AUTO,BOTH,TOTAL,DETAIL, andNONEbatch report print modes. The default isAUTO.
2026-07-15
Transaction Query & Online Refund Updates
- Transaction Query API response adds new fields:
relatedTransactionStatus,transactionBatchStatus - Added Online Refund API: /en/refspec/transactions/online/refund
2026-01-21
Initial Release
- Released SUNBAY Developer Documentation site
- Includes core content such as product introduction, quick start, integration guide, API reference, SDK documentation, and resource center
- Supports Chinese version
- Provides API Tester online debugging tool
Last updated on