code: def process(self, request, item):
          
          warn_untested()
          from paypal.pro.helpers import PayPalWPP
  
          wpp = PayPalWPP(request)
          params = self.cleaned_data
          params['creditcardtype'] = self.fields['acct'].card_type
          params['expdate'] = self.cleaned_data['expdate'].strftime("%m%Y")
          params['ipaddress'] = request.META.get("REMOTE_ADDR", "")
          params.update(item)
  
          try:
              # Create single payment:
              if 'billingperiod' not in params:
                  wpp.doDirectPayment(params)
              # Create recurring payment:
              else:
                  wpp.createRecurringPaymentsProfile(params, direct=True)
          except PayPalFailure:
              return False
          return True
docs: Process a PayPal direct payment.