def AuthorizeAndCapture(base_url, SessionToken, ServiceId, AppConfig=False, assertions=None, **kwargs): request_template = copy.deepcopy(getattr(TPSSchema, "Authorize")) body = setReq(request_template, **kwargs) if AppConfig is False: #Checks if AppConfigData is set for eServices relating to EMV Data del body["Transaction"]["ApplicationConfigurationData"] del body["Transaction"]["TenderData"]["EMVData"] body[ "$type"] = "AuthorizeAndCaptureTransaction,http://schemas.evosnap.com/CWS/v2.0/Transactions/Rest" url = base_url + "TPS.svc/" + ServiceId try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "AuthorizeAndCapture") r.raise_for_status() print("--AuthorizeAndCapture returned successful") logger.LogAssertions(assertor.assertor(r, assertions)) return json.loads(r.text) except requests.exceptions.HTTPError as Error: print("--AuthorizeAndCapture Returned Error: %s." % Error) return
def Resubmit(base_url, SessionToken, ServiceId, TxnGUID, **kwargs): if TxnGUID == None: return kwargs["TransactionId"] = TxnGUID request_template = copy.deepcopy(getattr(TPSSchema, "Resubmit")) body = setReq(request_template, **kwargs) if "PaymentAuthorizationResponse" in kwargs.keys( ): #If PaRes is passed in request, change type to 3Dsecure Resubmit body["Transaction"][ "$type"] = "Resubmit3DSecure,http://schemas.evosnap.com/CWS/v2.0/Transactions/Bankcard" url = base_url + "TPS.svc/" + ServiceId try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "Resubmit") r.raise_for_status() print("--Resubmit returned successful") return json.loads(r.text)["TransactionId"] except requests.exceptions.HTTPError as Error: print("--Resubmit Returned Error: %s." % Error) return
def GetApplicationData(base_url, SessionToken, AppProfileId): url = base_url + "SIS.svc/appProfile/" + AppProfileId try: r = requests.get(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetApplicationData") r.raise_for_status() print("--Applicationdata Returned") except requests.exceptions.HTTPError as Error: print("--GetApplicationData Returned Error: %s." % Error) return
def GetUserExpiration(base_url, Username, Password, ServiceKey): url = base_url + "SIS.svc/user/" + Username + "/expiration?ServiceKey=" + ServiceKey try: r = requests.get(url, auth=HTTPBasicAuth(Username, Password), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetUserExpiration") r.raise_for_status() print("--GetUserExpiration successful.", r.text) except requests.exceptions.HTTPError as Error: print("--GetUserExpiration Returned Error: %s." % Error) return
def ListRoleClaims(base_url, SessionToken, roleName): url = base_url + "Administration.svc/roles/" + roleName + "/claims" try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "ListRoleClaims") r.raise_for_status() print("--Retrieved RoleClaims") except requests.exceptions.HTTPError as Error: print("--ListRoleClaims Returned Error: %s." % Error) return
def GetAvailableSecurityQuestions(base_url, Username, Password, ServiceKey): url = base_url + "SIS.svc/availablesecurityQuestions?serviceKey=" + ServiceKey try: r = requests.get(url, auth=HTTPBasicAuth(Username, Password), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetAvailableSecurityQuestions") r.raise_for_status() print("--GetAvailableSecurityQuestions successful.", r.text) except requests.exceptions.HTTPError as Error: print("--GetAvailableSecurityQuestions Returned Error: %s." % Error) return
def AddRegionToUserCredential(base_url, SessionToken, userGuid, regionName): url = base_url + "Administration.svc/users/" + userGuid + "/addRegion/" + regionName try: r = requests.put(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "AddRegionToUserCredential") r.raise_for_status() print("--Region added to User") except requests.exceptions.HTTPError as Error: print("--AddRegionToUserCredential Returned Error: %s." % Error) return
def GetChildRoles(base_url, SessionToken): url = base_url + "Administration.svc/childRoles" try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetChildRoles") r.raise_for_status() print("--Retrieved ChildRoles") except requests.exceptions.HTTPError as Error: print("--GetChildRoles Returned Error: %s." % Error) return
def GetServiceInformation(base_url, SessionToken): url = base_url + "SIS.svc/serviceInformation" try: r = requests.get(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetServiceInformation") r.raise_for_status() print("--GetServiceInformation returned successfully") except requests.exceptions.HTTPError as Error: print("--GetServiceInformation Returned Error: %s." % Error) return
def Ping(base_url, SessionToken): url = base_url + "TPS.svc/ping" try: r = requests.get(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "Ping") r.raise_for_status() print("--Ping returned successful") except requests.exceptions.HTTPError as Error: print("--Ping Returned Error: %s." % Error) return
def GetMerchantProfile(base_url, SessionToken, MerchantProfileId, ServiceId): url = base_url + "SIS.svc/merchProfile/" + MerchantProfileId + "?serviceId=" + ServiceId try: r = requests.get(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetMerchantProfile") r.raise_for_status() print("--GetMerchantProfile returned Profile:", MerchantProfileId) print(r.text) except requests.exceptions.HTTPError as Error: print("--GetMerchantProfile Returned Error: %s." % Error) return
def RequestPasswordReset(base_url, Username, ServiceKey): url = base_url + "SIS.svc/user/" + Username + "/passwordreset?ServiceKey=" + ServiceKey try: r = requests.get(url, auth=HTTPBasicAuth(Username, ""), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "RequestPasswordReset") r.raise_for_status() print("--RequestPasswordReset successful.", r.text) return json.loads(r.text)["SecurityQuestionToken"] except requests.exceptions.HTTPError as Error: print("--RequestPasswordReset Returned Error: %s." % Error) return
def SignOnWithUsernamePassword(base_url, Username, Password, ServiceKey): url = base_url + "SIS.svc/user?servicekey=" + ServiceKey try: r = requests.get(url, auth=HTTPBasicAuth(Username, Password), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "SignOnWithUsernamePassword") r.raise_for_status() print("--Signed On Successfully with Username/Password.") return json.loads(r.text) except requests.exceptions.HTTPError as Error: print("--SignOnWithUsernamePassword Returned Error: %s." % Error) return
def SignOnWithToken(base_url, IdentityToken): url = base_url + "SIS.svc/token" try: r = requests.get(url, auth=HTTPBasicAuth(IdentityToken, ""), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "SignOnWithToken") r.raise_for_status() print("--Signed On Successfully.") return r.text[1:-1] except requests.exceptions.HTTPError as Error: print("--SignOn Returned Error: %s." % Error) return
def GetMerchantProfiles(base_url, SessionToken): url = base_url + "SIS.svc/merchProfile" try: r = requests.get(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetMerchantProfiles") r.raise_for_status() print("--GetMerchantProfiles returned", len(json.loads(r.text)), "Merchant Profiles") except requests.exceptions.HTTPError as Error: print("--GetMerchantProfiles Returned Error: %s." % Error) return
def DeleteSubscription(base_url, SessionToken, SubscriptionReferenceId, MerchantProfileId): url = base_url + "DataServices/CMS.svc/subscriptions/" + MerchantProfileId + "/" + SubscriptionReferenceId try: r = requests.delete(url, auth=HTTPBasicAuth(SessionToken, ''), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "DeleteSubscription") r.raise_for_status() print("--Subscription Deleted") except requests.exceptions.HTTPError as Error: print("--DeleteSubscription Returned Error: %s." % Error) return
def SendReceipt(base_url, SessionToken, TxnGUID, Email): url = base_url + "TPS.svc/sendReceipt" body = {"TransactionId": TxnGUID, "Email": Email} try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "SendRecipt") r.raise_for_status() print("--SendReceipt returned successful") except requests.exceptions.HTTPError as Error: print("--SendReceipt Returned Error: %s." % Error) return
def UpdateUser(base_url, SessionToken, UserGuid, **kwargs): request_template = copy.deepcopy(getattr(AdminSchema, "UndateUser")) body = setReq(request_template, **kwargs) url = base_url + "Administration.svc/users/" + UserGuid + "/update" try: r = requests.put(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "UpdateUser") r.raise_for_status() print("--User Updated") except requests.exceptions.HTTPError as Error: print("--UpdateUser Returned Error: %s." % Error) return
def CreateUser_Secure(base_url, SessionToken, **kwargs): request_template = copy.deepcopy(getattr(AdminSchema, "UserInfo")) body = setReq(request_template, **kwargs) url = base_url + "TLS/REST/SecureMessaging.svc/users/create" try: r = requests.put(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "CreateUser") r.raise_for_status() print("--User Created") except requests.exceptions.HTTPError as Error: print("--CreateUser Returned Error: %s." % Error) return
def GetMerchants(base_url, SessionToken, **kwargs): request_template = copy.deepcopy(getattr(AdminSchema, "GetMerchants")) body = setReq(request_template, **kwargs) url = base_url + "Administration.svc/merchants" try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "GetMerchants") r.raise_for_status() print("--Retrieved Merchants") except requests.exceptions.HTTPError as Error: print("--GetMerchants Returned Error: %s." % Error) return
def SaveApplicationData(base_url, SessionToken, **kwargs): request_template = copy.deepcopy(getattr(SISSchema, "ApplicationData")) body = setReq(request_template, **kwargs) url = base_url + "SIS.svc/appProfile" try: r = requests.put(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body[0], sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "SaveApplicationData") r.raise_for_status() print("--Applicationdata Saved") except requests.exceptions.HTTPError as Error: print("--SaveApplicationData Returned Error: %s." % Error) return
def QueryBatch(base_url, SessionToken, **kwargs): request_template = copy.deepcopy(getattr(TMSSchema, "QueryBatch")) body = setQueryReq(request_template, **kwargs) url = base_url + "DataServices/TMS.svc/batch" try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "QueryBatch") r.raise_for_status() print("--QueryBatch returned successful") except requests.exceptions.HTTPError as Error: print("--QueryBatch Returned Error: %s." % Error) return
def ChangeEmail(base_url, Username, Password, ServiceKey, NewEmail): url = base_url + "SIS.svc/user/" + Username + "?ServiceKey=" + ServiceKey body = {"Email": NewEmail} try: r = requests.put(url, data=json.dumps(body), auth=HTTPBasicAuth(Username, Password), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "ChangeEmail") r.raise_for_status() print("--ChangeEmail Successfully to", NewEmail) return except requests.exceptions.HTTPError as Error: print("--ChangeEmail Returned Error: %s." % Error) return
def DelegatedSignOn(base_url, DelegatedSK, IdentityToken): url = base_url + "SIS.svc/delegated" body = {"onBehalfOfServiceKey": DelegatedSK} try: r = requests.post(url, data=json.dumps(body), auth=HTTPBasicAuth(IdentityToken, ""), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "DelegatedSignOn") r.raise_for_status() print("--DelegatedSigned On Successfully.") return json.loads(r.text) except requests.exceptions.HTTPError as Error: print("--DelegatedSignOn Returned Error: %s." % Error) return
def SaveSecurityQuestions(base_url, Username, Password, ServiceKey, securityAnswers): url = base_url + "SIS.svc/user/" + Username + "?ServiceKey=" + ServiceKey body = {"securityAnswers": securityAnswers} try: r = requests.put(url, auth=HTTPBasicAuth(Username, Password), data=json.dumps(body), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "SaveSecurityQuestions") r.raise_for_status() print("--SaveSecurityQuestions Successfully") return except requests.exceptions.HTTPError as Error: print("--SaveSecurityQuestions Returned Error: %s." % Error) return
def RequestKey(base_url, SessionToken, ServiceId, **kwargs): request_template = copy.deepcopy(getattr(TPSSchema, "RequestKey")) body = setReq(request_template, **kwargs) url = base_url + "TLS/REST/SecureMessaging.svc/" + ServiceId try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "RequestKey") r.raise_for_status() print("--RequestKey returned successful") except requests.exceptions.HTTPError as Error: print("--RequestKey Returned Error: %s." % Error) return
def RemoveMerchantFromUserCredential(base_url, SessionToken, userGuid, **kwargs): request_template = copy.deepcopy( getattr(AdminSchema, "AddMerchantToUserCredential")) body = setReq(request_template, **kwargs) url = base_url + "Administration.svc/users/" + userGuid + "/removeMerchant" try: r = requests.put(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "RemoveMerchantFromUserCredential") r.raise_for_status() print("--Merchant removed from User") except requests.exceptions.HTTPError as Error: print("--RemoveMerchantFromUserCredential Returned Error: %s." % Error) return
def SubmitSubscription(base_url, SessionToken, **kwargs): request_template = copy.deepcopy(getattr(CMSSchema, "SubmitSubscription")) body = setReq(request_template, **kwargs) url = base_url + "DataServices/CMS.svc/subscriptions/" + kwargs[ "MerchantProfileId"] try: r = requests.post(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "SubmitSubscription") r.raise_for_status() print("--Subscription Saved") return r.text except requests.exceptions.HTTPError as Error: print("--SubmitSubscription Returned Error: %s." % Error) return
def Adjust(base_url, SessionToken, ServiceId, TxnGUID, **kwargs): if TxnGUID == None: return request_template = copy.deepcopy(getattr(TPSSchema, "Adjust")) body = setReq(request_template, **kwargs) url = base_url + "TPS.svc/" + ServiceId + "/" + TxnGUID try: r = requests.put(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "Adjust") r.raise_for_status() print("--Adjust returned successful") return json.loads(r.text)["TransactionId"] except requests.exceptions.HTTPError as Error: print("--Adjust Returned Error: %s." % Error) return
def SaveMerchantProfiles(base_url, SessionToken, **kwargs): request_template = copy.deepcopy(getattr(SISSchema, "SaveMerchantProfiles")) body = setReq(request_template[0], **kwargs) MerchantProfileId = body[0]["ProfileId"] ServiceId = body[0]["ServiceId"] url = base_url + "SIS.svc/merchProfile?serviceId=" + ServiceId try: r = requests.put(url, auth=HTTPBasicAuth(SessionToken, ''), data=json.dumps(body, sort_keys=True), headers={"content-type": "application/json"}, verify=False) logger.Log(r, "SaveMerchantProfiles") r.raise_for_status() print("--MerchantProfile Saved:", MerchantProfileId) return MerchantProfileId, ServiceId except requests.exceptions.HTTPError as Error: print("--SaveMerchantProfiles Returned Error: %s." % Error) return