diff --git a/cieloApi3/objectJSON.py b/cieloApi3/objectJSON.py index 49bcc04..aa3d3be 100644 --- a/cieloApi3/objectJSON.py +++ b/cieloApi3/objectJSON.py @@ -58,7 +58,7 @@ def remove_none_dict(obj): retorno = {} for chave in obj: valor = obj[chave] - if valor or isinstance(valor, (int, long, float, complex)): + if valor or isinstance(valor, (int, float, complex)): retorno[chave] = remove_none(valor) return retorno diff --git a/cieloApi3/objectJSON.py.bak b/cieloApi3/objectJSON.py.bak new file mode 100644 index 0000000..49bcc04 --- /dev/null +++ b/cieloApi3/objectJSON.py.bak @@ -0,0 +1,72 @@ + +import json + +class ObjectJSON(object): + + def toJSON(self): + + dicionary = json.loads(json.dumps(self, default=lambda o: o.__dict__)) + + dicionary = remove_none(dicionary) + + dicionary = process_name_key(dicionary) + + return json.dumps(dicionary, indent=2) + + def prepare(self): + pass + + def __getattribute__(self, attribute): + + if attribute == '__dict__': + self.prepare() + + return object.__getattribute__(self, attribute) + + +def process_name_key(dictionary): + + if not isinstance(dictionary, dict): + return dictionary + + newDictionary = {} + + for key in dictionary: + newDictionary[capitalize_key(key)] = process_name_key(dictionary[key]) + + return newDictionary + +def capitalize_key(key): + parts = key.split('_') + + newParts = [] + for part in parts: + newParts.append(part.capitalize()) + + return ''.join(newParts) + +def remove_none(dado): + + if isinstance(dado, dict): + return remove_none_dict(dado) + elif isinstance(dado, list): + return remove_none_list(dado) + + return dado + +def remove_none_dict(obj): + retorno = {} + for chave in obj: + valor = obj[chave] + if valor or isinstance(valor, (int, long, float, complex)): + retorno[chave] = remove_none(valor) + + return retorno + +def remove_none_list(lista): + resposta = [] + for linha in lista: + valor = remove_none(linha) + resposta.append(valor) + + return resposta diff --git a/cieloApi3/request/base.py b/cieloApi3/request/base.py index f94c0fa..586546c 100644 --- a/cieloApi3/request/base.py +++ b/cieloApi3/request/base.py @@ -51,6 +51,6 @@ def send_request(self, method, uri, data=None, params=None): data_send = json.loads(body or 'null') - raise Exception, '\r\n%s\r\nMethod: %s\r\nUri: %s\r\nData: %s' % (''.join(errors), method, response.url, json.dumps(data_send, indent=2)) + raise Exception('\r\n%s\r\nMethod: %s\r\nUri: %s\r\nData: %s' % (''.join(errors), method, response.url, json.dumps(data_send, indent=2))) return answers diff --git a/cieloApi3/request/base.py.bak b/cieloApi3/request/base.py.bak new file mode 100644 index 0000000..f94c0fa --- /dev/null +++ b/cieloApi3/request/base.py.bak @@ -0,0 +1,56 @@ +import uuid, json + +from requests import Request, Session + +class Base(object): + + def __init__(self, merchant): + + self.merchant = merchant + + def send_request(self, method, uri, data=None, params=None): + + s = Session() + + body = data + + headers = { + 'User-Agent': "CieloEcommerce/3.0 Python SDK", + 'RequestId': str(uuid.uuid4()), + 'MerchantId': self.merchant.id, + 'MerchantKey': self.merchant.key + } + + if not body: + headers['Content-Length'] = '0' + else: + headers["Content-Type"] = "application/json" + + if not isinstance(data, dict): + body = body.toJSON() + + req = Request(method, uri, data=body, headers=headers, params=params) + + prep = s.prepare_request(req) + + response = s.send(prep) + + if 'json' in response.headers['Content-Type'].lower(): + answers = response.json() + else: + answers = [{ + 'Code': str(response.status_code), + 'Message': response.text + }] + + if response.status_code >= 400: + errors = [] + + for answer in answers: + errors.append('\r\n * [%s] %s\r\n' % (answer['Code'], answer['Message'])) + + data_send = json.loads(body or 'null') + + raise Exception, '\r\n%s\r\nMethod: %s\r\nUri: %s\r\nData: %s' % (''.join(errors), method, response.url, json.dumps(data_send, indent=2)) + + return answers diff --git a/example/saleBoletoComplete.py b/example/saleBoletoComplete.py index 3a7ef35..d0b5a0f 100644 --- a/example/saleBoletoComplete.py +++ b/example/saleBoletoComplete.py @@ -39,9 +39,9 @@ # Criar a venda e imprime o retorno response_create_sale = cielo_ecommerce.create_sale(sale) -print '----------------------response_create_sale----------------------' -print json.dumps(response_create_sale, indent=2) -print '----------------------response_create_sale----------------------' +print('----------------------response_create_sale----------------------') +print(json.dumps(response_create_sale, indent=2)) +print('----------------------response_create_sale----------------------') # Com a venda criada na Cielo, já temos o ID do pagamento, TID e demais # dados retornados pela Cielo @@ -49,8 +49,8 @@ # Com o ID do pagamento, podemos fazer uma consulta do pagamento response_get_sale = cielo_ecommerce.get_sale(payment_id) -print '----------------------response_get_sale----------------------' -print json.dumps(response_get_sale, indent=2) -print '----------------------response_get_sale----------------------' +print('----------------------response_get_sale----------------------') +print(json.dumps(response_get_sale, indent=2)) +print('----------------------response_get_sale----------------------') -print '\r\nLink Boleto:', sale.payment.url, '\r\n' +print('\r\nLink Boleto:', sale.payment.url, '\r\n') diff --git a/example/saleBoletoComplete.py.bak b/example/saleBoletoComplete.py.bak new file mode 100644 index 0000000..3a7ef35 --- /dev/null +++ b/example/saleBoletoComplete.py.bak @@ -0,0 +1,56 @@ +#-*- coding: utf-8 -*-s + +import sys +sys.path.insert(0, "./") + +from cieloApi3 import * + +import json + +# Configure o ambiente +environment = Environment(sandbox=True) + +# Configure seu merchant, para gerar acesse: https://cadastrosandbox.cieloecommerce.cielo.com.br/ +merchant = Merchant('MerchantId', 'MerchantKey') + +# Crie uma instância de Sale informando o ID do pagamento +sale = Sale('555') + +# Crie uma instância de Customer informando o nome do cliente +sale.customer = Customer('Comprador Teste') + +# Crie uma instância de Payment informando o valor do pagamento +payment = Payment(15700) +payment.type = PAYMENTTYPE_BOLETO + +payment.provider = PROVIDER_BANCO_DO_BRASIL +payment.address = 'Rua Alegria N: 3 Bairro: Rosa São Paulo-SP' +payment.boleto_number = '123' +payment.assignor = 'Empresa Teste' +payment.demonstrative = 'Demonstrativo Teste' +payment.expiration_date = '2017-06-11' +payment.identification = '11884926754' +payment.instructions = 'Aceitar somente até a data de vencimento, após essa data juros de 1% dia.' + +sale.payment = payment + +# Cria instância do controlador do ecommerce +cielo_ecommerce = CieloEcommerce(merchant, environment) + +# Criar a venda e imprime o retorno +response_create_sale = cielo_ecommerce.create_sale(sale) +print '----------------------response_create_sale----------------------' +print json.dumps(response_create_sale, indent=2) +print '----------------------response_create_sale----------------------' + +# Com a venda criada na Cielo, já temos o ID do pagamento, TID e demais +# dados retornados pela Cielo +payment_id = sale.payment.payment_id + +# Com o ID do pagamento, podemos fazer uma consulta do pagamento +response_get_sale = cielo_ecommerce.get_sale(payment_id) +print '----------------------response_get_sale----------------------' +print json.dumps(response_get_sale, indent=2) +print '----------------------response_get_sale----------------------' + +print '\r\nLink Boleto:', sale.payment.url, '\r\n' diff --git a/example/saleBoletoSimple.py b/example/saleBoletoSimple.py index e3f4c1d..6f0fba5 100644 --- a/example/saleBoletoSimple.py +++ b/example/saleBoletoSimple.py @@ -30,9 +30,9 @@ # Criar a venda e imprime o retorno response_create_sale = cielo_ecommerce.create_sale(sale) -print '----------------------response_create_sale----------------------' -print json.dumps(response_create_sale, indent=2) -print '----------------------response_create_sale----------------------' +print('----------------------response_create_sale----------------------') +print(json.dumps(response_create_sale, indent=2)) +print('----------------------response_create_sale----------------------') # Com a venda criada na Cielo, já temos o ID do pagamento, TID e demais # dados retornados pela Cielo @@ -40,8 +40,8 @@ # Com o ID do pagamento, podemos fazer uma consulta do pagamento response_get_sale = cielo_ecommerce.get_sale(payment_id) -print '----------------------response_get_sale----------------------' -print json.dumps(response_get_sale, indent=2) -print '----------------------response_get_sale----------------------' +print('----------------------response_get_sale----------------------') +print(json.dumps(response_get_sale, indent=2)) +print('----------------------response_get_sale----------------------') -print '\r\nLink Boleto:', sale.payment.url, '\r\n' +print('\r\nLink Boleto:', sale.payment.url, '\r\n') diff --git a/example/saleBoletoSimple.py.bak b/example/saleBoletoSimple.py.bak new file mode 100644 index 0000000..e3f4c1d --- /dev/null +++ b/example/saleBoletoSimple.py.bak @@ -0,0 +1,47 @@ +#-*- coding: utf-8 -*-s + +import sys +sys.path.insert(0, "./") + +from cieloApi3 import * + +import json + +# Configure o ambiente +environment = Environment(sandbox=True) + +# Configure seu merchant, para gerar acesse: https://cadastrosandbox.cieloecommerce.cielo.com.br/ +merchant = Merchant('MerchantId', 'MerchantKey') + +# Crie uma instância de Sale informando o ID do pagamento +sale = Sale('333') + +# Crie uma instância de Customer informando o nome do cliente +sale.customer = Customer('Comprador Teste') + +# Crie uma instância de Payment informando o valor do pagamento +sale.payment = Payment(15700) +sale.payment.type = PAYMENTTYPE_BOLETO + +sale.payment.provider = PROVIDER_BRADESCO + +# Cria instância do controlador do ecommerce +cielo_ecommerce = CieloEcommerce(merchant, environment) + +# Criar a venda e imprime o retorno +response_create_sale = cielo_ecommerce.create_sale(sale) +print '----------------------response_create_sale----------------------' +print json.dumps(response_create_sale, indent=2) +print '----------------------response_create_sale----------------------' + +# Com a venda criada na Cielo, já temos o ID do pagamento, TID e demais +# dados retornados pela Cielo +payment_id = sale.payment.payment_id + +# Com o ID do pagamento, podemos fazer uma consulta do pagamento +response_get_sale = cielo_ecommerce.get_sale(payment_id) +print '----------------------response_get_sale----------------------' +print json.dumps(response_get_sale, indent=2) +print '----------------------response_get_sale----------------------' + +print '\r\nLink Boleto:', sale.payment.url, '\r\n' diff --git a/example/saleCard.py b/example/saleCard.py index 1b5d17e..eb9ce3a 100644 --- a/example/saleCard.py +++ b/example/saleCard.py @@ -35,9 +35,9 @@ # Criar a venda e imprime o retorno response_create_sale = cielo_ecommerce.create_sale(sale) -print '----------------------response_create_sale----------------------' -print json.dumps(response_create_sale, indent=2) -print '----------------------response_create_sale----------------------' +print('----------------------response_create_sale----------------------') +print(json.dumps(response_create_sale, indent=2)) +print('----------------------response_create_sale----------------------') # Com a venda criada na Cielo, já temos o ID do pagamento, TID e demais # dados retornados pela Cielo @@ -46,12 +46,12 @@ # Com o ID do pagamento, podemos fazer sua captura, # se ela não tiver sido capturada ainda response_capture_sale = cielo_ecommerce.capture_sale(payment_id, 15700, 0) -print '----------------------response_capture_sale----------------------' -print json.dumps(response_capture_sale, indent=2) -print '----------------------response_capture_sale----------------------' +print('----------------------response_capture_sale----------------------') +print(json.dumps(response_capture_sale, indent=2)) +print('----------------------response_capture_sale----------------------') # E também podemos fazer seu cancelamento, se for o caso response_cancel_sale = cielo_ecommerce.cancel_sale(payment_id, 15700) -print '---------------------response_cancel_sale---------------------' -print json.dumps(response_cancel_sale, indent=2) -print '---------------------response_cancel_sale---------------------' +print('---------------------response_cancel_sale---------------------') +print(json.dumps(response_cancel_sale, indent=2)) +print('---------------------response_cancel_sale---------------------') diff --git a/example/saleCard.py.bak b/example/saleCard.py.bak new file mode 100644 index 0000000..1b5d17e --- /dev/null +++ b/example/saleCard.py.bak @@ -0,0 +1,57 @@ +#-*- coding: utf-8 -*-s + +import sys +sys.path.insert(0, "./") + +from cieloApi3 import * + +import json + +# Configure o ambiente +environment = Environment(sandbox=True) + +# Configure seu merchant, para gerar acesse: https://cadastrosandbox.cieloecommerce.cielo.com.br/ +merchant = Merchant('MerchantId', 'MerchantKey') + +# Crie uma instância de Sale informando o ID do pagamento +sale = Sale('123') + +# Crie uma instância de Customer informando o nome do cliente +sale.customer = Customer('Fulano de Tal') + +# Crie uma instância de Credit Card utilizando os dados de teste +# esses dados estão disponíveis no manual de integração +credit_card = CreditCard('123', 'Visa') +credit_card.expiration_date = '12/2018' +credit_card.card_number = '0000000000000001' +credit_card.holder = 'Fulano de Tal' + +# Crie uma instância de Payment informando o valor do pagamento +sale.payment = Payment(15700) +sale.payment.credit_card = credit_card + +# Cria instância do controlador do ecommerce +cielo_ecommerce = CieloEcommerce(merchant, environment) + +# Criar a venda e imprime o retorno +response_create_sale = cielo_ecommerce.create_sale(sale) +print '----------------------response_create_sale----------------------' +print json.dumps(response_create_sale, indent=2) +print '----------------------response_create_sale----------------------' + +# Com a venda criada na Cielo, já temos o ID do pagamento, TID e demais +# dados retornados pela Cielo +payment_id = sale.payment.payment_id + +# Com o ID do pagamento, podemos fazer sua captura, +# se ela não tiver sido capturada ainda +response_capture_sale = cielo_ecommerce.capture_sale(payment_id, 15700, 0) +print '----------------------response_capture_sale----------------------' +print json.dumps(response_capture_sale, indent=2) +print '----------------------response_capture_sale----------------------' + +# E também podemos fazer seu cancelamento, se for o caso +response_cancel_sale = cielo_ecommerce.cancel_sale(payment_id, 15700) +print '---------------------response_cancel_sale---------------------' +print json.dumps(response_cancel_sale, indent=2) +print '---------------------response_cancel_sale---------------------' diff --git a/example/saleCardRecurring.py b/example/saleCardRecurring.py index 4685495..2c29650 100644 --- a/example/saleCardRecurring.py +++ b/example/saleCardRecurring.py @@ -40,9 +40,9 @@ # Criar a venda e imprime o retorno response_create_sale = cielo_ecommerce.create_sale(sale) -print '----------------------response_create_sale----------------------' -print json.dumps(response_create_sale, indent=2) -print '----------------------response_create_sale----------------------' +print('----------------------response_create_sale----------------------') +print(json.dumps(response_create_sale, indent=2)) +print('----------------------response_create_sale----------------------') @@ -55,15 +55,15 @@ # Com o ID do pagamento, podemos fazer sua captura, # se ela não tiver sido capturada ainda response_capture_sale = cielo_ecommerce.capture_sale(payment_id, 15700, 0) -print '----------------------response_capture_sale----------------------' -print json.dumps(response_capture_sale, indent=2) -print '----------------------response_capture_sale----------------------' +print('----------------------response_capture_sale----------------------') +print(json.dumps(response_capture_sale, indent=2)) +print('----------------------response_capture_sale----------------------') # E também podemos fazer seu cancelamento, se for o caso response_cancel_sale = cielo_ecommerce.cancel_sale(payment_id, 15700) -print '---------------------response_cancel_sale---------------------' -print json.dumps(response_cancel_sale, indent=2) -print '---------------------response_cancel_sale---------------------' +print('---------------------response_cancel_sale---------------------') +print(json.dumps(response_cancel_sale, indent=2)) +print('---------------------response_cancel_sale---------------------') @@ -74,9 +74,9 @@ # Consulta informações da venda recorrente response_get_recurrent_payment = cielo_ecommerce.get_recurrent_payment(recurrent_payment_id) -print '---------------------response_get_recurrent_payment---------------------' -print json.dumps(response_get_recurrent_payment, indent=2) -print '---------------------response_get_recurrent_payment---------------------' +print('---------------------response_get_recurrent_payment---------------------') +print(json.dumps(response_get_recurrent_payment, indent=2)) +print('---------------------response_get_recurrent_payment---------------------') # # Desativa uma venda recorrente (Algum erro na API da Cielo, parou de funcionar) # response_deactivate_recurrent_payment = cielo_ecommerce.deactivate_recurrent_payment(recurrent_payment_id) diff --git a/example/saleCardRecurring.py.bak b/example/saleCardRecurring.py.bak new file mode 100644 index 0000000..4685495 --- /dev/null +++ b/example/saleCardRecurring.py.bak @@ -0,0 +1,91 @@ +#-*- coding: utf-8 -*-s + +import sys +sys.path.insert(0, "./") + +from cieloApi3 import * + +import json + +# Configure o ambiente +environment = Environment(sandbox=True) + +# Configure seu merchant, para gerar acesse: https://cadastrosandbox.cieloecommerce.cielo.com.br/ +merchant = Merchant('MerchantId', 'MerchantKey') + +# Crie uma instância de Sale informando o ID do pagamento +sale = Sale('789') + +# Crie uma instância de Customer informando o nome do cliente +sale.customer = Customer('Comprador accept') + +# Crie uma instância de Credit Card utilizando os dados de teste +# esses dados estão disponíveis no manual de integração +credit_card = CreditCard('262', 'Visa') +credit_card.expiration_date = '03/2019' +credit_card.card_number = '1234123412341231' +credit_card.holder = 'Teste Holder' + +recurrent_payment = RecurrentPayment() +recurrent_payment.interval = INTERVAL_SEMIANNUAL +recurrent_payment.end_date = '2019-12-01' + +# Crie uma instância de Payment informando o valor do pagamento +sale.payment = Payment(1500) +sale.payment.recurrent_payment = recurrent_payment +sale.payment.credit_card = credit_card + +# Cria instância do controlador do ecommerce +cielo_ecommerce = CieloEcommerce(merchant, environment) + +# Criar a venda e imprime o retorno +response_create_sale = cielo_ecommerce.create_sale(sale) +print '----------------------response_create_sale----------------------' +print json.dumps(response_create_sale, indent=2) +print '----------------------response_create_sale----------------------' + + + + + +# Com a venda criada na Cielo, já temos o ID do pagamento, TID e demais +# dados retornados pela Cielo +payment_id = sale.payment.payment_id + +# Com o ID do pagamento, podemos fazer sua captura, +# se ela não tiver sido capturada ainda +response_capture_sale = cielo_ecommerce.capture_sale(payment_id, 15700, 0) +print '----------------------response_capture_sale----------------------' +print json.dumps(response_capture_sale, indent=2) +print '----------------------response_capture_sale----------------------' + +# E também podemos fazer seu cancelamento, se for o caso +response_cancel_sale = cielo_ecommerce.cancel_sale(payment_id, 15700) +print '---------------------response_cancel_sale---------------------' +print json.dumps(response_cancel_sale, indent=2) +print '---------------------response_cancel_sale---------------------' + + + + + +# Com a venda recorrente criada na Cielo, já temos o ID do pagamento recorrente +recurrent_payment_id = sale.payment.recurrent_payment.recurrent_payment_id + +# Consulta informações da venda recorrente +response_get_recurrent_payment = cielo_ecommerce.get_recurrent_payment(recurrent_payment_id) +print '---------------------response_get_recurrent_payment---------------------' +print json.dumps(response_get_recurrent_payment, indent=2) +print '---------------------response_get_recurrent_payment---------------------' + +# # Desativa uma venda recorrente (Algum erro na API da Cielo, parou de funcionar) +# response_deactivate_recurrent_payment = cielo_ecommerce.deactivate_recurrent_payment(recurrent_payment_id) +# print '---------------------response_deactivate_recurrent_payment---------------------' +# print json.dumps(response_deactivate_recurrent_payment, indent=2) +# print '---------------------response_deactivate_recurrent_payment---------------------' + +# # Reativa uma venda recorrente (Algum erro na API da Cielo, parou de funcionar) +# response_reactivate_recurrent_payment = cielo_ecommerce.reactivate_recurrent_payment(recurrent_payment_id) +# print '---------------------response_reactivate_recurrent_payment---------------------' +# print json.dumps(response_reactivate_recurrent_payment, indent=2) +# print '---------------------response_reactivate_recurrent_payment---------------------' diff --git a/example/saleCardRecurringSchedule.py b/example/saleCardRecurringSchedule.py index a611035..06bf57a 100644 --- a/example/saleCardRecurringSchedule.py +++ b/example/saleCardRecurringSchedule.py @@ -41,6 +41,6 @@ # Criar a venda e imprime o retorno response_create_sale = cielo_ecommerce.create_sale(sale) -print '----------------------response_create_sale----------------------' -print json.dumps(response_create_sale, indent=2) -print '----------------------response_create_sale----------------------' +print('----------------------response_create_sale----------------------') +print(json.dumps(response_create_sale, indent=2)) +print('----------------------response_create_sale----------------------') diff --git a/example/saleCardRecurringSchedule.py.bak b/example/saleCardRecurringSchedule.py.bak new file mode 100644 index 0000000..a611035 --- /dev/null +++ b/example/saleCardRecurringSchedule.py.bak @@ -0,0 +1,46 @@ +#-*- coding: utf-8 -*-s + +import sys +sys.path.insert(0, "./") + +from cieloApi3 import * + +import json + +# Configure o ambiente +environment = Environment(sandbox=True) + +# Configure seu merchant, para gerar acesse: https://cadastrosandbox.cieloecommerce.cielo.com.br/ +merchant = Merchant('MerchantId', 'MerchantKey') + +# Crie uma instância de Sale informando o ID do pagamento +sale = Sale('789') + +# Crie uma instância de Customer informando o nome do cliente +sale.customer = Customer('Comprador rec programada') + +# Crie uma instância de Credit Card utilizando os dados de teste +# esses dados estão disponíveis no manual de integração +credit_card = CreditCard('262', 'Visa') +credit_card.expiration_date = '03/2019' +credit_card.card_number = '1234123412341231' +credit_card.holder = 'Teste Holder' + +recurrent_payment = RecurrentPayment(False) +recurrent_payment.interval = INTERVAL_SEMIANNUAL +recurrent_payment.start_date = '2015-06-01' +recurrent_payment.end_date = '2019-12-01' + +# Crie uma instância de Payment informando o valor do pagamento +sale.payment = Payment(1500) +sale.payment.recurrent_payment = recurrent_payment +sale.payment.credit_card = credit_card + +# Cria instância do controlador do ecommerce +cielo_ecommerce = CieloEcommerce(merchant, environment) + +# Criar a venda e imprime o retorno +response_create_sale = cielo_ecommerce.create_sale(sale) +print '----------------------response_create_sale----------------------' +print json.dumps(response_create_sale, indent=2) +print '----------------------response_create_sale----------------------' diff --git a/example/saleCardToken.py b/example/saleCardToken.py index 6ca2bf3..d968840 100644 --- a/example/saleCardToken.py +++ b/example/saleCardToken.py @@ -26,13 +26,13 @@ # Criar a venda e imprime o retorno response_create_card_token = cielo_ecommerce.create_card_token(credit_card) -print '----------------------response_create_card_token----------------------' -print json.dumps(response_create_card_token, indent=2) -print '----------------------response_create_card_token----------------------' +print('----------------------response_create_card_token----------------------') +print(json.dumps(response_create_card_token, indent=2)) +print('----------------------response_create_card_token----------------------') # Com o cartão gerado token na Cielo, já temos o Token do cartão para uma futura cobrança new_card_token = credit_card.card_token -print 'New Card Token:', new_card_token +print('New Card Token:', new_card_token) # Crie uma instância de Sale informando o ID do pagamento sale = Sale('456') @@ -53,6 +53,6 @@ # Criar a venda e imprime o retorno response_create_sale = cielo_ecommerce.create_sale(sale) -print '----------------------response_create_sale----------------------' -print json.dumps(response_create_sale, indent=2) -print '----------------------response_create_sale----------------------' +print('----------------------response_create_sale----------------------') +print(json.dumps(response_create_sale, indent=2)) +print('----------------------response_create_sale----------------------') diff --git a/example/saleCardToken.py.bak b/example/saleCardToken.py.bak new file mode 100644 index 0000000..6ca2bf3 --- /dev/null +++ b/example/saleCardToken.py.bak @@ -0,0 +1,58 @@ +#-*- coding: utf-8 -*-s + +import sys +sys.path.insert(0, "./") + +from cieloApi3 import * + +import json + +# Configure o ambiente +environment = Environment(sandbox=True) + +# Configure seu merchant, para gerar acesse: https://cadastrosandbox.cieloecommerce.cielo.com.br/ +merchant = Merchant('MerchantId', 'MerchantKey') + +# Crie uma instância de Credit Card utilizando os dados de teste +# esses dados estão disponíveis no manual de integração +credit_card = CreditCard('123', 'Visa') +credit_card.expiration_date = '12/2018' +credit_card.card_number = '4532117080573700' +credit_card.holder = 'Comprador T Cielo' +credit_card.customer_name = 'Comprador Teste Cielo' + +# Cria instância do controlador do ecommerce +cielo_ecommerce = CieloEcommerce(merchant, environment) + +# Criar a venda e imprime o retorno +response_create_card_token = cielo_ecommerce.create_card_token(credit_card) +print '----------------------response_create_card_token----------------------' +print json.dumps(response_create_card_token, indent=2) +print '----------------------response_create_card_token----------------------' + +# Com o cartão gerado token na Cielo, já temos o Token do cartão para uma futura cobrança +new_card_token = credit_card.card_token +print 'New Card Token:', new_card_token + +# Crie uma instância de Sale informando o ID do pagamento +sale = Sale('456') + +# Crie uma instância de Customer informando o nome do cliente +sale.customer = Customer('Comprador Teste') + +# Crie uma instância de Credit Card utilizando os dados de teste via token +credit_card_token = CreditCard('123', 'Visa') +credit_card_token.card_token = new_card_token + +# Crie uma instância de Payment informando o valor do pagamento +sale.payment = Payment(100) +sale.payment.credit_card = credit_card_token + +# Cria instância do controlador do ecommerce +cielo_ecommerce = CieloEcommerce(merchant, environment) + +# Criar a venda e imprime o retorno +response_create_sale = cielo_ecommerce.create_sale(sale) +print '----------------------response_create_sale----------------------' +print json.dumps(response_create_sale, indent=2) +print '----------------------response_create_sale----------------------'