Payment Card Industry (PCI) compliance is a set of security standards established by the major payment providers like Visa and Mastercard. PCI Compliance is to store, retrieve, and transform card holder data securely during the payment process. Organizations that process payments using customers’ card data are required to comply with PCI standards.
Compliance with PCI is mandatory for businesses that handle customer card data, and failure to comply can result in huge penalties, fines, damage to the organization reputation, negative impact on the stock value, facing legal proceedings.
Pay by Link
Pay by Link is one of the popular solutions available for organizations to mitigate all the above risks. With Pay by Link, organizations can accept payments using payment links. Using the Pay by Link, shoppers can pay / submit the payment information (card data) securely at their convenience. The link takes the shopper to a secure payment page where they can make payment with their preferred payment method. Most of the Pay by Link service providers support wide range of payment methods including, Visa, Master Card, Discover, American Express, Apple Pay, Google Pay, Samsung Pay, Alipay, PayPal, Venmo, Gift Card’s, ACH Direct Deposit etc.…
Enabling Pay by Link in Call Center App
Pay by Link is commonly used in call centers applications as a way of securely capturing customers’ payment details. The Call Center Associate generates a link and emails the link to the customer for them to complete the purchase. This removes the need to read card details over the phone, which is a payments security minefield. Pay By Link can be integrated with Chatbots to share a link to the customer.
Configuring Pay By Link
Organizations can define their own rules when they generate Pay by Link for their customers like, Logo, Pay with a single payment method, Link validity, currency, etc.…
Organizations need to add terms and conditions before generating Pay by Link URL’s. Organizations can interact with Pay by link service providers sales team to do the initial setup and to create users with different roles. Once the account is setup in the System, users can login to their accounts to complete the setup.
Example:
Adyen supports both Test and Live accounts for users/admins to setup their accounts.
Pay By Link’s can be generated in different ways like implementing API Integrations, logging to Customer Area, and generating links, or using iOS App.
Link expiry and reusability
By default, payment links expire after 24 hours. Organizations can extend the expiry of the payment link when the link gets created.
After a shopper makes a successful payment, anyone accessing the same link will display a message “You have already paidâ€. For some use cases, for example when accepting donations, business might want to override the default behavior so that Organizations can give out the same link to multiple shoppers. Business can override the default payment link expiry and non-reusability when the link gets created.
General Flow
Pay by Link through the API
Below is an example of Adyen Pay by Link process flow.
Step 1: Create a payment link
Make a POST /paymentLinks request specifying the following information:
merchantAccount: the name of your merchant account.
reference: your identifier for the transaction.
amount: the currency and value in minor units.
Sample Request
String xApiKey = “YOUR_API_KEYâ€;
Client client = new Client(xApiKey,Environment.TEST);
var paymentLinks = new PaymentLinks(client);
var createPaymentLinkRequest = new CreatePaymentLinkRequest();
var amount = new Amount();
amount.setCurrency(“EURâ€);
amount.setValue(4200L);
createPaymentLinkRequest.setAmount(amount);
createPaymentLinkRequest.setReference(“YOUR_PAYMENT_REFERENCEâ€);
createPaymentLinkRequest.setShopperReference(“YOUR_SHOPPER_REFERENCEâ€);
createPaymentLinkRequest.setDescription(“Blue Bag – ModelM671â€);
createPaymentLinkRequest.setCountryCode(“NLâ€);
createPaymentLinkRequest.setMerchantAccount(“YOUR_MERCHANT_ACCOUNTâ€);
createPaymentLinkRequest.setShopperLocale(“nl-NLâ€);
var response = paymentLinks.create(createPaymentLinkRequest);
Â
Sample Response
{
 “amountâ€: {
     “currencyâ€: “EURâ€,
     “valueâ€: 4200
 },
 “countryCodeâ€: “NLâ€,
 “descriptionâ€: “Blue Bag – ModelM671â€,
 “expiresAtâ€: “2020-07-25T11:32:20Zâ€,
 “idâ€: “PL50C5F751CED39G71â€,
 “merchantAccountâ€: “YOUR_MERCHANT_ACCOUNTâ€,
 “referenceâ€: “YOUR_PAYMENT_REFERENCEâ€,
 “shopperLocaleâ€: “nl-NLâ€,
 “shopperReferenceâ€: “YOUR_SHOPPER_REFERENCEâ€,
 “urlâ€: “https://test.adyen.link/PL50C5F751CED39G71â€
}
Â
Step 2: Retrieve the Pay by Link URL from the response object and send it back to the Call Center/Source Caller to display it on the Payment Screen. Automate the backend process to send payment link to the shopper using their preferred method.
Ex: – Email, SMS, Chat, etc…
Step 3: Implement listeners to listen to Adyen payment notifications and process the payment authorizations and payment confirmation updates.
Â
Process Refunds
Adyen Pay by Link supports two different refund mechanisms.
Referenced refund: Referenced refunds are connected to the original payment using the unique identifier of that payment. Adyen supports both full and partial refunds and below is the sample JSON message for full and partial refunds.
Full Refund:
{
   “SaleToPOIRequestâ€:{
       “MessageHeaderâ€:{
           “ProtocolVersionâ€:â€3.0″,
           “MessageClassâ€:â€Serviceâ€,
           “MessageCategoryâ€:â€Reversalâ€,
           “MessageTypeâ€:â€Requestâ€,
           “SaleIDâ€:â€POSSystemID12345″,
           “ServiceIDâ€:â€0207111105″,
           “POIIDâ€:â€V400m-324688179″
       },
       “ReversalRequestâ€:{
           “OriginalPOITransactionâ€:{
               “POITransactionIDâ€:{
                   “TransactionIDâ€:â€BV0q001643892070000.VK9DRSLLRCQ2WN82″,
                   “TimeStampâ€:â€2022-01-31T12:08:45.004Zâ€
               }
           },
           “ReversalReasonâ€:â€MerchantCancelâ€
       }
   }
}
Â
Partial Refund:
{
   “SaleToPOIRequestâ€:{
       “MessageHeaderâ€:{
           “ProtocolVersionâ€:â€3.0″,
           “MessageClassâ€:â€Serviceâ€,
           “MessageCategoryâ€:â€Reversalâ€,
           “MessageTypeâ€:â€Requestâ€,
           “SaleIDâ€:â€POSSystemID12345″,
           “ServiceIDâ€:â€207111108″,
           “POIIDâ€:â€V400m-324688179″
       },
       “ReversalRequestâ€:{
           “OriginalPOITransactionâ€:{
               “POITransactionIDâ€:{
                   “TransactionIDâ€:â€BV0q001643892070000.VK9DRSLLRCQ2WN82″,
                   “TimeStampâ€:â€2022-01-31T12:08:45.004Zâ€
               }
           },
           “ReversalReasonâ€:â€MerchantCancelâ€,
           “ReversedAmountâ€:6.00,
           “SaleDataâ€:{
               “SaleToAcquirerDataâ€:â€currency=EURâ€,
               “SaleTransactionIDâ€:{
                   “TimeStampâ€:â€2022-02-03T15:04:14.004Zâ€,
                   “TransactionIDâ€:â€rev-708″
               }
           }
       }
   }
}
Â
Â
Unreferenced refund: Unreferenced refunds let business return any amount to any card presented to the payment terminal. For example, business can issue a refund to someone who did not make the original payment, such as a gift recipient.
Â
In conclusion, Pay by Link is revolutionizing the way businesses and customers handle transactions. By offering a seamless, secure, and convenient payment option, it not only enhances the customer experience but also streamlines payment processes for businesses. Whether you are a small business looking to simplify your invoicing or a large enterprise aiming to enhance your payment systems, Pay by Link provides a versatile solution that adapts to your organization’s needs.
As digital transactions continue to evolve, adopting innovative solutions like Pay by Link will keep your business ahead of the curve, ensuring that you meet the growing demands of convenience and security from your customers.
Thank you for reading! Stay tuned for more insights and updates on the latest in digital payment solutions.
Â
Source: Read MoreÂ