Apple Pay in Xamarin.Forms - xamarin

Help me please. How to integrate Apple Pay in Xamarin.Forms? The instruction that is on the Microsoft website does not provide a step-by-step algorithm for implementing this functionality.
Maybe there is a plugin that helps solve this problem? I tried to register at www.judopay.com, as indicated in the Microsoft manual, but no one answered my application.

There is no direct detail tutorial in Xamrarn , however Xamrin provide a Emporium sample and original document from Apple to explain that .
The sample app is comprised of several parts:
CatalogCollectionViewController - a collection view that displays a list of products (parsed from ProductsList.plist)
ProductTableViewController - a detail table view that summarizes a product, and allows the user to buy it using Apple Pay
ConfirmationViewController - a simple confirmation screen to be shown after a successful payment
Hope this sample will be helpful to create your first apple pay application .
In addition , the most important logic is Processing the Payment Token:
Once the user has authenticated to confirm purchase intent, you don’t need to handle their actual credit or debit card numbers. Instead, your app or website receives a payment object containing an encrypted payment token. This token encapsulates the information needed to complete a payment transaction, including the device-specific account number, the amount, and a unique, one-time-use cryptogram. The token can be decrypted by the merchant with the certificate private key or by the Payment Service Provider (PSP) on behalf of the merchant. Once decrypted, the token needs to be passed to the payment service provider for processing.
More info , you can refer to Apple doc here .

Related

Stripe ConfirmCardPayment (frontend) vs paymentintent.Confirm (backend)

