diff --git a/.gitignore b/.gitignore index a9151c0..2c98a39 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ .Python env/ +venv/ build/ develop-eggs/ dist/ diff --git a/.travis.yml b/.travis.yml index 82bb242..68b1b43 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,6 +7,7 @@ python: - "3.7" - "3.9" - "3.11" + - "3.12" - "pypy" install: - pip install -r requirements-dev.txt diff --git a/README.md b/README.md index 461252c..1268c04 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ $ pip install efipay ``` ## Tested with ``` -python 3.11 +python 3.12 ``` ## Basic usage diff --git a/efipay/endpoints.py b/efipay/endpoints.py index 6314d3a..5a3e6ab 100644 --- a/efipay/endpoints.py +++ b/efipay/endpoints.py @@ -2,22 +2,22 @@ from __future__ import unicode_literals from six import iteritems - import json import re import requests -import inspect import base64 import os +from functools import partial from .constants import Constants -from .exceptions import MissingParametersError -from .exceptions import UnauthorizedError -from .exceptions import EndpointError -from .exceptions import CertificateError -from .version import * +from .exceptions import ( + MissingParametersError, + UnauthorizedError, + EndpointError, + CertificateError +) +from .version import VERSION -from functools import partial class Endpoints(object): @@ -25,9 +25,18 @@ def __init__(self, options): super(Endpoints, self).__init__() self.token = None self.options = options - - def __getattr__(self, name): - + self.endpoints = {} + self.cert = False + + # seletor de ambiente (sandbox ou produção) + self.urls = { + 'production': 'https://api.efipay.com.br/v1', + 'sandbox': 'https://api.efipay.com.br/v1' + } + use_sandbox = options.get('sandbox', False) + self.base_url = self.urls['sandbox'] if use_sandbox else self.urls['production'] + + def __getattr__(self, name): apis = Constants.APIS api_names = ['PIX', 'OPEN-FINANCE', 'PAYMENTS', 'OPENING-ACCOUNTS', 'STATEMENT'] @@ -36,141 +45,152 @@ def __getattr__(self, name): self.endpoints = apis[api_name]['ENDPOINTS'] self.urls = apis[api_name]['URL'] self.cert = True - break - - if name in Constants.APIS['CHARGES']['ENDPOINTS']: - self.endpoints = Constants.APIS['CHARGES']['ENDPOINTS'] - self.urls = Constants.APIS['CHARGES']['URL'] + self.set_base_url() + return partial(self.request, self.endpoints[name]) + + if name in apis['CHARGES']['ENDPOINTS']: + self.endpoints = apis['CHARGES']['ENDPOINTS'] + self.urls = apis['CHARGES']['URL'] self.cert = False - - self.get_url() - return partial( self.request, self.endpoints[name]) - + self.set_base_url() + return partial(self.request, self.endpoints[name]) - def request(self, settings, **kwargs): + raise AttributeError("'{0}' object has no attribute '{1}'".format(self.__class__.__name__, name)) + + def set_base_url(self): + use_sandbox = self.options.get('sandbox', False) + self.base_url = self.urls['sandbox'] if use_sandbox else self.urls['production'] - if(self.base_url == ""): - return EndpointError(404) + def request(self, settings, **kwargs): + if not self.base_url: + raise EndpointError(404) oauth = self.authenticate() - if(oauth == 200): - params = {} if 'params' not in kwargs else kwargs['params'] - body = {} if 'body' not in kwargs else kwargs['body'] - headers = {} if 'headers' not in kwargs else kwargs['headers'] + if oauth == 200: + params = kwargs.get('params', {}) + body = kwargs.get('body', {}) + headers = kwargs.get('headers', {}) response = self.send(settings, params, body, headers) try: - response.json() return response.json() - except: - if(response and response.text != ''): - msg = '{\'code\': ' + str(response.status_code) + ', \'content\': \'' + response.text + '\'}' - return msg - else: - return '{\'code\': ' + str(response.status_code) + '}' - elif(oauth == 404): - return CertificateError(404) + except Exception: + if response is not None and response.text: + return { + 'code': response.status_code, + 'content': response.text + } + return {'code': response.status_code} + + elif oauth == 404: + raise CertificateError(404) else: - return UnauthorizedError(oauth) - + raise UnauthorizedError(oauth) - def send(self, settings, params, body, headersComplement): + def send(self, settings, params, body, headers_complement): url = self.build_url(settings['route'], params) - if(self.cert): - headers = { - 'Authorization': 'Bearer {token}'.format(token=self.token['access_token']), - 'Content-Type': 'application/json', - 'api-sdk': 'efi-python-{v}'.format(v=VERSION) - } - - for (key,value) in headersComplement.items(): - headers[key] = value - - if 'partner_token' in self.options: - headers['partner-token'] = self.options['partner_token'] - cert=self.options['certificate'] - return requests.request(settings['method'],url, headers=headers, data=json.dumps(body), cert=cert) + headers = { + 'Authorization': 'Bearer {0}'.format(self.token['access_token']), + 'api-sdk': 'efi-python-{0}'.format(VERSION), + 'Content-Type': 'application/json' + } + + headers.update(headers_complement) + + if 'partner_token' in self.options: + headers['partner-token'] = self.options['partner_token'] + + if self.cert: + cert = self.options.get('certificate') + return requests.request( + settings['method'], + url, + headers=headers, + data=json.dumps(body), + cert=cert + ) else: - headers = { - 'accept': 'application/json', - 'api-sdk': 'efi-python-{v}'.format(v=VERSION), - 'Authorization': 'Bearer {token}'.format(token=self.token['access_token']) - } - if 'partner_token' in self.options: - headers['partner-token'] = self.options['partner_token'] - return requests.request(settings['method'], url, json=body, headers=headers) + return requests.request( + settings['method'], + url, + headers=headers, + json=body + ) def authenticate(self): - url = self.build_url(self.endpoints['authorize']['route'], {}) - - if(self.cert): - auth = base64.b64encode((f"{self.options['client_id']}:{self.options['client_secret']}").encode()).decode() - payload = "{\r\n \"grant_type\": \"client_credentials\"\r\n}" + url = self.build_url(self.endpoints['authorize']['route'], {}) + + if self.cert: + auth_string = '{0}:{1}'.format( + self.options['client_id'], + self.options['client_secret'] + ) + auth = base64.b64encode(auth_string.encode('utf-8')).decode('utf-8') + payload = json.dumps({"grant_type": "client_credentials"}) + headers = { - 'Authorization': f"Basic {auth}", + 'Authorization': 'Basic {0}'.format(auth), 'Content-Type': 'application/json' } + if 'partner_token' in self.options: headers['partner-token'] = self.options['partner_token'] - cert=self.options['certificate'] - if(os.path.exists(cert)): + + cert = self.options.get('certificate') + if cert and os.path.exists(cert): response = requests.post(url, headers=headers, data=payload, cert=cert) else: return 404 else: headers = { 'accept': 'application/json', - 'api-sdk': 'efi-python-{v}'.format(v=VERSION) + 'api-sdk': 'efi-python-{0}'.format(VERSION) } + if 'partner_token' in self.options: headers['partner-token'] = self.options['partner_token'] - auth = (self.options['client_id'], self.options['client_secret']) - auth_body = {'grant_type': 'client_credentials'} - response = requests.post(url, headers=headers, auth=auth, json=auth_body) + + auth = ( + self.options['client_id'], + self.options['client_secret'] + ) + auth_body = {'grant_type': 'client_credentials'} + + response = requests.post( + url, headers=headers, auth=auth, json=auth_body + ) if response.status_code == 200: - json = response.json() - self.token = json + self.token = response.json() return response.status_code - - - def get_url(self): - self.base_url = self.urls['sandbox'] - if 'sandbox' in self.options: - self.base_url = self.urls['sandbox'] if self.options[ - 'sandbox'] else self.urls['production'] def build_url(self, route, params): - params = {} if params is None else params + params = params or {} route = self.remove_placeholders(route, params) return self.complete_url(route, params) def remove_placeholders(self, route, params): - regex = r'\:(\w+)' - match = re.findall(regex, route) - if match: - for attr in match: + regex = r':(\w+)' + matches = re.findall(regex, route) + if matches: + for attr in matches: if attr not in params: raise MissingParametersError(attr) route = route.replace(':' + attr, str(params[attr])) del params[attr] - return route def query_string(self, params): - mapped = [] - for (p, value) in iteritems(params): - mapped.append('{attr}={value}'.format(attr=p, value=value)) - return '&'.join(mapped) + return '&'.join( + '{0}={1}'.format(p, v) for p, v in iteritems(params) + ) def complete_url(self, route, params): qs = self.query_string(params) - - if len(qs) == 0: - return '{base}{route}'.format(base=self.base_url, route=route) - - return '{base}{route}?{qs}'.format(base=self.base_url, route=route, qs=qs) + if qs: + return '{0}{1}?{2}'.format(self.base_url, route, qs) + return '{0}{1}'.format(self.base_url, route) diff --git a/efipay/version.py b/efipay/version.py index 288b1b8..e76ae7c 100644 --- a/efipay/version.py +++ b/efipay/version.py @@ -1,3 +1,3 @@ # encoding: utf-8 -VERSION = '1.0.3' +VERSION = '1.0.4' diff --git a/examples/open-finance/payments/immediate/of_devolution_pix.py b/examples/open-finance/payments/immediate/of_devolution_pix.py index b392ae2..c282bce 100644 --- a/examples/open-finance/payments/immediate/of_devolution_pix.py +++ b/examples/open-finance/payments/immediate/of_devolution_pix.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/immediate/of_list_pix_payment.py b/examples/open-finance/payments/immediate/of_list_pix_payment.py index 055c33a..08361c0 100644 --- a/examples/open-finance/payments/immediate/of_list_pix_payment.py +++ b/examples/open-finance/payments/immediate/of_list_pix_payment.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/immediate/of_start_pix_payment.py b/examples/open-finance/payments/immediate/of_start_pix_payment.py index 220e1a8..44e0924 100644 --- a/examples/open-finance/payments/immediate/of_start_pix_payment.py +++ b/examples/open-finance/payments/immediate/of_start_pix_payment.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/recurrency/of_cancel_recurrency_pix.py b/examples/open-finance/payments/recurrency/of_cancel_recurrency_pix.py index 95cad5a..48e33b8 100644 --- a/examples/open-finance/payments/recurrency/of_cancel_recurrency_pix.py +++ b/examples/open-finance/payments/recurrency/of_cancel_recurrency_pix.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/recurrency/of_devolution_recurrency_pix.py b/examples/open-finance/payments/recurrency/of_devolution_recurrency_pix.py index ed6e2ad..80187d1 100644 --- a/examples/open-finance/payments/recurrency/of_devolution_recurrency_pix.py +++ b/examples/open-finance/payments/recurrency/of_devolution_recurrency_pix.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/recurrency/of_list_recurrency_pix_payment.py b/examples/open-finance/payments/recurrency/of_list_recurrency_pix_payment.py index 200f1d4..c8b6ce1 100644 --- a/examples/open-finance/payments/recurrency/of_list_recurrency_pix_payment.py +++ b/examples/open-finance/payments/recurrency/of_list_recurrency_pix_payment.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/recurrency/of_start_recurrency_pix_payment.py b/examples/open-finance/payments/recurrency/of_start_recurrency_pix_payment.py index 2ae5761..e992575 100644 --- a/examples/open-finance/payments/recurrency/of_start_recurrency_pix_payment.py +++ b/examples/open-finance/payments/recurrency/of_start_recurrency_pix_payment.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/schedule/of_cancel_schedule_pix.py b/examples/open-finance/payments/schedule/of_cancel_schedule_pix.py index 2796989..9d015ec 100644 --- a/examples/open-finance/payments/schedule/of_cancel_schedule_pix.py +++ b/examples/open-finance/payments/schedule/of_cancel_schedule_pix.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/schedule/of_devolution_schedule_pix.py b/examples/open-finance/payments/schedule/of_devolution_schedule_pix.py index 05f28b5..de6476b 100644 --- a/examples/open-finance/payments/schedule/of_devolution_schedule_pix.py +++ b/examples/open-finance/payments/schedule/of_devolution_schedule_pix.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/schedule/of_list_schedule_pix_payment.py b/examples/open-finance/payments/schedule/of_list_schedule_pix_payment.py index 1bfdf3a..b353493 100644 --- a/examples/open-finance/payments/schedule/of_list_schedule_pix_payment.py +++ b/examples/open-finance/payments/schedule/of_list_schedule_pix_payment.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/open-finance/payments/schedule/of_start_schedule_pix_payment.py b/examples/open-finance/payments/schedule/of_start_schedule_pix_payment.py index 73f7900..ab99435 100644 --- a/examples/open-finance/payments/schedule/of_start_schedule_pix_payment.py +++ b/examples/open-finance/payments/schedule/of_start_schedule_pix_payment.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/payments/billets/payment/pay_detail_bar_code.py b/examples/payments/billets/payment/pay_detail_bar_code.py index 0a1c8f4..f6094b3 100644 --- a/examples/payments/billets/payment/pay_detail_bar_code.py +++ b/examples/payments/billets/payment/pay_detail_bar_code.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/payments/billets/payment/pay_detail_payment.py b/examples/payments/billets/payment/pay_detail_payment.py index 23ac215..78282b8 100644 --- a/examples/payments/billets/payment/pay_detail_payment.py +++ b/examples/payments/billets/payment/pay_detail_payment.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/payments/billets/payment/pay_list_payments.py b/examples/payments/billets/payment/pay_list_payments.py index b089f0c..63b8025 100644 --- a/examples/payments/billets/payment/pay_list_payments.py +++ b/examples/payments/billets/payment/pay_list_payments.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/payments/billets/payment/pay_request_bar_code.py b/examples/payments/billets/payment/pay_request_bar_code.py index cca198c..6ebc280 100644 --- a/examples/payments/billets/payment/pay_request_bar_code.py +++ b/examples/payments/billets/payment/pay_request_bar_code.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/payments/billets/webhooks/pay_config_webhook.py b/examples/payments/billets/webhooks/pay_config_webhook.py index 7926071..6a3defd 100644 --- a/examples/payments/billets/webhooks/pay_config_webhook.py +++ b/examples/payments/billets/webhooks/pay_config_webhook.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/payments/billets/webhooks/pay_delete_webhook.py b/examples/payments/billets/webhooks/pay_delete_webhook.py index edac2b4..fab8a3d 100644 --- a/examples/payments/billets/webhooks/pay_delete_webhook.py +++ b/examples/payments/billets/webhooks/pay_delete_webhook.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/payments/billets/webhooks/pay_list_webhook.py b/examples/payments/billets/webhooks/pay_list_webhook.py index b8643b2..592f8a9 100644 --- a/examples/payments/billets/webhooks/pay_list_webhook.py +++ b/examples/payments/billets/webhooks/pay_list_webhook.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/batch/cobv/pix_create_due_charge_batch.py b/examples/pix/batch/cobv/pix_create_due_charge_batch.py index 5c67140..51d1687 100644 --- a/examples/pix/batch/cobv/pix_create_due_charge_batch.py +++ b/examples/pix/batch/cobv/pix_create_due_charge_batch.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/batch/cobv/pix_detail_due_charge_batch.py b/examples/pix/batch/cobv/pix_detail_due_charge_batch.py index 39781e8..b8518aa 100644 --- a/examples/pix/batch/cobv/pix_detail_due_charge_batch.py +++ b/examples/pix/batch/cobv/pix_detail_due_charge_batch.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/batch/cobv/pix_list_due_charge_batch.py b/examples/pix/batch/cobv/pix_list_due_charge_batch.py index 313815f..ec5c070 100644 --- a/examples/pix/batch/cobv/pix_list_due_charge_batch.py +++ b/examples/pix/batch/cobv/pix_list_due_charge_batch.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/batch/cobv/pix_update_due_charge_batch.py b/examples/pix/batch/cobv/pix_update_due_charge_batch.py index 73ff6b5..c5cf964 100644 --- a/examples/pix/batch/cobv/pix_update_due_charge_batch.py +++ b/examples/pix/batch/cobv/pix_update_due_charge_batch.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/cob/pix_create_charge.py b/examples/pix/cob/pix_create_charge.py index 28d2ff7..9773246 100644 --- a/examples/pix/cob/pix_create_charge.py +++ b/examples/pix/cob/pix_create_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ...credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/cob/pix_create_immediate_charge.py b/examples/pix/cob/pix_create_immediate_charge.py index c8beb97..e3451ec 100644 --- a/examples/pix/cob/pix_create_immediate_charge.py +++ b/examples/pix/cob/pix_create_immediate_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ...credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) @@ -10,15 +16,15 @@ 'expiracao': 3600 }, 'devedor': { - 'cpf': '', - 'nome': '' + 'cpf': '16947588774', + 'nome': 'Victor' }, 'valor': { - 'original': '' + 'original': '100.20' }, - 'chave': '', + 'chave': '3670469c-f928-4361-ad2d-eb6ec189cb8c', 'solicitacaoPagador': 'Cobrança dos serviços prestados.' } response = efi.pix_create_immediate_charge(body=body) -print(response) +print(response) \ No newline at end of file diff --git a/examples/pix/cob/pix_detail_charge.py b/examples/pix/cob/pix_detail_charge.py index cc716ca..5926165 100644 --- a/examples/pix/cob/pix_detail_charge.py +++ b/examples/pix/cob/pix_detail_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ...credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/cob/pix_list_charges.py b/examples/pix/cob/pix_list_charges.py index 346fbde..6061c4d 100644 --- a/examples/pix/cob/pix_list_charges.py +++ b/examples/pix/cob/pix_list_charges.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ...credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/cob/pix_update_charge.py b/examples/pix/cob/pix_update_charge.py index 3241e10..50cb5ad 100644 --- a/examples/pix/cob/pix_update_charge.py +++ b/examples/pix/cob/pix_update_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ...credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/cob/pix_split_detail_charge.py b/examples/pix/split/cob/pix_split_detail_charge.py index 9803ce2..a33fd94 100644 --- a/examples/pix/split/cob/pix_split_detail_charge.py +++ b/examples/pix/split/cob/pix_split_detail_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/cob/pix_split_link_charge.py b/examples/pix/split/cob/pix_split_link_charge.py index e455be7..c3b755e 100644 --- a/examples/pix/split/cob/pix_split_link_charge.py +++ b/examples/pix/split/cob/pix_split_link_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/cob/pix_split_unlink_charge.py b/examples/pix/split/cob/pix_split_unlink_charge.py index 14c4700..282a06c 100644 --- a/examples/pix/split/cob/pix_split_unlink_charge.py +++ b/examples/pix/split/cob/pix_split_unlink_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/cobv/pix_split_detail_due_charge.py b/examples/pix/split/cobv/pix_split_detail_due_charge.py index bbf4485..8c060a4 100644 --- a/examples/pix/split/cobv/pix_split_detail_due_charge.py +++ b/examples/pix/split/cobv/pix_split_detail_due_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/cobv/pix_split_link_due_charge.py b/examples/pix/split/cobv/pix_split_link_due_charge.py index 8a463b4..68f0bc4 100644 --- a/examples/pix/split/cobv/pix_split_link_due_charge.py +++ b/examples/pix/split/cobv/pix_split_link_due_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/cobv/pix_split_unlink_due_charge.py b/examples/pix/split/cobv/pix_split_unlink_due_charge.py index fb39922..b8c1d50 100644 --- a/examples/pix/split/cobv/pix_split_unlink_due_charge.py +++ b/examples/pix/split/cobv/pix_split_unlink_due_charge.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/config/pix_split_config.py b/examples/pix/split/config/pix_split_config.py index bd51d7a..f6970f9 100644 --- a/examples/pix/split/config/pix_split_config.py +++ b/examples/pix/split/config/pix_split_config.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/config/pix_split_config_id.py b/examples/pix/split/config/pix_split_config_id.py index 709dc2a..fea211e 100644 --- a/examples/pix/split/config/pix_split_config_id.py +++ b/examples/pix/split/config/pix_split_config_id.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/examples/pix/split/config/pix_split_detail_config.py b/examples/pix/split/config/pix_split_detail_config.py index 66d86e9..901200c 100644 --- a/examples/pix/split/config/pix_split_detail_config.py +++ b/examples/pix/split/config/pix_split_detail_config.py @@ -1,7 +1,13 @@ # encoding: utf-8 +import os +import sys from efipay import EfiPay -from ....credentials import credentials + +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', '..')) +sys.path.append(project_root) + +from credentials import credentials efi = EfiPay(credentials.CREDENTIALS) diff --git a/requirements.txt b/requirements.txt index a1035e0..4f1ba9c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -pytest>=6.2.5 -responses==0.13.2 -requests>=2.28.1 -six>=1.16.0 +pytest +responses +requests +six diff --git a/setup.py b/setup.py index 7b62428..daa8754 100644 --- a/setup.py +++ b/setup.py @@ -17,7 +17,7 @@ setup( name='efipay', - version='1.0.3', + version='1.0.4', description='Module for integration with EfiPay API', long_description=long_description, @@ -54,7 +54,8 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.9', - 'Programming Language :: Python :: 3.11' + 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12' ], # What does your project relate to?