anchor.diff:  
   * *Kill Bill* - The Kill Bill system
   
  -* *Checkout Servlet* - Plugin servlet that initiates setting up the payment method. 
  +* *Checkout Servlet* - Plugin servlet that initiates setting up the payment method.
   
  -* *Payment Plugin*: https://docs.killbill.io/latest/payment_plugin.html[Kill Bill plugin] corresponding to the payment gateway 
  +* *Payment Plugin*: https://docs.killbill.io/latest/payment_plugin.html[Kill Bill plugin] corresponding to the payment gateway
   
   * *Payment Gateway*: Entity that processes the payment
   
  
positive.code: A *payment method* refers to the end-user's payment details. When an end-user enters his/her payment details (like card information) into a merchant website, these payment details need to be saved in Kill Bill in order for Kill Bill to be able to process recurring payments. Additionally, the payment details may need to be saved within the payment gateway so that the end user does not have to enter their payment details each time. 
  
  The https://github.com/killbill/killbill-api/blob/4ae1c343a593de937415e21feecb9f5405037fa3/src/main/java/org/killbill/billing/payment/api/PaymentApi.java#L541[PaymentApi#addPaymentMethod] is the entry point for saving a payment method in Kill Bill. Thus, a merchant website needs to invoke this method in order to save the payment details as a payment method in Kill Bill.
  
  
negative.code: 
  === Server-side Tokenization Payment Method Flow
  
  Sometimes, a merchant site may collect the card details from the end-user and send them to Kill Bill. In this case, Kill Bill makes a call to the payment gateway to tokenize the card information. However, this approach is used *very rarely* as this requires a merchant website to be *PCI Level 1 compliant*. To know what it takes to be PCI Level 1 compliant, you can read https://medium.com/groupon-eng/payments-groupon-part-1-b17b178441a1[this] article.
  
  The following diagram explains this payment method flow:
  
  