#mpare-apple-pay-tokens

1 messages · Page 1 of 1 (latest)

bitter sparrow
#

Hello! Give me a minute to take a look

ionic crescent
#

Thanks!

bitter sparrow
#

So the request bodies in this case look so different because the succesful one is coming from stripe.js, while the failed one is coming from the ios sdk.

#

Did you try the suggestion we gave yesterday? Of just setting
paymentRequest.merchantCapabilities = PKMerchantCapability.capability3DS
to see what would happen?

ionic crescent
#

We are requiring debit so need that Debit capability. We are also unable to reproduce locally and can't do an app store release on this quick turnaround which is part of the issue

#

That makes sense - does everything call that token endpoint even for non apple pay?

bitter sparrow
#

Yes, there are a lot of different use cases for the tokens endpoints, so it wouldn't be just limited to apple pay

ionic crescent
#

Got it - is there a way to isolate calls to a specific flow so I can give you responses for a successful apple pay?

#

We are seeing 75-80% success so its strange

bitter sparrow
#

Let me see if I can isolate them on my end - but when we had looked into this yesterday, we did think it was related to how you were setting paymentRequest.merchantCapabilities

ionic crescent
#

I can talk about removing the secondary capability there but we'll need to keep the debit one

#

Its just weird because it works for 80% of cases

bitter sparrow
ionic crescent
#

Support only debit for now

#

So we're explicitly adding debit and 3DS - would that cause conflicts?

#

Looks like 3DS is required and we need to limit optionally for debit

#

Is this Apples API that is complaining or something internally

bitter sparrow
#

Sorry was still looking into thing - yes, I believe this is Apple's API that's complaining that something is set incorrectly, we're just surfacing their error back to you

#

I'm not really sure why or if it's expected behavior that specificying debit + 3DS is causing conflicets, still trying to get to the bottom of that

ionic crescent
#

Yeah one sec chatting internally with iOS team to fully understand the flow here

#

Sorry lots of meetings today

bitter sparrow
#

No worries! I'm also pulling in some folks to see if anyone else konws more

ionic crescent
#

private func applePayRequest(forAmount amount: Int? = nil) -> PKPaymentRequest {
let merchantIdentifier = settings.merchantID
let paymentRequest = StripeAPI.paymentRequest(
withMerchantIdentifier: merchantIdentifier,
country: Strings.Stripe.defaultCountry,
currency: Strings.Stripe.defaultCurrency
)

    paymentRequest.merchantCapabilities = [
        PKMerchantCapability.capabilityDebit,
        PKMerchantCapability.capabilityEMV,
        PKMerchantCapability.capability3DS
    ]

    let displayedAmount: NSDecimalNumber = amount.map { NSDecimalNumber(value: $0) } ?? 0
    let type: PKPaymentSummaryItemType = amount == nil ? .pending : .final
    paymentRequest.paymentSummaryItems = [
        PKPaymentSummaryItem(label: Strings.Stripe.applePayTitle, amount: displayedAmount, type: type)
    ]
    return paymentRequest
}
#

From our iOS team we're just using the Stripe wrapper to create it - Could it be non 3DS cards that are being included or does the wallet filter them out?

bitter sparrow
#

We're still looking, but I'll let you know as soon as I have an update!

ionic crescent
#

Cheers - thanks @bitter sparrow !

bitter sparrow
#

@ionic crescent Have you already written into support about this? We're going to need some more time to look into this, and it'll be easier for us to get more details through a support ticket

ionic crescent
#

Hey @bitter sparrow - I just emailed our premium account rep and this is my first time going through the support portal

#

Or support via discord

#

Is that through the web app?

bitter sparrow
#

Actually, it may be easiest for you to write into support@stripe.com (ccing your premium accuont rep) and mention that you spoke to karbi on Discord. I'll be able to find it from there!

bitter sparrow
#

@ionic crescent Just checking in - let me know when you've written in so I can find it on my eend

ionic crescent
#

Okay doing now!

#

sorry was running an errand

#

Just forwarded the email

#

thanks for your help!

bitter sparrow
#

👍 Thanks for circling back! We'll follow up over email