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

140 Posts
Sort by:
Post not yet marked as solved
0 Replies
152 Views
Hello, I created a testing account and added a testing Amex card in my wallet, now I'm trying to test apple pay on my website, but it has very strange behavior, when I click the pay with apple button, popup for choosing cards opens and closes immediately, what can cause this problem and any idea how can I fix it?
Posted Last updated
.
Post not yet marked as solved
0 Replies
129 Views
Last year I started going down the path of getting the Apple Pay, merchant ID and everything setup with my personal AppleID, until I decided to make a corporate ID instead of using my personal. But I had already got the CSR from my merchant provider (authorize.net), and used it to generate a certificate with my personal AppleID.   But now I am trying to get the CSR setup on my corporate account. But it keeps saying "this CSR has already been used". I've spoken with Authorize.net and they are telling me that they cannot give me a new CSR for the new MerchantID I've created. They want me to have you Apple remove the association so I can reuse the CSR.  I tried to say that didn't seem right, but here I am. Anybody ever dealt with this? Can the CSR be disassociated? I have already deleted the merchantID from my personal account.
Posted Last updated
.
Post not yet marked as solved
0 Replies
127 Views
I am goin to create an app and i want to apply apple pay on it. But i have some question about it. Can I transfer the fund that my app collected through Apple pay to my bank account if i am not living in U.S? If can, does I have to paid any fee?
Posted
by dthyyy.
Last updated
.
Post marked as solved
2 Replies
269 Views
Why are we getting the below emails and how can we fix this?? Our certificate expires in 2023 and there have been no organizational changes of any kind.. Dear #####, Your website domain that uses Apple Pay has an SSL certificate that expires on Jun 5, 2022. After automatically trying to reverify your domain, we found that this SSL certificate has not been updated. Your domain is automatically checked 30 days, 15 days, and 7 days before this expiration date. If you have an updated SSL certificate and the domain hasn’t been successfully verified 7 days before expiration, please revalidate it manually by Jun 5, 2022 in Certificates, Identifiers & Profiles to ensure uninterrupted use of Apple Pay on your website.
Posted Last updated
.
Post not yet marked as solved
1 Replies
437 Views
I'm trying to re-verify a domain but I keep getting an error saying "Domain Verification Failed". My questions are Do I need to re-download "apple-developer-merchantid-domain-association.txt"? I checked the contents and it never changed from the first time I verified the domain. I just re-checked the "txt files" again, they were different. Should I remove the domain and register them again? The alert notification I get from apple, about "SSL expiration" is inaccurate. My SSL certificate's expiration is on July but the email I'm getting is it's about to expire on the 16th of April. Any issues on this?
Posted Last updated
.
Post not yet marked as solved
1 Replies
427 Views
We have 2 Merchant Domains expiring on Feb 13. I downloaded the new apple-developer-merchantid-domain-association and placed it one the appropriate servers. When I tell it to verify it doesn't show that it failed, but the Verification Expires date never changes.
Posted Last updated
.
Post not yet marked as solved
0 Replies
128 Views
How many Apple Pay Payment Processing Certificates can be Created for One Merchant Identifier? I created a merchant identifier and would like to use it for all the service providers I need to integrate against (e.g. Stripe, Square). However, I don't want to run into a situation where I can only create a few payment processing certificates. Thanks
Posted
by ksnp.
Last updated
.
Post marked as solved
2 Replies
361 Views
I am implementing a payment integration with Cybersource using Apple Pay. I was able to request a valid merchant session from the Apple Pay Servers and pass it to the completeMerchantValidation function (apple pay on the web). The payment sheet pops up but keeps getting stuck at "processing". After 30-60 seconds an error pops up: "Apple Pay Not Completed. This website was not able to complete the payment. Please try again.". I found one related topic on the Apple forum but the only solution had something to do with the domain (initiativeContext) but I doubled checked and this was not my problem. Does someone has any idea why this is not working? I am trying to figure out why it is stuck at processing for days now but I can't find anything...
Posted Last updated
.
Post not yet marked as solved
0 Replies
135 Views
Hello Applepay, This questions is about Domains and Subdomains using a Multi-Tenant web applications. The problem is that we use the same (HTTPS://T2MPOF.COM) in our production environment for all customers, so that when the customer setups up the Merchant ID in their Apple Developer Account the verification URL will always be the same: HTTPS://T2MPOF.COM/.well-known/apple-developer-merchantid-domain-association.txt. However, the content of that file will be different for each customer and Apple Pay will periodically verify that file. We need a supported approach to get around this issue, and have been told that there is a possibility of using subdomains. We are looking for a recommended approach that will work and is supported by Apple and if there is any risks associated with this approach.
Posted Last updated
.
Post not yet marked as solved
0 Replies
174 Views
Hi All, I'm trying to verify a domain but I only see the message "Domain verification failed." no other details. From my nginx server log I can see that the file apple-developer-merchantid-domain-association.txt is perfectly reachable 17.179.144.195 - - [19/May/2022:14:01:28 +0200] e948efdd5079b3dcfe8a5f2deddc9279 "GET /.well-known/apple-developer-merchantid-domain-association.txt HTTP/1.0" 200 5673 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/601.7.7 (KHTML%2C like Gecko) Version/9.1.2 Safari/601.7.7" "17.179.144.195" Could someone suggest me from where to start debugging such situation? Thanks in advance Accursio
Posted
by accursio.
Last updated
.
Post not yet marked as solved
0 Replies
130 Views
Hi, I am using AWS ec2 Linux instance with nginx I pasted .well-known and content file in this directory, This directory is available in site package path. directory has full permission whitelisted all apple IPs which are mentioned in doc but when i am browsing the url https://{domain}/.well-known/apple-developer-merchantid-domain-association its showing No webpage was found for the web address: https://{domain}/.well-known/apple-developer-merchantid-domain-association HTTP ERROR 404 and any file is not downloading as I read apple pay doc where mentioned that if you browse the url you will see a file download start. It means domain verification is done Can someone help me regarding this issue Thank you in advance
Posted
by rajan_n.
Last updated
.
Post not yet marked as solved
4 Replies
1.2k Views
Hi, We have a public website using Apple Pay with the JS Library. We use Adyen as payment gateway and Avalara to calculate taxes. We've recently discovered a lot of errors in regards of ApplePay token amount-mismatch errorType error. This mean the amount authorized by ApplePay does not match the amount sent to Adyen for authorization. Here's the root cause: Applepay only reports full address including address line 1 after  user authorizes the transaction with ApplePay using the session.onshippingcontactselected event. At this point we only have the following - City, Region, Country, Zip So, the total order value is based on what Avalara reports the tax is using these fields. For an example order using this zip code 94534, the tax is calculated as $1.84 at this point. After we receive the authorization from Applepay, we also receive the full address. This address is then sent to the backend to recalculate the cart (including tax). This is just before calling Adyen API For this specific cart, since now the Address has AddressLine1, the zip code (94534) along with address line 1 results in a different tax from Avalara ($2.09) So, the cart total is more than the amount that was authorized in Applepay token. This could easily be solved if we can make Apple Pay to return the AddressLine1 from the initial callback to session.onshippingcontactselected, this would solve our problems. Is there a way to force the call to session.onshippingcontactselected to return the AddressLine1 field as part of the response? Is there any work around for this? Thanks and Regards
Posted Last updated
.
Post not yet marked as solved
0 Replies
131 Views
I've unsuccessfully managed to login to my test device with users created in App Store Connect. That is to say, I can login using the email/password I set up (with the sign in to iOS option in settings), but it asks me to setup full security and it appears to be changing it to a full account? I've been reading this page: https://developer.apple.com/apple-pay/sandbox-testing/ I'm not sure if this is out of date because I cannot add any of the test cards when I do this. Also I saw https://developer.apple.com/documentation/storekit/in-app_purchase/testing_in-app_purchases_with_sandbox which says you have to initiate an in-app purchase first before being able to see sandbox options. Would this count for Apple Pay payments too? As a web developer, I want to test the Apple Pay functionality, so this seems to be a very over the top way of reaching sandbox functionality. Previously, I just logged in with a sandbox user, added test cards and then they'd appear on my web site. In iOS 15 this doesn't seem to be the case.
Posted Last updated
.
Post not yet marked as solved
0 Replies
159 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 Last updated
.
Post not yet marked as solved
1 Replies
295 Views
Hi all, I have a merchant id certificate (.cer format), and I'm trying to send such a request via postman: POST https://apple-pay-gateway.apple.com/paymentservices/paymentSession {     "merchantIdentifier": "merchant.ecom.zain.sa",     "displayName": "Zain",     "initiative": "web",     "initiativeContext": "merchant.ecom.zain.sa" } In the response I have `Error: error:0900006e:PEM routines:OPENSSL_internal:NO_START_LINE` Could you tell me if I'm doing something wrong, and do I even have an option to validate the Apple Pay session via Postman on Windows?
Posted
by olegnysss.
Last updated
.
Post not yet marked as solved
1 Replies
154 Views
How to prevent Apple Pay tokens from being used a second time? After getting PKPaymentToken in my app. I am passing the payment information to my web server and from my web server am sending to the payment platform. It works well. For testing, I send again this token to the payment platform. It works but it should be avoided.
Posted Last updated
.