iosios10sirikitintents-extension

SiriKit payment confirmation currency is always US$


I build Intents Extension and I'm handling INSendMoneyIntent and I'm saying:

Send 25€ to John Smith

response after app confrimation

Here's your <Your_App> payment for US$25.00. Do you want to send it?

Intent contains proper currency iso 3 code - EUR, so why siri displays wrong currency in payment confirmation?

returning intent

INSendPaymentIntentResponse *reponse = [[INSendPaymentIntentResponse alloc] initWithCode:INSendPaymentIntentResponseCodeReady userActivity:userActivity];
completion(reponse);

Solution

  • You need to add a paymentRecord to your response in

    (void)confirmSendPayment:(INSendPaymentIntent *)intent

    like so:

    INSendPaymentIntentResponse *response = [[INSendPaymentIntentResponse alloc] initWithCode:INSendPaymentIntentResponseCodeReady userActivity:userActivity];
    response.paymentRecord = [[INPaymentRecord alloc] initWithPayee:intent.payee payer:nil currencyAmount:intent.currencyAmount paymentMethod:nil note:intent.note status:INPaymentStatusPending];
    completion(response);