Class

INSendPaymentIntent

Requests the transfer of money from the current user’s account to a different user’s account.

Overview

Siri creates an INSendPaymentIntent object when the current user asks to transfer money to another user. A send payment intent object includes the payment amount and the recipient of the payment. Use that information to validate the transaction and transfer the funds.

To handle this intent, the handler object in your Intents extension must adopt the INSendPaymentIntentHandling protocol. Your handler should confirm the request and create an INSendPaymentIntentResponse object with the results of sending the money to the specified user.

This intent object represents a financial transaction between two users. For a list of other intents in the payments domain, see INPaymentsDomainHandling.

Additional Intent Attributes

Table 1 lists additional attributes of this intent object.

Table 1

Send payment intent attributes

Attribute

Description

Supported by

Siri

Always requires unlocked device

Yes

When sending a payment, Siri automatically asks the user to unlock the device if it is currently locked. You do not need to ask for the device to be unlocked explicitly. In addition, Siri always prompts the user to confirm the payment before asking your Intents extension to handle the transaction.

Example Phrases

There are many ways in which users can ask Siri to send money to another user. Table 2 provides a few sample phrases in different languages. You can use these phrases during testing to trigger your intents. This list is not exhaustive and Siri may recognize many other phrases.

Table 2

Siri phrases that trigger the sending of money to another user

Locale

Example 1

Example 2

en

Pay Jon $100 on <appName> for dinner last night

Send $50 to Amy with <appName>

zh_CN

<appName>转15元给周晶晶

zh_HK

用支付寶轉$30比小明

用支付寶俾$10比小明

zh_TW

<appName>轉錢給Jeffrey

yue_CN

用支付宝转$30比小明

用支付宝俾$10比小明

ar

ارسل ١٠ يورو إلى رامي باستخدام <appName>

باستخدام <appName> ارسل ١٠ يورو إلى رامي

da

Send $20 til James for fødselsdagsgave

de

Zahle Herbert bitte 20 Euro mit <appName>

50 Euro an Herbert mit <appName> bezahlen

es

Enviar $20 a Norberto con <appName>

<appName> de 20 $ para Norberto

fi

Maksa <appName>ssa 10 € Sarille lounaasta

Lähetä <appName>lla 50 € Kaisalle

fr

Envoie avec <appName> 45 € à Julie pour le dîner d'hier

Transfère 50 € à John avec <appName> pour le repas d'hier soir

he

העבר 30 יורו באמצעות <appName>

תשלמי לדויד 30 יורו באמצעות <appName>

it

Paga 100 € a Vincenzo usando <appName> per la cena di ieri sera

Invia 50 € a Sara con <appName>

ja

<appName>で昨日の夕食代として鈴木に5,000円払って

昨日の夕食代5,000円を<appName>で鈴木に送金して

ko

민호한테 <appName>로 저녁값 2만원 송금해

<appName>로 민호한테 점심값 2만원 송금해

ms

Gunakan <appName> untuk menghantar 20 ringgit kepada emak saya

Hantar 100 ringgit dengan <appName>

nb

Betal Jon 200 kr med <appName> for middagen i går

Send 100 kr til Anne med <appName>

nl

Betaal Jan € 100 in <appName> voor het eten van gisteren

Stuur € 50 naar Laura met <appName>

pt

Envia €568 para Marcos pelo <appName> sobre o jantar de ontem

Envie R$8 para João usando o <appName>

ru

Заплати Наташе 100 руб. через <appName>

Переведи Александру 500 руб. с помощью <appName>

sv

För över 200 kr med <appName> till Herbert

Kan du <appName> 200 kr till Hanna

th

ส่งเงินให้พ่อ 300 บาทผ่าน <appName>

ใช้ <appName> ส่งเงินให้สมชาย 300 บาท

tr

Buket'e 20 liralık <appName> transferi

Süleyman'a <appName> üzerinden yemek için 20 lira transfer et

In the preceding examples, <appName> represents the name of the app whose Intents extension handles the transaction. If your app uses custom names for contacts, you can tell Siri about those names using the INVocabulary class.

Topics

Initializing the Intent Object

init(payee: INPerson?, currencyAmount: INCurrencyAmount?, note: String?)

Initializes the send payment intent object with the specified recipient and payment information.

Getting Details About the Payment

var payee: INPerson?

The recipient of the payment.

var currencyAmount: INCurrencyAmount?

The amount of the payment.

var note: String?

A note associated with the payment.

Relationships

Inherits From

Conforms To

See Also

Send a Payment

protocol INSendPaymentIntentHandling

Handles the transfer of money from the current user’s account to a different user’s account.

class INSendPaymentIntentResponse

Contains your app’s response to a send payment intent.