Post not yet marked as solved
I implemented the apple pay with a stripe. When I tap the apple pay button it doesn't show any payment sheet and it always returns the nil value. The code is :applepayButton.isEnabled = Stripe.deviceSupportsApplePay() let merchantIdentifier = "merchant.deyaPayApplepay" let paymentRequest = Stripe.paymentRequest(withMerchantIdentifier: merchantIdentifier, country: "US", currency: "usd") // Configure the line items on the payment request paymentRequest.paymentSummaryItems = [ //PKPaymentSummaryItem(label: "Fancy Hat", amount:NSDecimalNumber(value :amount)), // The final line should represent your company; // it'll be prepended with the word "Pay" (i.e. "Pay iHats, Inc $50") PKPaymentSummaryItem(label: "amount to be added", amount:NSDecimalNumber(value :amount)), ] if Stripe.canSubmitPaymentRequest(paymentRequest) { // Setup payment authorization view controller let paymentAuthorizationViewController = PKPaymentAuthorizationViewController(paymentRequest: paymentRequest) paymentAuthorizationViewController?.delegate = self // Present payment authorization view controller self.present((paymentAuthorizationViewController)!, animated: true,completion: nil) } else { // There is a problem with your Apple Pay configuration print("apple pay is not configred properly"); } } func paymentAuthorizationViewController(_ controller: PKPaymentAuthorizationViewController, didAuthorizePayment payment: PKPayment, completion: @escaping (PKPaymentAuthorizationStatus) -> Void) { STPAPIClient.shared().createToken(with: payment) { (token: STPToken?, error)-> Void in print("Stripe token is \(String(describing: token!))") completion(.success) let b = String(describing: token!) } } func paymentAuthorizationViewControllerDidFinish(_ controller: PKPaymentAuthorizationViewController) { //Dismiss payment authorization view controller dismiss(animated: true, completion: { if (true) { // print("Payment Success") // Show a receipt page... } }) }It always the "apple pay is not configured properly". It is worked fine in simulator but when it runs in real device it shows the else condition rather than if condition. Why it is not working properly in real device
Post not yet marked as solved
Hi,- I have a developer account with Apple- I have created the Payment Processing Certificate- I have done the merchant validation- I have created the Merchant Identity CertificateWhen I call the function 'session.onvalidatemerchant', visit the url: https://cn-apple-pay-gateway-tj-pod1.apple.com/paymentservices/startSession(event.validationURL), I received a error:{ "statusMessage": "Payment Services Exception merchantId=BECD61522C23F5C8200759A03B67E19730D3F6A03C7DDD1470D64B0DF6F28078 unauthorized to process transactions on behalf of merchantId=1BAE2D40CDB3552D32815FA54BFBDFBAFFE94047CC198087DB502A7C6F9448B1 reason=\"1BAE2D40CDB3552D32815FA54BFBDFBAFFE94047CC198087DB502A7C6F9448B1 is not a registered merchant in WWDR and isn't properly authorized via Mass Enablement, either.\"", "statusCode": "417"}But when I make the same request on a Chinese server, I received a successful result.I hope to get successful results on servers in the United States.Please help.ThanksFan
Post not yet marked as solved
env: iPhone 8 iOS 11.2.1I followed https://developer.apple.com/apple-pay/sandbox-testing/At the final step I can't add visa card to my Wallet sandbox, I changed my region to US, after I tap 'Enter Card Details Manually', the input page need "Name" and Card Number, What is this 'Name'?I tryed my apple id and my apple name but it doesnt work and told me 'Could Not Add Card'.any advise to me ?
Post not yet marked as solved
I'm a new Swift developer. I'm using Xcode 10.1 and Swift 4.2.I'm developing an app that shows the user his $USD balance and allows him to use that balance for various purposes within the app. The user can add $USD to the balance - ideally through an in-app purchase. The balance is maintained on my server and decremented as the user uses the app in ways that spend that balance.I have a few questions: 1) should I use a consumable IAP product type for purchases of a $5 increment or $10 increment to the balance? Do I have to notify Apple when it is consumed? It will be consumed immediately as I add that amount to the balance on my server for use in the app.2) does Apple take 30% of the amount added (for a $5 increment, Apple takes $1.50)? Is that just for the first year?3) since the balance can be used immediately, does Apple have fraud filters to prevent someone from using stolen credit card info to make a purchase and then using it immediately for services that actually have a cost to provide? I have been burned with online sales, even though we had professional fraud filters. We still had to eat the chargebacks. That's why I would be willing to pay Apple a precentage to prevent the fraud.4) if I add paypal to the app as well, does Apple take a percentage of purchases made through paypal?I'm sorry for the very simple, perhaps naive questions. But I really need to know this information and the Apple documentation is not that specific. Thank you.
Post not yet marked as solved
helloin the help page for creating a Sandbox Tester Accounthttps://developer.apple.com/apple-pay/sandbox-testing/they said to :Sign in to App Store Connect.On the homepage, click Users and Access.BUT on home page ther is no Users and Access.?!!
Post not yet marked as solved
Hello!I am want to create new merchant ID, so I did all necessary actions on the developer portal and now I am trying to create certificate via sending certificate signing request and getting the following error:CSR algorithm/size incorrect. Expected: ECC(256)So, I went to certificate signing reqest manager and set tick to "Let me specify key pair information" , where I manually set ECC (256) algorithm.Thus did same things as here Unable to create a Merchant ID Certificate from an ECC 256 certificate signing request , but selected ECC 256 which is required.Then I tried again, but I am getting same error.CSR algorithm/size incorrect. Expected: ECC(256)Can you help me with this? Can't it be an issues of new UI ?P.S.: I have tried all algorithms, just in case.
Post not yet marked as solved
Hi,I currently have an Apple Pay Merchant (call it A) that is being used in production with our current payment processor for Apple Pay on the web. We are moving to a new payment processor. I have created a new Apple Pay Merchant (call it B) for the new payment processor so that development and testing of our applications can continue in parallel with development and testing of our integrations to the new payment processor. We have 4 domains verified with Merchant A (current production) and will have to verify the same 4 domains with Merchant B just before we go live. I want to confirm that this will not create problems from the perspective that a domain can only be verified on one Merchant at a time. Our goal is to be able to minimize or eliminate any period of time when we won't be able to accept Apple Pay. We recognize that any payment authorized using Merchant B's identity has to be processed by the new payment processor and any payment authorized using Merchant A's identity will have to be processed by the current payment processor.Has anyone gone through this? Can a domain be "Verified" on more than one Merchant at a time?ThanksPaul
Post not yet marked as solved
I have implemented apple pay and it is working for me for most of the card types.But recently in Sandbox environment for all the apple pay token with card type Master Card i'm getting the card expiry date as 07-2019(Even tough the card expiry date which i gave while adding the card to Wallet was 11/2022).And as per the documentation of apple:applicationExpirationDate : Card expiration date in the format YYMMDD.is the field in the decrypted token where we get the card expiry.https://developer.apple.com/library/archive/documentation/PassKit/Reference/PaymentTokenJSON/PaymentTokenJSON.htmlI have already tried with multiple cards but all giving the same expiry date.Has anyone encountered the same issue??
Post not yet marked as solved
I'm seeing "Payment not completed" with test cards many times, for unknown reason. Code is fine.I'm gueesting there is some blocking mechanism, on apple id level.These days I've followed Apple Pay Sandbox Testing document to create two test accounts, both App Store Territory are United States. I am in China and sometimes I may use VPN of US IP.I created a simple test app to test apple pay, the code is pasted at the end of this post. I used this code to test these two accounts, sometimes it worked, suddently it stopped working and always "Payment not completed", no matter what test card I add.I tried to find the pattern, unforturnatelly I couldn't, for example:Yesterday I added a new test account (say Account A) on a test device (say Device A), added a VISA test card, it worked, and then I added three more: Master/Discover/American Express, and test again, suddenly "Payment not completed". I tried sign out and sign in and add test card again, still not working. Today I check again, still not working.There's another test account (Accout B) working on another test device (Device B), running same test app. So I sign in with Account B on Device A, add same test card, then worked. Note, this didn't mean Account B is perfect, it used to having issue, but now working, maybe just because I haven't used it for hours.Code:PKPaymentRequest *paymentRequest = [[PKPaymentRequest alloc] init];paymentRequest.merchantIdentifier = @"merchant.com.samuel.applepay.test";paymentRequest.countryCode = @"US";paymentRequest.currencyCode = @"USD";paymentRequest.merchantCapabilities = PKMerchantCapability3DS;paymentRequest.supportedNetworks = @[PKPaymentNetworkAmex, PKPaymentNetworkVisa, PKPaymentNetworkDiscover, PKPaymentNetworkMasterCard];
Post not yet marked as solved
I found the download_id description in documentation: https://developer.apple.com/documentation/appstorereceipts/responsebody/receipt?changes=latest_minordownload_idA unique identifier for the app download transaction.
Can I use "
download_id" in receipt to verify whether two different receipts are from the Apple Account?
(I found two diffrerent receipts from one Apple Account, these receipts have the same download_id.)Array
(
[receipt] => Array
(
[receipt_type] => Production
[adam_id] => 1148465254
[app_item_id] => 1148465254
[bundle_id] => "*****************"
[application_version] => 1
[download_id] => 79017591726215
[version_external_identifier] => 832934132
[receipt_creation_date] => 2019-10-13 04:53:11 Etc/GMT
[receipt_creation_date_ms] => 1570942391000
[receipt_creation_date_pst] => 2019-10-12 21:53:11 America/Los_Angeles
[request_date] => 2019-10-14 02:34:59 Etc/GMT
[request_date_ms] => 1571020499865
[request_date_pst] => 2019-10-13 19:34:59 America/Los_Angeles
[original_purchase_date] => 2017-10-13 02:41:13 Etc/GMT
[original_purchase_date_ms] => 1507862473000
[original_purchase_date_pst] => 2017-10-12 19:41:13 America/Los_Angeles
[original_application_version] => 3
[in_app] => Array
(
[0] => Array
(
[quantity] => 1
[product_id] => "*****************"
[transaction_id] => 390000336030035
[original_transaction_id] => 390000336030035
[purchase_date] => 2019-10-13 04:53:11 Etc/GMT
[purchase_date_ms] => 1570942391000
[purchase_date_pst] => 2019-10-12 21:53:11 America/Los_Angeles
[original_purchase_date] => 2019-10-13 04:53:11 Etc/GMT
[original_purchase_date_ms] => 1570942391000
[original_purchase_date_pst] => 2019-10-12 21:53:11 America/Los_Angeles
[is_trial_period] => false
)
)
)
[status] => 0
[environment] => Production
)
Array
(
[receipt] => Array
(
[receipt_type] => Production
[adam_id] => 1148465254
[app_item_id] => 1148465254
[bundle_id] => "*****************"
[application_version] => 1
[download_id] => 79017591726215
[version_external_identifier] => 832934132
[receipt_creation_date] => 2019-10-13 05:00:40 Etc/GMT
[receipt_creation_date_ms] => 1570942840000
[receipt_creation_date_pst] => 2019-10-12 22:00:40 America/Los_Angeles
[request_date] => 2019-10-14 02:35:28 Etc/GMT
[request_date_ms] => 1571020528537
[request_date_pst] => 2019-10-13 19:35:28 America/Los_Angeles
[original_purchase_date] => 2017-10-13 02:41:13 Etc/GMT
[original_purchase_date_ms] => 1507862473000
[original_purchase_date_pst] => 2017-10-12 19:41:13 America/Los_Angeles
[original_application_version] => 3
[in_app] => Array
(
[0] => Array
(
[quantity] => 1
[product_id] => "*****************"
[transaction_id] => 390000336031381
[original_transaction_id] => 390000336031381
[purchase_date] => 2019-10-13 05:00:40 Etc/GMT
[purchase_date_ms] => 1570942840000
[purchase_date_pst] => 2019-10-12 22:00:40 America/Los_Angeles
[original_purchase_date] => 2019-10-13 05:00:40 Etc/GMT
[original_purchase_date_ms] => 1570942840000
[original_purchase_date_pst] => 2019-10-12 22:00:40 America/Los_Angeles
[is_trial_period] => false
)
)
)
[status] => 0
[environment] => Production
)
What are the instructions for a customer to use the promotion code I give them?With the in-app purchase will they see a place to enter the code?ThanksAllez-Up Developer
Post not yet marked as solved
Hello All, I am having trouble setting up an Apple Pay Payment Processing Certificate.When I upload the CSR file I receive the following error: CSR algorithm/size is incorrect.Expected RSA 2048In my CSR I selected custom settings; ECC Algorithm and 256 bit Key size. I also tried RSA 2048 and neither work.Apple technical support referred me here...Thanks in advance.xLeague Games
Post not yet marked as solved
I am trying to integrate Apple Pay for web with Sandbox credit card information.I am using Java as backend, at Merchant Server and JS at front end.Created 2 CSR's in macbook1. For Payment Processing Certificate(PPC) with 256 bits and ECC algorithm2. For Merchant Identity Certificate(MIC) with 2048 bits and RSA algorithmUploaded these 2 .csr files under my merchant id's PPC and MIC respectively.Now, downloaded the .cer files i.e., certificate files into my merchant server i.e., Java + Spring Boot backend.Tried to install these 2 .cer files into cacerts as jksBut, SSL handshake exception while trying to hit the merchant validation url from the serverHTTP POST Requesthttps://xxxx.com/paymentsession?validationUrl=https://apple-pay-gateway-cert.apple.com/paymentservices/paymentSession{ "merchantIdentifier": "merchant.com.xxxx.applepay", "displayName": "A sample SRK shop", "initiative": "web", "initiativeContext": "applepay.xxxx.com"}It is throwing handshake exception.Tried to connect to merchant validation url from the openssl client from my merchant server.SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:s3_pkt.c:1487:SSL alert number 40SSL routines:ssl123_write:ssl handshake failure:s23_lib.c:177:Any help is appreciated, If my approach is totally wrong correct me.
Post not yet marked as solved
We're implementing Apple Pay as an Adyen Web Component https://docs.adyen.com/payment-methods/apple-pay/web-component on the basket page of an e-commerce website selling physical goods for delivery.We need to validate the names, addresses and email address supplied by the customer via the Apple Sheet / Wallet to ensure they are compatible with our back-end system that cannot be changed to match Apple's less strict validation rules.Example validation rules are max length on fields or certain characters not been allowed.In onShippingContactSelected, we only get a partial / redacted address (as described in https://developer.apple.com/documentation/apple_pay_on_the_web/applepaypayment/1916097-shippingcontact) so we can't fully validate all the fields at that point. We've been able to validate the shipping address country to confirm that it's domestic and show a red text error message if it's international but other fields such as address lines are not available at this point. We did this by using reject with STATUS_INVALID_SHIPPING_POSTAL_ADDRESS as follows: reject({
status: 'STATUS_INVALID_SHIPPING_POSTAL_ADDRESS',
newTotal: {
label: this.client.getMerchantName(),
amount,
type: 'final',
},
errors: [
new ApplePayError(
'shippingContactInvalid',
'country',
'International shipping is not available'
),
],
});After the customer authorises the payment, we get access to the full data in onAuthorized. We're trying to show an error (ideally against a specific field(s) in the address(es)) but haven't managed to find a way to show any sort of custom error on the Apple Pay sheet after authorisation yet.Do you know if this is possible, and if so, how to do it?We've tried reject with STATUS_FAILURE and an array of ApplePayError but it's not showing us a specific error message (just a generic "payment not completed" error).We also tried using STATUS_INVALID_SHIPPING_POSTAL_ADDRESS in onAuthorized but that showed the generic error as well.
Post not yet marked as solved
I'm using Core NFC framework in my app. We need to read credit card number, expiry date when I tap the NFC Credit card on the iPhone on which my app is installed.I see Apple UI presented in my app which asks to readnearby NFC. But when I tap my contactless credit card on the iPhone it never reads or detects NFC. However it reads other NFC Tags seamlessly.Am I doing something wrong?
Post not yet marked as solved
Testing apple pay in our app is not working in the sandbox environment. When using a test card - the response returns with "Payment not completed". We've tested with these cards:Discover: 6011 0009 9446 278011/2022Visa: 4761 1200 1000 049211/2022The code works fine in production but we'd like to have a sandbox environment for further testing. Has anyone encountered this?
Post not yet marked as solved
We are implementing Apple Pay on the Web. We are unable to add Amex test cards from the Sandbox from MacOS or iPhone wallet. We are attempting to add the Amex cards from (https://developer.apple.com/apple-pay/sandbox-testing/). Other card types (VISA, MC) can be added without issue. In Wallet & Apple Pay settings when I attempt to add the Amex card it shows "Authenticating..." near the device account number indefinitely, and it never gets activated properly.I've tried restarting my computer and ensuring device region is in US. I'm running macOS 10.14.6 (and due to security can't upgrade the OS). Can you confirm whether the OS is cause of this or something else with Amex cards not being supported.STEPS TO REPRODUCEOn Mac, go to System Preference > Wallet.Try to add any of the Amex cards from Sandbox here:https://developer.apple.com/apple-pay/sandbox-testing/The card initially shows as added but when you look at device account number it says "Activating..." indefinitely and is never activated.
Post not yet marked as solved
Hi Team,I am developing an app through which user can book flight tickets/hotels, recharge their cell phone, Buy health or travel of motor insurance etc. User can also get the personal loan as per their credit limit.I want users to make payment through UPI/Wallet/Credit-Debit cards/netbanking etc.For which i was planning be integrate PayU/billdesk pr paypal as payment processorHowever i just got to know that apple does not allow third party payment gateways and force users to make the payment onlt through apple id or pay, which only accept credit or debit card not upi or other mode of payments.I have also gone through the whole user agreement and guidelines but could not understand the solutions.can someone please tell me if apple realy doesnot allow payments processor or there is a way to get it.(In market payment apps like Paytm does accept the payments through all above modes. )Thanks
Post not yet marked as solved
Hello everyone,Has anyone here dealt with Apple Pay using Authorize.net on Shopify? Hoping someone has gone through a similar experience & can help out here.I'm trying to get Apple Pay working on Shopify (the payment processor is Authorize.net). The option to use Apple Pay shows up at checkout, but when selected, it just doesn't seem to work. The people at both Authorize.net and Shopify point me in circles.If you've successfully got this to work, please let me know how you were able to solve.Thank you!
Post not yet marked as solved
Dearswhen I try to verify a domain its show this error" Domain verification failed. Review your TLS Certificate configuration to confirm that the certificate is accessible and a supported TLS Cipher Suite is used. "I'm using Cloudflare SSL certification