Accepting payments in Xamarin Forms?

Stesvis 1,041 Reputation points


I got to the point where i need to implement payments in my Xamarin Forms app.
The purpose of these payments will be to unlock certain advanced features.

Since I've never done this before, I am wondering:

  1. First of all, should I handle this in the app, or use the backend as middleware?
  2. If you do it in the app, what gateway is better to use, and especially, what implementation is more straight forward in a xamarin forms app?
  3. If you do it in the backend, what would you suggest? Keep in mind it's a .net core 5 backend

Thanks for any advice.

.NET Standard
.NET Standard
A formal specification of .NET APIs that are available on multiple .NET implementations.
506 questions
A Microsoft open-source app platform for building Android and iOS apps with .NET and C#.
5,015 questions
A set of technologies in the .NET Framework for building web applications and XML web services.
3,173 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Michael Wang-MSFT 1,046 Reputation points

    Hi, @Stesvis

    The customer chooses the product or service they want to purchase and proceeds to the payment page. Most payment gateways offer you different options for your payment page.

    Hosted payment page
    A hosted payment page is an out-of-the-box payment page where customers are redirected when they are ready to checkout. The payment gateway securely receives the transaction data before it passes it to the acquirer. A hosted payment page reduces the PCI burden for online merchants if you don’t collect and/ or store the cardholder data on your server.

    Server-to-server integration
    A server to server integration is also known as a direct integration as it enables communication between two servers; the merchant’s server with the payment gateway’s server. By requesting the card details on the payment page, a direct transaction can be initiated. Customers can finalise a card payment without being redirected to the payment page of the payment gateway, resulting in faster checkout, more consistent user experience and more control over the look and feel of the payment page from the merchant’s perspective. A server-to-server integration is suitable if you collect and/ or store the payment data before sending them to the payment gateway for processing.

    Client-side encryption
    Client-side encryption, also known as encryption-at-source refers to encrypting sensitive on the client-side device before sending it to the merchant’s server. This enables the merchant to simplify your PCI compliance requirements. In a nutshell, it enables you to accept payments on your website while encrypting card data in your browser, using the payment gateway’s encryption library.

    You could choose one mdoe for your business needs.

    If the answer is helpful, please click "Accept Answer" and upvote it.
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    Best Regards,
    Michael Wang

    0 comments No comments