Apple Pay on the Web

RSS for tag

Apple Pay on the Web allows you to accept Apple Pay on your website using JavaScript-based APIs.

Apple Pay on the Web Documentation

Posts under Apple Pay on the Web tag

124 Posts
Sort by:
Post not yet marked as solved
5 Replies
3.8k Views
I'm trying to get Apple Pay going on a Shopify site using Authorize.net. I have the text file I need to upload to /.well-known/apple-developer-merchantid-domain-association.txt. Shopify doesn't allow that sort of thing. I know Google will offer a meta tag to add to the header as an alternative when the text file isn't an option. I can't seem to find another method with Apple in this situation. Has anyone found a way around this?
Posted
by
Post not yet marked as solved
1 Replies
3.4k Views
I'm facing an issue with some master sandbox testing cards, the DPAN value displayed on the “Wallet & Apple Pay Setting” different from the value we got after decrypting the payment token. check the below sample values: FPAN: 5204 2477 5000 1497 DPAN on device setting: **********5057 Decrypted DPAN: 520424****5996 The DPAN and the decrypted DPAN should be the same.
Posted
by
Post marked as solved
2 Replies
4.4k Views
Must access to the domain-verification file for Apple-Pay at https://[DOMAIN_NAME]/.well-known/apple-developer-merchantid-domain-association be restricted to the Apple Pay IP addresses provided under the Allow Apple IP Addresses for Domain Verification heading of Setting Up Your Server | Apple Developer Documentation - https://developer.apple.com/documentation/apple_pay_on_the_web/setting_up_your_server#3172427 or can it be accessed publicly? Asking because ".well-known" is usually meant to be public but, because the domain-verification file is used to validate a domain, should the file not be protected from public access so the file cannot be retrieved with the malicious intent to validate a spoofed domain? Also, the fact the domain-verification file content is not trivial hints its access should be restricted. Thank you!
Posted
by
Post not yet marked as solved
1 Replies
676 Views
I have followed all the steps in here https://help.apple.com/developer-account/#/dev1731126fb Only step that I am not sure is merchant identity certificate creation. I didn't use the keychain and I used IIS to create a CSR and installed the certificate in the windows server. However according to my logs, execution doesn't even going to verify the merchant. When I click the ApplePay button it brings the card details as follows, but the bottom button stays "Processing" as follows. May I know what could be the reason? Thanks.
Posted
by
Post not yet marked as solved
7 Replies
2.3k Views
I am adding ApplePay using Chase. Chase provided me with the certificate signing request and we created the certificate, but they say they cant provide us with the private key used to create the .csr, so every time I try to create the ApplePay Payment Session (https://developer.apple.com/documentation/apple_pay_on_the_web/apple_pay_js_api/requesting_an_apple_pay_payment_session), I got an error as I am passing only the certificate. If I create the .csr then I can sucessfully create the ApplePay Payment Session because I also have the private key, but as it wasnt created by Chase, it doesnt contain their info and they reject it. So, It is possible to request the ApplePay Payment Session without the private key? I tried creating an p12 file, but I dont get that option as it doesnt find the private key in the pc and I tried to install the certificate in the store, but when I read it, it doesnt have the private key and it fails in Apple
Posted
by
Post not yet marked as solved
4 Replies
2.2k Views
We have had this issue for nearly 1 year now - and any help would be greatly appreciated. When a customer arrives at the cart they see the Apple pay option and various shipping methods. Orders over £25 qualify for free 48 hrs delivery and orders over £50 its 24 hrs shipping option. These are manual shipping methods we have in place and set up for all UK customers. Our issue is that we also have calculated rates for UPS via Shipstation and easypost and for some reason these appear 1st (Due to the way the ecom platform core code functions) in the apple pay prompt and it auto selects the 1st option and it is a UPS at around £10. As it is an express payment method our customers are maybe in a hurry and they do not notice this and the fact that the shipping method needs to be manually selected even if your order qualifies for free shipping. We are aware that this causes frustration for our customers and a very time consuming process for us as we refund the difference many times a week. Our developers are stuck and provided the following notes - I have implemented this sorting using different approaches, but it looks like changing the order of the shipping options is causing an issue with apple pay. I can't properly test the apple pay button. I can reorder the shipping options on the cart page, this seems to work for the regular checkout but it creates a problem with apple pay. I've tried multiple ways to reorder the list here, but it breaks apple pay. Re the stripe code that the client mentioned - I could be wrong here - but I think shipping options never actually get passed to stripe - only the cart total and the cart items - that's it - null variable for shipping options. There is a changeShippingOptions function in the Stripe code, but i've tested updating the address and shipping options during the cart/checkout process but that part of the code doesn't get called. Regarding the last point raised, all the shipping methods available do show in the apple pay prompt as they would in the regular checkout, so I am not sure what they mean by this. This is in contrast to what stripe have advised - Apologies for the delay in our response on this one, but the shipping options are sequential in the sense that they display in order of how they were passed with the code. Changing your code to include the "free" option first will then make that the default when a customer enters your payment form: shippingOptions: [ // The first shipping option in this list appears as the default // option in the browser payment interface. { ^^ the code above is an example of this. A huge show of appreciation to anyone that can provide any advice or suggestions on this. https://www.waterstreetgallery.co.uk/ This is the stripe script that enables Apple pay In particular the line - var firstShippingOption = shippingOptions[0]; - I think is what is pulling in the options, we just need to tell it to prioritise Some methods over others. An alteration to the code below was written by our developers that showed the shipping methods in an array but when they replaced it the Apple pay would not complete and after about 25 seconds payment not complete. Any suggestions would be much appreciated 😀 `
Posted
by
Post not yet marked as solved
2 Replies
2.3k Views
I'm wanting to implement and test Apple Pay on the Web using my localhost instance. I've managed to set everything up correctly and so I'm able to get a merchant session from the Apple Pay API, but the client code immediately calls oncancel after calling session.completeMerchantValidation. After following this I'm seeing the following in the terminal: com.apple.PassKit.PaymentAuthorizationUIExtension: (PassKitCore) [com.apple.passkit:Payment] Evaluating merchant session using PROD trust policy. com.apple.PassKit.PaymentAuthorizationUIExtension: (PassKitCore) [com.apple.passkit:Payment] Application failed to provide a valid merchant session. We can't proceed to authorize the transaction. From reading various online sources, including the documentation referenced above, it seems like this might be happening because localhost isn't a validated/verified domain under our merchant account which also means using localhost seems to be out of the question for local development. I was hoping that using the sandbox account would have been enough to maybe loosen up the domain requirement, but not so. Anything that can be set either on the account or in code to allow for the use of localhost with Sandbox accounts or is there some tool that I need to use for this or is this really only test-able under our sandbox domain?
Posted
by
Post not yet marked as solved
5 Replies
1.8k Views
I'm getting "Apple pay is not available for this website" error on SB after the onpaymentmethodselected event (not getting error onvalidatemerchant event) and the onPaymentAuthorised doesn't get hit at all. Here's my session data { "epochTimestamp":1652440219969, "expiresAt":1652443819969, "merchantSessionIdentifier":"SSH37EBB5A957294F0FBBD4F9C496317E1E_916523AAED1343F5BC5815E12BEE9250AFFDC1A17C46B0DE5A943F0F94927C24", "nonce":"51b5b6b1", "merchantIdentifier":"1B0FD6FCF62FBDA91A08BA2A18F4283AC1FFF6B69FC191B9F886482370BFC729", "domainName":"d176lcemp34qxj.cloudfront.net", "displayName":"Shamim", "signature":"308006092a864886f70d010702a0803080020101310f300d06096086480165030402010500308006092a864886f70d0107010000a080308203e43082038ba003020102020859d8a1bcaaf4e3cd300a06082a8648ce3d040302307a312e302c06035504030c254170706c65204170706c69636174696f6e20496e746567726174696f6e204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b3009060355040613025553301e170d3231303432303139333730305a170d3236303431393139333635395a30623128302606035504030c1f6563632d736d702d62726f6b65722d7369676e5f5543342d53414e44424f5831143012060355040b0c0b694f532053797374656d7331133011060355040a0c0a4170706c6520496e632e310b30090603550406130255533059301306072a8648ce3d020106082a8648ce3d030107034200048230fdabc39cf75e202c50d99b4512e637e2a901dd6cb3e0b1cd4b526798f8cf4ebde81a25a8c21e4c33ddce8e2a96c2f6afa1930345c4e87a4426ce951b1295a38202113082020d300c0603551d130101ff04023000301f0603551d2304183016801423f249c44f93e4ef27e6c4f6286c3fa2bbfd2e4b304506082b0601050507010104393037303506082b060105050730018629687474703a2f2f6f6373702e6170706c652e636f6d2f6f63737030342d6170706c65616963613330323082011d0603551d2004820114308201103082010c06092a864886f7636405013081fe3081c306082b060105050702023081b60c81b352656c69616e6365206f6e207468697320636572746966696361746520627920616e7920706172747920617373756d657320616363657074616e6365206f6620746865207468656e206170706c696361626c65207374616e64617264207465726d7320616e6420636f6e646974696f6e73206f66207573652c20636572746966696361746520706f6c69637920616e642063657274696669636174696f6e2070726163746963652073746174656d656e74732e303606082b06010505070201162a687474703a2f2f7777772e6170706c652e636f6d2f6365727469666963617465617574686f726974792f30340603551d1f042d302b3029a027a0258623687474703a2f2f63726c2e6170706c652e636f6d2f6170706c6561696361332e63726c301d0603551d0e041604140224300b9aeeed463197a4a65a299e4271821c45300e0603551d0f0101ff040403020780300f06092a864886f76364061d04020500300a06082a8648ce3d0403020347003044022074a1b324db4249430dd3274c5074c4808d9a1f480e3a85c5c1362566325fbca3022069369053abf50b5a52f9f6004dc58aad6c50a7d608683790e0a73ad01e4ad981308202ee30820275a0030201020208496d2fbf3a98da97300a06082a8648ce3d0403023067311b301906035504030c124170706c6520526f6f74204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b3009060355040613025553301e170d3134303530363233343633305a170d3239303530363233343633305a307a312e302c06035504030c254170706c65204170706c69636174696f6e20496e746567726174696f6e204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b30090603550406130255533059301306072a8648ce3d020106082a8648ce3d03010703420004f017118419d76485d51a5e25810776e880a2efde7bae4de08dfc4b93e13356d5665b35ae22d097760d224e7bba08fd7617ce88cb76bb6670bec8e82984ff5445a381f73081f4304606082b06010505070101043a3038303606082b06010505073001862a687474703a2f2f6f6373702e6170706c652e636f6d2f6f63737030342d6170706c65726f6f7463616733301d0603551d0e0416041423f249c44f93e4ef27e6c4f6286c3fa2bbfd2e4b300f0603551d130101ff040530030101ff301f0603551d23041830168014bbb0dea15833889aa48a99debebdebafdacb24ab30370603551d1f0430302e302ca02aa0288626687474703a2f2f63726c2e6170706c652e636f6d2f6170706c65726f6f74636167332e63726c300e0603551d0f0101ff0404030201063010060a2a864886f7636406020e04020500300a06082a8648ce3d040302036700306402303acf7283511699b186fb35c356ca62bff417edd90f754da28ebef19c815e42b789f898f79b599f98d5410d8f9de9c2fe0230322dd54421b0a305776c5df3383b9067fd177c2c216d964fc6726982126f54f87a7d1b99cb9b0989216106990f09921d00003182018d30820189020101308186307a312e302c06035504030c254170706c65204170706c69636174696f6e20496e746567726174696f6e204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b3009060355040613025553020859d8a1bcaaf4e3cd300d06096086480165030402010500a08195301806092a864886f70d010903310b06092a864886f70d010701301c06092a864886f70d010905310f170d3232303531333131313031395a302a06092a864886f70d010934311d301b300d06096086480165030402010500a10a06082a8648ce3d040302302f06092a864886f70d01090431220420463e324ef2a67be4caad2196e90cd77e4a215ee2e2dee5ebb37bc5f18d4f0e76300a06082a8648ce3d04030204483046022100b1aef11ea8f5940eef195c13d0879528ff6ddd59a671aaede8bdb0a4a0aafc290221009257a1f32bfea292d8cd819682343d840b75a1d332c3154c33b701a3b8c0166b000000000000", "operationalAnalyticsIdentifier":"Shamim:1B0FD6FCF62FBDA91A08BA2A18F4283AC1FFF6B69FC191B9F886482370BFC729", "retries":0, "pspId":"1D867D2918895F195CF99A0BCCA8B3E63C0AB3FC997F254501617482BBCF21F9" } and this is the url that i'm testing with https://d176lcemp34qxj.cloudfront.net/MerchantSiteSB.html Can somebody please assist to find the issue? or how should i get more details on the error?
Posted
by
Post not yet marked as solved
2 Replies
513 Views
Hi we have an online web shop and is worming on a mobile app. Will I need to pay 30% commission to Apple for every sale that is done through the mobile IOS app ? Thanks Kind Regards Steen
Posted
by
Post not yet marked as solved
1 Replies
847 Views
Hi, I am currently integrating Apple Pay into a subscription web app. Our payment processor is NMI. Everything is working for individual charges. However, I am unable to get recurring payments to work. I tried to re-charge the initial token but NMI returns "DO NOT HONOR". How do I get access to a rechargeable token? The .onpaymentmethodselected event listener is only returning PaymentMethod: {type: "Credit"}. No token there. I tried to utilize tokenNotificationURL but it seems like the webhook is never being triggered. I setup a custom endpoint on my node.js server and I utilzed Ngrok to tunnel to my localhost. I also tried webhook.site but none of these solutions received anything from apple pay. I also changed the recurring payment interval to "minute" to test if the token would become chargeable again after 60 seconds - which didn't work either. How do I get access to a token that I can re-charge on a monthly basis?
Posted
by
Post not yet marked as solved
1 Replies
555 Views
I'm currently implementing recurring donations for our Apple Pay on the Web integration and I'm trying to figure out what the x-request-id header is on the Get Details of a Merchant Token Event HTTP request. I'm not sure if that's an existing value I'm throwing in there or if it's a generic id I'm just putting in the header for Apple to use. the documentation in question is: Get Details of Merchant Token Event
Posted
by
Post not yet marked as solved
1 Replies
528 Views
I need to add an Apple Pay button in my web reacts typescript App. I need to use checkout.com as the payment gateway. Can you please support with the needed steps: This feature is already successfully implemented via iOS app, but I am having trouble finding detailed documentations on how to achieve this via web
Posted
by
Post not yet marked as solved
3 Replies
894 Views
Want to enable Apple pay for web. I have a processing certificate and also verified my merchant domain . I not able create merchant identify certificate. Under the below section : Apple Pay Merchant Identity Certificate -> Create an Apple Pay Merchant Identity Certificate for this Merchant ID. button is greyed /disabled . What am i missing.
Posted
by
Post not yet marked as solved
1 Replies
653 Views
What is the List of supported Web Browsers for Apple Pay on the Web? We were able to do a PoC that starting from IOS 16 the Apple Pay works on Google Chrome, but there is no official documentationt that states about that. Is there any other official statements from apple regarding support of Apple Pay for other browsers than Safari.
Posted
by
Post not yet marked as solved
6 Replies
770 Views
Hi - I am trying to create a Sandbox Tester to test an Apple Pay integration. I completed all the fields, hit the blue CREATE button, get the loading icon - but then nothing happens. Window doesn't close. No error message. But no Sandbox Tester created either. What am I doing wrong? Thanks so much for your help!! Best, Oliver
Posted
by
Post not yet marked as solved
1 Replies
553 Views
I am currently implementing Apple Pay and would like to display the terms/agreement for each recurring product in a list of many. I understand that there is support for one recurring product, but not more than one. Is this possible or are there plans to implement this? Our backend is handling the recurring payments so I just need to display multiple billing agreements. There is a very similar question posted recently here
Posted
by
Post marked as solved
2 Replies
498 Views
Hi, i was integrating apple pay web. I have used my sandbox test id, generated processing certificate and merchant certificate, and finished session.onvalidatemerchant this step with return merchantSession successfully. The current situation is : For the MacOS safari, it continuously throw Payment Not Completed and can't trigger session.onpaymentmethodselected . and when check event returned from session.oncancel. => {"isTrusted":true} Can somebody guid me through it? Note : I'm trying to check it on local machine and on staging server the same issue
Posted
by
Post not yet marked as solved
0 Replies
274 Views
Hello, do you have sample implementation codes for a multi-merchant request for apple pay? My scenario is I have 2 different merchant identifiers. I tried the multiTokenContexts approach but I can't proceed on the onpaymentauthorized event. Seems like multiTokenContexts only works with the same merchantIdentifier. Thanks.
Posted
by
Post not yet marked as solved
1 Replies
448 Views
Hi. When I pass the response from my merchant validation to completeMerchantValidation(merchantSession) nothing happens the payment sheet still just spins as processing. I was ecpecting it to change to thumb print etc.. to move onto the next stage. I'm getting no errors and get a unique session id returned everytime in a format like SSH0D4F440DD640424BB09A9868BE0A0EC7_916523AAED1343F5BC5815E12BEE9250AFFDC1A17C46B0DE5A943F0F94927C24 I am including merchantIdentifier domainName displayName merchantIdentifier and domainName match exactly as per my account displayName I just entered random I have placed debug alert just before completeMerchantValidation(merchantSession) and can see the session id if the apple server responds with a session id like above can there be anything else going wrong? I mean would it still return the session id if it doesn't verifiy the certificate etc? Please advise Jason
Posted
by