def profile_delete(request): """ ProfileDelete (transaction = profileDelete) Fields: customerNumber (R) """ args = Args(request) cred = Credentials(args.merchant_id) profile = Profile( merchant_id=args.merchant_id, username=cred.username, password=cred.password, production=cred.production, ident=args.customer_num ) return profile.destroy()
def profile_update(request): """ ProfileUpdate (transaction = profileUpdate) ??? or profileupdate Fields: customerName (R) * customerNumber (R) merchantGroupNumber (R) customerAddress1 (N) customerAddress2 (N) customerCity (N) customerState (N) customerZip (N) orderDefaultDescription (N) orderDefaultAmount (N) creditCardNumber (R) * creditCardExpiration (R) * * Required by CCQFM, but not by Chase Sample Call: ?merchantGroupNumber=700000005942&transaction=profileupdate&customerName=Test&customerNumber=14494063&customerAddress1=112+Main+Street&customerAddress2=Apt2&customerCity=Mineola&customerState=NY&customerZip=11540&orderDefaultAmount=100.00&creditCardNumber=5105105105105100&creditCardExpiration=201212 """ args = Args(request) cred = Credentials(args.merchant_id) profile = Profile( merchant_id=args.merchant_id, username=cred.username, password=cred.password, production=cred.production, ident=args.customer_num, name=args.name, address1=args.address1, address2=args.address2, city=args.city, state=args.state, zipCode=args.zipcode, cc_num=args.cc_num, cc_expiry=args.cc_expiry ) result = profile.update() result_dict = OrderedDict() result_dict['customerRefNum'] = result['CustomerRefNum'] result_dict['profileAction'] = result['CustomerProfileAction'] result_dict['procStatus'] = result['ProfileProcStatus'] result_dict['procStatusMessage'] = result['CustomerProfileMessage'] return format_response(result_dict)
def profile_add(request): """ ProfileAdd (transaction = profileAdd) Fields: customerName (R) customerNumber (C) merchantGroupNumber (R) customerAddress1 (N) customerAddress2 (N) customerCity (N) customerState (N) customerZip (N) orderDefaultDescription (N) orderDefaultAmount (N) creditCardNumber (R) creditCardExpiration (R) Sample Call: ?merchantgroupnumber=700000005942&transaction=profileadd&customername=test&customernumber=234&customeraddress1=112Main+Street&customeraddress2=Apt+2&customercity=Mineola&customerstate=NY&customerzip=11540&orderdefaultamount=100.00&creditcardnumber=5105105105105100&creditcardexpiration=201212 """ args = Args(request) cred = Credentials(args.merchant_id) profile = Profile( merchant_id=args.merchant_id, username=cred.username, password=cred.password, production=cred.production, name=args.name, address1=args.address1, address2=args.address2, city=args.city, state=args.state, zipCode=args.zipcode, cc_num=args.cc_num, cc_expiry=args.cc_expiry ) result = profile.create() result_dict = OrderedDict() result_dict["customerRefNum"] = result["CustomerRefNum"] result_dict["profileAction"] = result["CustomerProfileAction"] result_dict["procStatus"] = result["ProfileProcStatus"] result_dict["procStatusMessage"] = result["CustomerProfileMessage"] return format_response(result_dict)
def profile_retrieval(request): """ ProfileRetrieval (transaction = profileRetrieval) Fields: customerName (R) customerNumber (R) merchantGroupNumber (R) Sample Call: ?merchantgroupnumber=700000005942&transaction=profileretrieval&customername=test&customernumber=14494063 """ args = Args(request) cred = Credentials(args.merchant_id) profile = Profile( merchant_id=args.merchant_id, username=cred.username, password=cred.password, production=cred.production, ident=args.customer_num ) result = profile.read() result_dict = OrderedDict() result_dict['customerRefNum'] = result['CustomerRefNum'] result_dict['profleAction'] = result['CustomerProfileAction'] result_dict['procStatus'] = result['ProfileProcStatus'] result_dict['procStatusMessage'] = result['CustomerProfileMessage'] result_dict['customerName'] = result['CustomerName'] result_dict['Address'] = result['CustomerAddress1'] result_dict['Address2'] = result['CustomerAddress2'] result_dict['City'] = result['CustomerCity'] result_dict['State'] = result['CustomerState'] result_dict['ZIP'] = result['CustomerZIP'] result_dict['Email'] = result['CustomerEmail'] result_dict['Phone'] = result['CustomerPhone'] result_dict['cardNum'] = result['CCAccountNum'] expiry = result['CCExpireDate'] if expiry and len(expiry) >= 4: (exp_mo, exp_yr) = (expiry[:2], expiry[-2:]) result_dict['ExpDate'] = "20%s%s" % (exp_yr, exp_mo) return format_response(result_dict)