When would you choose confirmCardPayment in the front end and when would you choose paymentIntent.Confirm in the backend?
currently our app allows you to checkout as guest, save a credit card if you are not a guest or use a saved card.
All of these flows work without confirmcardpayment on the frontend and without the paymentintent.confirm on the backend
I'm guessing there will be a time where a card payment requires extra authentication and that is when we need to either confirm in the front end or conifrm in the backend? (Also, when/why would a card require extra authentication? New to this space and looking to learn)
Our code pretty much follows this: https://github.com/stripe-samples/saving-card-after-payment/blob/master/without-webhooks/server/go/server.go
PS: The TLDR from the above link is:
Front end:
Creates a paymentmethod with a given card or saved card.
Sends POST /pay API to backend
Backend:
Receives API (validates if user is auth or not - in our case)
Creates a payment intent to be sent to stripe with paymentmethodID from frontend AND customerID gotten from our backend (Stripe's customer id that we created beforehand)
Stripe returns us the paymentmethod with status.
No confirmation on either front.
If same payment method tries to get used for another customer, fails.
If same payment method gets used for same customer (Saved card behavior) it works.
I'm guessing there will be a time where a card payment requires extra authentication and that is when we need to either confirm in the front end or conifrm in the backend?
You need to do this on the frontend because of customer authentication yes. Confirming on the frontend attempts the payment, and the Stripe JS library will also present any additional UI needed like the customer's bank's 3D Secure authentication page.
That is also important for accepting other types of payment methods(which you should, as having more local payment methods in your checkout flow increases customer conversion). E.g., payments using iDEAL require a redirect to the customers bank which again is handled on the client side. https://stripe.com/docs/payments/ideal#payment-flow
(Also, when/why would a card require extra authentication? New to this space and looking to learn)
Pretty much any transaction in Europe and the UK requires 3D Secure authentication right now, and it's only becoming more prevalent worldwide
https://stripe.com/docs/strong-customer-authentication
https://stripe.com/docs/payments/3d-secure
https://support.stripe.com/questions/strong-customer-authentication-sca-enforcement-date
Our code pretty much follows this
The Github link/flow you linked is an alternative way of using Stripe where you attempt the payment on the backend and then need to do a round-trip if authentication is required , but it's generally preferred to use client-side confirmation as it's more scalable for accepting other payment methods. See the notes on
https://stripe.com/docs/payments/accept-a-payment-synchronously

How to edit a card in Braintree's dropin in UI?

I'm using Braintree for my site's payments and it works well except that when a user has selected a payment card from its chrome's history and he/she mistakenly inputs a wrong CVV the Braintree will fail the transaction (when trying to verify) but it saves the credit card and the user cannot edit him/her mistake, and only thing he/she can is to delete the CC using the Braintree's vault manager and re-enter again!
Question:
How can I make drop-in to edit the selected card when the card's verification fails?
Full disclosure: I work at Braintree. If you have any further questions, feel free to contact support.
Vault manager does not allow the ability to edit the CVV (or any values) on the cards saved to the Vault. I can certainly pass this along as a future feature request.
This does not sound like the expected behavior if you are verifying prior to Vaulting in production and have CVV rules enabled to reject if the CVV does not match. If you are running into this error in production, please reach out to our Support team with an example. If this is in sandbox, please ensure you are using a test CVV to trigger the desired response.

Can you store credit card details in the vault, without charging them, with Braintree v.zero?

With the old Braintree API it was possible to just store credit card details in the vault to charge later (for a variable subscription model). Is it possible to do this with their v.zero API? I looked at their documentation and it wasn't clear. It mentions it can do it with Paypal accounts but I'm not sure if this includes credit cards (no Paypal).
Full disclosure: I work at Braintree. If you have any further questions, feel free to contact support.
Yes! When a customer fills out their credit card information in the Drop-in it is processed by the Braintree API. Once complete, the client receives the payment method (i.e. credit card) nonce which should be sent to your server. This nonce can be used for a whole variety of tasks including simply storing in the vault, as you are trying to do:
result = Braintree::PaymentMethod.create(
:customer_id => "131866",
:payment_method_nonce => nonce_from_the_client
)
Steps:
Your client embeds the Drop-in
User fills out data in Drop-in
Client receives Nonce
Client sends Nonce to server
Server uses nonce to create a payment method in the vault
Cheers!

Magento marketplace with vendor payment

I'm using marketplace extension from magentoconnect in my store. This extension is really good and works exactly what i needed it to do but there is 1 particular requirement I need which it doesn't provide.
For vendors, I want payments of each product sale to go directly to vendor's account ( through their credit card etc which they need to add before their product becomes visible ) and commission amount ( some percentage which is set by marketplace through admin panel ) to go to site owner's account. I know there is paypal adaptive payment add-on available with this extension but I don't want to use paypal due to some reasons.
I have tried to create my own module which will gather vendor's payment method after their login and will verify it if their credentials are working or not. But i'm confused as to which approach should i use to get their order payment to go directly in vendor's account and commission in site owner's account right away.
Also, i want to use authorize.net to charge clients as stripe does not support a lot of countries.
Any help in right direction is very much appreciated. I need a solution as to how i can implement it. I can customize or create my own module if needed be for this particular case, but i need to know which is a better approach or what will be close to magento way of doing stuff.
Sorry for my bad english.
Thanks In Advance
Ab.M
Hi Regarding Paypal adaptive payment this thread will help https://www.paypal-community.com/t5/About-Payments/Adaptive-Payments-for-Magento-marketplace/td-p/968101
as authorize.net does not provide marketplace api like stripe or paypal provides so it wouldnt be possible in this way .
PS - we are not self promoting our plugin or product , as user asked the questions specifically about our product that why i have added extension link with images and screenshot

What are CreateToken and StoreToken in SagePay Server V3.0?

We are upgrading our SagePay protocol from v2.23 to 3.0 to support surcharge fees. In v3.0 transaction registration post there are CreateToken and StoreToken which was not in the earlier version. What is the reason for create and store tokens? I went through the document but couldn't find a clue.
The link provided in the above post links to advice by one of our Sage Pay Partners so take a look at it.
Token allows shoppers the option of storing their card details (as a token) to their account on the payment page during their first purchase instead of having to set it up manually afterwards. Single click purchases for repeat customers will become much simpler and quicker to set up.
To view the Token Guide go to here, scroll to the bottom of the screen and select the Download the Documents option within your preferred method of integration (server, server inframe, direct). Within the guide it explains creating and storing a token.
If this is a service you would like enabled on your Sage Pay account our New Business team are available 0900-1800 on 0845 111 4466. Prices for Token are available via here. If you have any other questions, our 24/7 Support team can assist to on 0845 111 4455.
Sage Pay Support.
I believe this is related to their token system, allowing you to store and send card details as a token.
If you don't use their token system you don't need to worry about it.
Sage Pay have destroyed their content recently so it's hard to find anything, here's a quick article on their token system - http://www.metakinetic.com/blog/2013/09/sage-pays-token-system-and-advancements-in-payment-gateways/

Resources