Terminal-2 icon

Start Alipay and WeChat Pay transactions

Class

NameDescription

MerchantPed

Extends  AdyenPed.  Class used to implement all PIN entry device (PED) functionality.

Special tender parameter

Name Type Description
specialTender SpecialTender Holds tender attributes.

Use the SpecialTenderBuilder to create the SpecialTender object:

SpecialTender.SpecialTenderBuilder(merchantAccount,
                merchantReference,
                "payment",
                "alipay",
                currency,
                amount)
                .tenderOptions(tenderOptions)
                .specialOptions(specialOptions)
                .build(); 

Use put to set special options

NameDescription

specialOptions.put

Allows you to add a special option as a key value pair.

Add special options parameters to the specialTender using the specialOptions.put method. 

NameTypeRequiredDescription

cardNumber 

String

-x-

The scanned number from the wallet app (to be provided only for Flow 3: Cash register scans Shopper barcode)

forceEntryMode

String

-white_check_mark-

The entry mode for the transaction. In this case, use the value "Keyed".

specialOptions.put("cardNumber", "60362821657200117610");

Instantiate special tender options

Name Type Description
specialOptions SpecialOptions Holds tender attributes.

Parameters

NameTypeRequiredDescription

transactionType

String

-white_check_mark-

Type of transaction. TransactionType takes the following value:

  • payment

paymentMethodType

String

-white_check_mark-

The type of payment method, in this case wallets. PaymentMethodType takes the following values:

    • Pass "alipay" for an Alipay transaction.
    • Pass "wechatpay_pos" for WeChat Pay transaction.

shopperReference

String

-x-

Shopper identification (used for omnichannel digital customer recognition).

shopperEmail

String

-x-

Shopper identification (used for omnichannel digital customer recognition).

merchantAccount

String

-white_check_mark-

The transaction reference provided by the Merchant (reported in the Adyen payments platform).

merchantReference

String

-white_check_mark-

The transaction reference provided by the Merchant (reported in the Adyen payments platform).

currency

long

-white_check_mark-

The transaction currency.

amount

String

-white_check_mark-

The transaction amount in minor units (100 is 1.00 with EUR). The Amount field should be a strong typed field with a string for currency code and a number (long) for the minor digits value (similar to the current API (of the terminal)).

specialOptions

SpecialTenderOptions

-x-

Holds tender attributes.

  • cardNumber 
  • forceEntryMode

handleReceipt

Boolean

-x-

Specifies that the POS handles and prints receipts. If omitted, it is required that the PED prints the receipt. If there is no printer unit, the transaction will fail.

Instantiate specialOptions by assigning it to the result of the SpecialTender getter specialtender.getSpecialOptions()

SpecialOptions specialOptions = specialTender.getSpecialOptions();

Call the method

NameDescription

runSpecialTenderSync

Creates a tender using a number of attributes.

ped.runSpecialTenderSync(specialTender);

Determine the current and final tender state

Adyen provides a method to determine the current, or final, tender state. For more information, see Determine the current and final tender state - JNI.

Callbacks

Name Description
progressCallback Reports the progress on a running tender
tenderPrintReceiptCallback Returns the receipt for printing, and requests that the POS confirms it has received the receipt.
finalCallback When the system finishes processing the tender, it triggers the final state callback.