def order(): """ Crea una nueva orden para enviar a STP :return: """ try: with open(DEFAULT_FILE_NAME, 'r') as f: config = json.load(f) except IOError: print("No configuration file found, use first: stpmex config") return stpmex.configure( wsdl_path=config['wsdl'], empresa=config['empresa'], priv_key=config['private_key'], priv_key_passphrase=config['pkey_passphrase'], prefijo=config['prefijo'], proxy=None if 'proxy' not in config else config['proxy'], proxy_user=None if 'user' not in config else config['user'], proxy_password=None if 'password' not in config else config['password'], ) print("Connection established") order = Orden() order.institucionOperante = Institucion.STP.value order.nombreBeneficiario = input('Nombre del beneficiario: ') order.cuentaBeneficiario = input('CLABE del beneficiario: ') order.institucionContraparte = input('Institución de contraparte: ') order.conceptoPago = input('Concepto de pago: ') order.monto = float(input('Monto: ')) # I assume you won't put a str here rfc = input('RFC o CURP de beneficiario (opcional): ') if rfc: order.rfcCurpBeneficiario = rfc num_reference = input('Referencia númerica (opcional): ') if num_reference: order.referenciaNumerica = num_reference track_code = input('Clave de rastreo (opcional): ') if track_code: order.claveRastreo = track_code print("Sending order....") r = order.registra() print(r) print("Finished")
def get_order(self): trx_dict = self.to_dict() order_dict = { snake_to_camel(k): v for k, v in trx_dict.items() if snake_to_camel(k) in ORDEN_FIELDNAMES and ( trx_dict[k] is not None) } order = Orden(**order_dict) order.fechaOperacion = None order.institucionOperante = self.institucion_ordenante order.institucionContraparte = self.institucion_beneficiaria order.nombreBeneficiario = self.nombre_beneficiario[:38].strip() order.nombreOrdenante = self.nombre_ordenante[:38].strip() self.clave_rastreo = self.clave_rastreo or order.claveRastreo self.tipo_cuenta_beneficiario = self.tipo_cuenta_beneficiario or ( order.tipoCuentaBeneficiario) self.rfc_curp_beneficiario = self.rfc_curp_beneficiario or ( order.rfcCurpBeneficiario) self.referencia_numerica = self.referencia_numerica or ( order.referenciaNumerica) self.empresa = self.empresa or order.empresa return order