Payment App: Difference between revisions

From wizarPOS
No edit summary
 
(35 intermediate revisions by the same user not shown)
Line 3: Line 3:
* [https://ftp.wizarpos.com/advanceSDK/paymentapptest.mp4 paymentapptest.mp4]
* [https://ftp.wizarpos.com/advanceSDK/paymentapptest.mp4 paymentapptest.mp4]
===User Guide===
===User Guide===
* [https://ftp.wizarpos.com/advanceSDK/PyamentAppUserGuide.pdf PyamentAppUserGuide.pdf]
* [https://ftp.wizarpos.com/payment/PaymentInterfaceAppUserGuide.pdf PaymentInterfaceAppUserGuide.pdf]
===Steps===
===Demonstration steps(Connect terminal to PC)===
* Install Payment Apps, apps can install through by ADB, or push through by TMS.
* Install Payment Apps, apps can install through by ADB, or push through by TMS.
* Set protocal type in Payment app, refer to [https://ftp.wizarpos.com/advanceSDK/PyamentAppUserGuide.pdf PyamentAppUserGuide.pdf]
* Set protocal type in Payment app, refer to PaymentInterfaceAppUserGuide.pdf
* Connect terminal to PC
* Connect terminal to PC
* Start serial port tool in PC
* Start serial port tool in PC
* Send handshake command data through by serial port tool, refer to [https://ftp.wizarpos.com/advanceSDK/test.txt TestData]
* Send handshake command data through by serial port tool, refer to [https://ftp.wizarpos.com/advanceSDK/test.txt TestData]
* Send Transaction command data through by serial port tool, refer to [https://ftp.wizarpos.com/advanceSDK/test.txt TestData]
* Send Transaction command data through by serial port tool, refer to [https://ftp.wizarpos.com/advanceSDK/test.txt TestData]
 
===Debug tools in Windows===
* Serial port tool-- Download from Microsoft Store
* Serial/Socket tool -- [https://drive.google.com/file/d/1zDeboNelN5zhDsjldgXw7fCt5FgEhOw6/view?usp=sharing Payment Serial/Socket debug tool] [https://ftp.wizarpos.com/payment/windowsserial&socketguide.docx Spec of the tool]
==Develop resource==
==Develop resource==
===Protocol===
===Protocol===
Please refer to the protocol which communicate with payment app.
Please refer to the protocol which communicate with payment app.
* [https://ftp.wizarpos.com/advanceSDK/PaymentApp/WIZARPOSPaymentAppIntegrationProtocolV2.0.6.pdf WIZARPOSPaymentAppIntegrationProtocolV2.0.6.pdf]
* [https://ftp.wizarpos.com/advanceSDK/PaymentApp/WIZARPOSPaymentAppIntegrationProtocol2.0.8.pdf WIZARPOSPaymentAppIntegrationProtocol2.0.8.pdf]
===Payment Apps===
===Payment Apps===
The two payment apps need install to terminal firstly.
The two payment apps need install to terminal firstly.
* [https://ftp.wizarpos.com/payment/PayWizard_Demo_V1.0.0_2507221.apk PayWizard_Demo_V1.0.0_2507221.apk]
* [https://ftp.wizarpos.com/payment/PayWizard_Demo_V2.0.0_2508081.apk PayWizard_Demo_V2.0.0_2508081.apk]
* [https://ftp.wizarpos.com/payment/OPC_V1.5.0_25072211-global-release.apk PaymentApp_V1.5.0_25072211-global-release.apk]
* [https://ftp.wizarpos.com/payment/OPC_V1.10.5-global-release.apk OPC_V1.10.5-global-release.apk]
 
=== Local Integration ===
Suitable for scenarios where no application development on the POS terminal is needed. Instead, the Vendor Machine communicates directly with the Payment App. In this case, communication between the POS terminal and the Vendor Machine supports serial port, MDB (Multi-Drop Bus), and Socket protocols.
* Reference for data packaging and unpacking of VM:[https://ftp.wizarpos.com/advanceSDK/PaymentApp/Serial&SocketDemo240910.zip Serial&SocketDemo240910.zip]
* See also, [https://smartpossdk.gitbook.io/paywizard-open-api/semi-integration/local-integration local-integration]
 
===Internal Integration===
It is suitable for developing applications on the terminal. When this application uses the payment function, it only calls the payment AIDL interface provided by the payment application. Other functions of the application are implemented by the application itself.
* Reference for calling payment AIDL interface:[https://github.com/SmartPOSSamples/PayMentAIDLDemo PayMentAIDLDemo]
* See also, [https://smartpossdk.gitbook.io/paywizard-open-api/semi-integration/internal-integration internal-integration]
 
===Payment App development===
It is suitable for developing payment application on the terminal. This payment application interacts with the bank and provides the AIDL interface of the payment function to the terminal payment OPC call. Please contact sales for guidance from the development team.[https://ftp.wizarpos.com/advanceSDK/PaymentApp/AIDLServiceDemo240910(ProvidedAIDLtoOPC).zip A simple service demo which provided AIDL interface].


=== Full develop SDK===
* [https://ftp.wizarpos.com/advanceSDK/PaymentInterface_20250612.zip PaymentInterface_20250612.zip]
===AIDL develop SDK===
Applicable for scenarios where application development on a POS terminal is required, involving direct calls to the Payment AIDL Interface. (适用于需要在POS机上开发应用,这种情况下,直接调用Payment AIDL Interface.)
* [https://github.com/SmartPOSSamples/PayMentAIDLDemo PayMentAIDLDemo]
=== VM develop reference===
Suitable for scenarios where no application development on the POS terminal is needed. Instead, the Vendor Machine communicates directly with the Payment App. In this case, communication between the POS terminal and the Vendor Machine supports serial port, MDB (Multi-Drop Bus), and Socket protocols. (适用于不需要在POS机上开发应用,上位机直接和PaymentInterface通讯。这种情况下,POS机和上位机之间支持串口,MDB,Socket通讯。)
* [https://ftp.wizarpos.com/advanceSDK/PaymentApp/PaymentApp_Serialport_Guilde&Demo.zip PaymentApp_Serialport_Guilde&Demo.zip]
==Others==
==Others==
* [https://ftp.wizarpos.com/advanceSDK/MDB_Version_4-3.pdf MDB_Version_4-3.pdf]
* [https://ftp.wizarpos.com/advanceSDK/MDB_Version_4-3.pdf MDB_Version_4-3.pdf]
* [https://ftp.wizarpos.com/advanceSDK/支付接口操作文档.pdf 支付接口操作文档.pdf]
 
* [https://ftp.wizarpos.com/advanceSDK/PaymentApp/慧银支付应用集成协议V2.0.6.pdf 慧银支付应用集成协议V2.0.6.pdf]
==FAQ==
==FAQ==
* 取消预授权应该传递什么参数? 是TransIndexCode吗?
*Simple prototype file, generally, configure this file in TMS, [https://ftp.wizarpos.com/payment/opc-v1.7.0-config-simplify-20250814.xml Parameters-Prototype xml file:opc-v1.7.0-config-simplify-20250814.xml]. Package name of the payment app is "com.wizarpos.paywizard.demo"
不是, TransIndexCode每个交易都是唯一的,由三方应用自己保证唯一性,包括消费、撤销、预授权、预授权增加,预授权完成等交易。需要做撤销、增加、完成等交易,原交易的TransIndexCode送入OriTransIndexCode,对于其他的原交易数据送了都是Ori数据 TraceNum->OriTraceNum
*Full prototype file, don't use this file, just for a reference, [https://ftp.wizarpos.com/payment/opc-v1.7.0-config-20250814.xml Parameters-Prototype xml file:opc-v1.7.0-config-20250814.xml]
TransID->OriTransId
*To configure app paramter, pelase read this "Configure a Parameter File with a Template" chapter of the [https://smartpossdk.gitbook.io/cloudpossdk/faq/tms-wizarview/accept-tms-file-downloads spec], please use prototype file- opc-v1.7.0-config-simplify-20250814.xml, package name which accept the parameter is "com.wizarpos.opc".
InvoiceNum->OriInvoiceNum
*[https://smartpossdk.gitbook.io/cloudpossdk/faq/advance-sdk/learn-kiosk-mode learn-kiosk-mode]
RRN->OriRrn
*[https://github.com/SmartPOSSamples/KioskDemo.git Kiosk+Home+Launcher demo]
* 预授权的金额,到发起预授权扣款的时间大概是多长时间?
*[https://smartpossdk.gitbook.io/cloudpossdk/faq/other-development/disable-home-key Disable home button]
一般是实时的,预授权是冻结,预授权完成是解冻,可以理解为消费交易,实时扣款。 预授权和预授权完成可以不是同时进行的,例如住酒店,今天预授权500元,明天离开酒店预授权完成400元,钱是预授权完成的时候扣的。
*[https://smartpossdk.gitbook.io/cloudpossdk/cloudpos-sdk/cloudpos-sdk-aar SDK AAR]
* 取消预授权:
*[https://ftp.wizarpos.com/sdk/device/java/cloudpossdkV1.7.5.1_javaDoc.zip cloudpossdkV1.7.5.1_javaDoc.zip]
撤销Reversal
*[https://smartpossdk.gitbook.io/cloudpossdk/faq/usb-serial-port/serial-port-development serial-port-development]
* 预授权preauth发送请求消息后,等待一定时间后用户未刷卡会返回cancel,如果刷卡会立刻收到应答
*[https://smartpossdk.gitbook.io/cloudpossdk/faq/other-development/install-pos-applications Install APP]
* 退款refund,需要刷卡
*[https://smartpossdk.gitbook.io/cloudpossdk/faq/certificate/apply-app-certificates Apply APP Certificate]
* 但是退款有的版本是:发送refund的时候,如果订单已经完结,不用刷卡,会立刻成功。如果订单不存在,会等待1分钟后返回超时。
*[https://smartpossdk.gitbook.io/cloudpossdk/faq/other-development/app-signing-process Sign APP]
* 撤销,预授权完成不用刷卡
*[https://smartpossdk.gitbook.io/cloudpossdk/faq/tms-wizarview/apply-wizarview-account Apply TMS Account]
* 用户购物花了两元,我们发现算错了要退1元
*[https://ftp.wizarpos.com/device/TMSManual.pdf TMS Manual]
这个场景可以用预授权2块,预授权完成1块实现,或者消费2块,消费撤销1块
==[[Chinese Document]]==
* 撤销Reversal是不是只能撤销已经刷卡的预授权,因为这时有transID
如果用户未刷卡,这个预授权应如何取消, 可以使用协议数据CTRL: 0xC1 indicate Cancel Request
*  终端交易不允许并发,不过再等待刷卡界面可以接受串口过来交易
*  预授权完成之后不能在追加了,相当于已经完成一笔扣款了,所以要明确预授权完整之前进行预授权增加; 完成之后在想增加扣款,除非重新刷卡,重新发预授权和预授权完成; 或者发一笔刷卡消费。 预授权增加可以发多次,完成只能发一次。

Latest revision as of 09:29, 29 September 2025

Quick Start

Demo Video

User Guide

Demonstration steps(Connect terminal to PC)

  • Install Payment Apps, apps can install through by ADB, or push through by TMS.
  • Set protocal type in Payment app, refer to PaymentInterfaceAppUserGuide.pdf
  • Connect terminal to PC
  • Start serial port tool in PC
  • Send handshake command data through by serial port tool, refer to TestData
  • Send Transaction command data through by serial port tool, refer to TestData

Debug tools in Windows

Develop resource

Protocol

Please refer to the protocol which communicate with payment app.

Payment Apps

The two payment apps need install to terminal firstly.

Local Integration

Suitable for scenarios where no application development on the POS terminal is needed. Instead, the Vendor Machine communicates directly with the Payment App. In this case, communication between the POS terminal and the Vendor Machine supports serial port, MDB (Multi-Drop Bus), and Socket protocols.

Internal Integration

It is suitable for developing applications on the terminal. When this application uses the payment function, it only calls the payment AIDL interface provided by the payment application. Other functions of the application are implemented by the application itself.

Payment App development

It is suitable for developing payment application on the terminal. This payment application interacts with the bank and provides the AIDL interface of the payment function to the terminal payment OPC call. Please contact sales for guidance from the development team.A simple service demo which provided AIDL interface.

Others

FAQ

Chinese Document