Contents

resolveCurrencyAmount(for:with:)

Resolves the amount of money requested.

Declaration

optional func resolveCurrencyAmount(for intent: INRequestPaymentIntent, with completion: @escaping  @Sendable (INRequestPaymentCurrencyAmountResolutionResult) -> Void)
optional func resolveCurrencyAmount(for intent: INRequestPaymentIntent) async -> INRequestPaymentCurrencyAmountResolutionResult

Parameters

  • intent:

    The intent object containing details about the user’s request. Use this object to get the initial information, if any, provided by the user.

  • completion:

    The block to execute with the resolution. You must execute this block at some point during your implementation of this method. This block has no return value and takes the following parameter:

    resolutionResult

    The resolution result object containing your proposed resolution. For successful resolutions, create a resolution object whose value is the Incurrencyamount object containing the requested amount. This parameter must not be nil.

Discussion

Implement this method to verify the requested currency amount. If the amount is outside of the minimum or maximum transaction amount supported by your app, return a successful result and use your response object to communicate that the amount is below the minimum or above the maximum amount. Do not use this method to validate that the payer’s account contains the necessary funds to complete the transaction.

If you identify a currency amount but there is a problem in requesting the funds, use the unsupported(forReason:) method to create a INRequestPaymentCurrencyAmountResolutionResult object indicating the reason why you can’t request the amount.

See Also

Resolving the Intent Parameters