HUI DA INTELLECTUAL PROPERTY AGENCY","InvoicePayment_ID":"2340388000074880051","Invoice_Number":"2057363","Invoice_Applied":"383.62","Balance":"383.62","Invoice_Applied_BCY":"7198.63","Invoice_Amount":"383.62","Invoice_Amount_BCY":"7790.63","Invoice_Exch_Rate":"20.308200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34311","payment_id":"2340388000074776836","P_Date":"01-Jul-25","exchange_rate":"18.833200","amount":"735.00","amount_bcy":"13842.40","reference_number":"IN001JUL25","currency_code":"USD","CustomerID_B":"2340388000001156644","Nombre_Cliente":"07310 USAIN ST. LEO BOLT","InvoicePayment_ID":"2340388000074776844","Invoice_Number":"2060645","Invoice_Applied":"245.00","Balance":"245.00","Invoice_Applied_BCY":"4614.13","Invoice_Amount":"245.00","Invoice_Amount_BCY":"4815.97","Invoice_Exch_Rate":"19.657000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34368","payment_id":"2340388000074993561","P_Date":"03-Jul-25","exchange_rate":"1.000000","amount":"11747.95","amount_bcy":"11747.95","reference_number":"S001JUL25","currency_code":"MXN","CustomerID_B":"2340388000059783043","Nombre_Cliente":"20793 HIGH PERFORMANCE RECOVERY SA DE CV","InvoicePayment_ID":"2340388000074993565","Invoice_Number":"2061866","Invoice_Applied":"11747.95","Balance":"11747.95","Invoice_Applied_BCY":"11747.95","Invoice_Amount":"11747.95","Invoice_Amount_BCY":"11747.95","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34367","payment_id":"2340388000074993443","P_Date":"03-Jul-25","exchange_rate":"1.000000","amount":"84172.58","amount_bcy":"84172.58","reference_number":"B004JUL25","currency_code":"MXN","CustomerID_B":"2340388000001141628","Nombre_Cliente":"05743 TRUPER, S.A. DE C.V.","InvoicePayment_ID":"2340388000074993453","Invoice_Number":"2062184","Invoice_Applied":"40600.00","Balance":"40600.00","Invoice_Applied_BCY":"40600.00","Invoice_Amount":"40600.00","Invoice_Amount_BCY":"40600.00","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34388","payment_id":"2340388000075128785","P_Date":"07-Jul-25","exchange_rate":"18.632700","amount":"940.83","amount_bcy":"17530.20","reference_number":"IN049JUL25","currency_code":"USD","CustomerID_B":"2340388000071078341","Nombre_Cliente":"21203 RAISE'D RIGHT DRILLING SOLUTIONS LTD.","InvoicePayment_ID":"2340388000075128789","Invoice_Number":"2062232","Invoice_Applied":"940.83","Balance":"940.83","Invoice_Applied_BCY":"17530.20","Invoice_Amount":"940.83","Invoice_Amount_BCY":"17999.68","Invoice_Exch_Rate":"19.131700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34385","payment_id":"2340388000075124334","P_Date":"07-Jul-25","exchange_rate":"18.632700","amount":"2756.40","amount_bcy":"51359.17","reference_number":"IN042JUL25","currency_code":"USD","CustomerID_B":"2340388000005427140","Nombre_Cliente":"05150 WOLF, GREENFIELD & SACKS, P.C.","InvoicePayment_ID":"2340388000075124338","Invoice_Number":"2060949","Invoice_Applied":"2418.90","Balance":"2418.90","Invoice_Applied_BCY":"45070.64","Invoice_Amount":"2418.90","Invoice_Amount_BCY":"47600.32","Invoice_Exch_Rate":"19.678500","Tipo":"Pago","Batch":"71"},
{"payment_number":"34432","payment_id":"2340388000075234960","P_Date":"04-Jul-25","exchange_rate":"1.000000","amount":"3479.91","amount_bcy":"3479.91","reference_number":"BM024JUL25","currency_code":"MXN","CustomerID_B":"2340388000047281114","Nombre_Cliente":"20070 PRODUCTOS AJOLOTIUS S.A. DE C.V.","InvoicePayment_ID":"2340388000075234964","Invoice_Number":"2062665","Invoice_Applied":"3479.91","Balance":"3479.91","Invoice_Applied_BCY":"3479.91","Invoice_Amount":"3479.91","Invoice_Amount_BCY":"3479.91","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34406","payment_id":"2340388000075232307","P_Date":"08-Jul-25","exchange_rate":"18.669800","amount":"1775.00","amount_bcy":"33138.90","reference_number":"IN071JUL25","currency_code":"USD","CustomerID_B":"2340388000005966234","Nombre_Cliente":"11541 NOVAGRAAF","InvoicePayment_ID":"2340388000075232311","Invoice_Number":"2058639","Invoice_Applied":"1775.00","Balance":"1775.00","Invoice_Applied_BCY":"33138.90","Invoice_Amount":"1775.00","Invoice_Amount_BCY":"35824.47","Invoice_Exch_Rate":"20.182800","Tipo":"Pago","Batch":"71"},
{"payment_number":"34416","payment_id":"2340388000075207663","P_Date":"08-Jul-25","exchange_rate":"18.669800","amount":"1849.86","amount_bcy":"34536.52","reference_number":"IN058JUL25","currency_code":"USD","CustomerID_B":"2340388000004105713","Nombre_Cliente":"03380 BUCHANAN INGERSOLL & ROONEY, PC (VIRGINIA)","InvoicePayment_ID":"2340388000075207671","Invoice_Number":"2061119","Invoice_Applied":"646.28","Balance":"646.28","Invoice_Applied_BCY":"12065.92","Invoice_Amount":"646.28","Invoice_Amount_BCY":"12596.77","Invoice_Exch_Rate":"19.491200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34443","payment_id":"2340388000075236449","P_Date":"07-Jul-25","exchange_rate":"1.000000","amount":"162327.62","amount_bcy":"162327.62","reference_number":"BV016JUL25","currency_code":"MXN","CustomerID_B":"2340388000028689246","Nombre_Cliente":"18804 PLASTICOS BANDREX S.A. DE C.V.","InvoicePayment_ID":"2340388000075236453","Invoice_Number":"2027970","Invoice_Applied":"162327.62","Balance":"162327.62","Invoice_Applied_BCY":"162327.62","Invoice_Amount":"262327.62","Invoice_Amount_BCY":"262327.62","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34438","payment_id":"2340388000075236145","P_Date":"07-Jul-25","exchange_rate":"1.000000","amount":"2088.00","amount_bcy":"2088.00","reference_number":"BM028JUL25","currency_code":"MXN","CustomerID_B":"2340388000048587277","Nombre_Cliente":"20154 ECOSISTEMA DE CIUDAD LERDO, S.A. DE C.V.","InvoicePayment_ID":"2340388000075236149","Invoice_Number":"2062115","Invoice_Applied":"2088.00","Balance":"2088.00","Invoice_Applied_BCY":"2088.00","Invoice_Amount":"2088.00","Invoice_Amount_BCY":"2088.00","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34460","payment_id":"2340388000075374071","P_Date":"09-Jul-25","exchange_rate":"18.714000","amount":"14542.39","amount_bcy":"272146.29","reference_number":"IN093JUL25","currency_code":"USD","CustomerID_B":"2340388000001102099","Nombre_Cliente":"00872 PARAMOUNT GLOBAL","InvoicePayment_ID":"2340388000075374160","Invoice_Number":"2063506","Invoice_Applied":"859.80","Balance":"859.80","Invoice_Applied_BCY":"16090.30","Invoice_Amount":"859.80","Invoice_Amount_BCY":"16020.40","Invoice_Exch_Rate":"18.632700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34460","payment_id":"2340388000075374071","P_Date":"09-Jul-25","exchange_rate":"18.714000","amount":"14542.39","amount_bcy":"272146.29","reference_number":"IN093JUL25","currency_code":"USD","CustomerID_B":"2340388000001102099","Nombre_Cliente":"00872 PARAMOUNT GLOBAL","InvoicePayment_ID":"2340388000075374175","Invoice_Number":"2063514","Invoice_Applied":"859.80","Balance":"859.80","Invoice_Applied_BCY":"16090.30","Invoice_Amount":"859.80","Invoice_Amount_BCY":"16020.40","Invoice_Exch_Rate":"18.632700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34470","payment_id":"2340388000075342527","P_Date":"09-Jul-25","exchange_rate":"18.714000","amount":"832.02","amount_bcy":"15570.42","reference_number":"IN083JUL25","currency_code":"USD","CustomerID_B":"2340388000042508490","Nombre_Cliente":"19772 SMART & BIGGAR LP (TORONTO)","InvoicePayment_ID":"2340388000075342541","Invoice_Number":"2055420","Invoice_Applied":"484.78","Balance":"484.78","Invoice_Applied_BCY":"9072.17","Invoice_Amount":"484.78","Invoice_Amount_BCY":"9925.48","Invoice_Exch_Rate":"20.474200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34460","payment_id":"2340388000075374071","P_Date":"09-Jul-25","exchange_rate":"18.714000","amount":"14542.39","amount_bcy":"272146.29","reference_number":"IN093JUL25","currency_code":"USD","CustomerID_B":"2340388000001102099","Nombre_Cliente":"00872 PARAMOUNT GLOBAL","InvoicePayment_ID":"2340388000075374142","Invoice_Number":"2063505","Invoice_Applied":"920.29","Balance":"920.29","Invoice_Applied_BCY":"17222.31","Invoice_Amount":"920.29","Invoice_Amount_BCY":"17147.49","Invoice_Exch_Rate":"18.632700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34460","payment_id":"2340388000075374071","P_Date":"09-Jul-25","exchange_rate":"18.714000","amount":"14542.39","amount_bcy":"272146.29","reference_number":"IN093JUL25","currency_code":"USD","CustomerID_B":"2340388000001102099","Nombre_Cliente":"00872 PARAMOUNT GLOBAL","InvoicePayment_ID":"2340388000075374151","Invoice_Number":"2063508","Invoice_Applied":"859.80","Balance":"859.80","Invoice_Applied_BCY":"16090.30","Invoice_Amount":"859.80","Invoice_Amount_BCY":"16020.40","Invoice_Exch_Rate":"18.632700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34503","payment_id":"2340388000075467438","P_Date":"01-Jul-25","exchange_rate":"1.000000","amount":"6994.82","amount_bcy":"6994.82","reference_number":"BM001JUL25","currency_code":"MXN","CustomerID_B":"2340388000001225296","Nombre_Cliente":"14794 BRITISH AMERICAN TOBACCO SERVICIOS, S.A. DE C.V.","InvoicePayment_ID":"2340388000075467445","Invoice_Number":"2061177","Invoice_Applied":"6994.82","Balance":"6994.82","Invoice_Applied_BCY":"6994.82","Invoice_Amount":"6994.82","Invoice_Amount_BCY":"6994.82","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34498","payment_id":"2340388000075464668","P_Date":"10-Jul-25","exchange_rate":"1.000000","amount":"27657.04","amount_bcy":"27657.04","reference_number":"BM045JUL25","currency_code":"MXN","CustomerID_B":"2340388000027836297","Nombre_Cliente":"18723 UVI TECH, S.A.P.I. DE C.V.","InvoicePayment_ID":"2340388000075464675","Invoice_Number":"2059374","Invoice_Applied":"27657.04","Balance":"27657.04","Invoice_Applied_BCY":"27657.04","Invoice_Amount":"82971.08","Invoice_Amount_BCY":"82971.08","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34504","payment_id":"2340388000075467509","P_Date":"03-Jul-25","exchange_rate":"1.000000","amount":"1740.00","amount_bcy":"1740.00","reference_number":"BM018JUL25","currency_code":"MXN","CustomerID_B":"2340388000015511270","Nombre_Cliente":"17768 DESARROLLADORA COLLECTION VIP S.A. DE C.V.","InvoicePayment_ID":"2340388000075467516","Invoice_Number":"2062256","Invoice_Applied":"1740.00","Balance":"1740.00","Invoice_Applied_BCY":"1740.00","Invoice_Amount":"1740.00","Invoice_Amount_BCY":"1740.00","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34523","payment_id":"2340388000075477474","P_Date":"10-Jul-25","exchange_rate":"18.573300","amount":"819.92","amount_bcy":"15228.62","reference_number":"IN108JUL25","currency_code":"USD","CustomerID_B":"2340388000042018007","Nombre_Cliente":"19733 CDS COHN, DE VRIES, STADLER & CO","InvoicePayment_ID":"2340388000075477495","Invoice_Number":"2059037","Invoice_Applied":"396.28","Balance":"396.28","Invoice_Applied_BCY":"7360.23","Invoice_Amount":"396.28","Invoice_Amount_BCY":"7970.10","Invoice_Exch_Rate":"20.112300","Tipo":"Pago","Batch":"71"},
{"payment_number":"34521","payment_id":"2340388000075476996","P_Date":"10-Jul-25","exchange_rate":"18.573300","amount":"8607.29","amount_bcy":"159865.78","reference_number":"IN106JUL25","currency_code":"USD","CustomerID_B":"2340388000001190745","Nombre_Cliente":"11326 JFE TECHNO-RESERCH CORPORATION (JFE-TEC)","InvoicePayment_ID":"2340388000075477035","Invoice_Number":"2061708","Invoice_Applied":"426.00","Balance":"426.00","Invoice_Applied_BCY":"7912.23","Invoice_Amount":"426.00","Invoice_Amount_BCY":"8230.23","Invoice_Exch_Rate":"19.319800","Tipo":"Pago","Batch":"71"},
{"payment_number":"34549","payment_id":"2340388000075519480","P_Date":"11-Jul-25","exchange_rate":"18.626700","amount":"1900.00","amount_bcy":"35390.73","reference_number":"IN123JUL25","currency_code":"USD","CustomerID_B":"2340388000072011276","Nombre_Cliente":"21241 CAMPOSOL S.A.","InvoicePayment_ID":"2340388000075519487","Invoice_Number":"2061698","Invoice_Applied":"1900.00","Balance":"1900.00","Invoice_Applied_BCY":"35390.73","Invoice_Amount":"1900.00","Invoice_Amount_BCY":"36707.62","Invoice_Exch_Rate":"19.319800","Tipo":"Pago","Batch":"71"},
{"payment_number":"34546","payment_id":"2340388000075547810","P_Date":"11-Jul-25","exchange_rate":"18.626700","amount":"200.00","amount_bcy":"3725.34","reference_number":"IN121JUL25","currency_code":"USD","CustomerID_B":"2340388000001185753","Nombre_Cliente":"10786 PAUL D. SUPNIK","InvoicePayment_ID":"2340388000075547817","Invoice_Number":"2063553","Invoice_Applied":"200.00","Balance":"200.00","Invoice_Applied_BCY":"3725.34","Invoice_Amount":"200.00","Invoice_Amount_BCY":"3726.54","Invoice_Exch_Rate":"18.632700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34527","payment_id":"2340388000075505432","P_Date":"11-Jul-25","exchange_rate":"18.626700","amount":"4048.96","amount_bcy":"75418.76","reference_number":"IN132JUL25","currency_code":"USD","CustomerID_B":"2340388000001189757","Nombre_Cliente":"11209 REED SMITH LLP","InvoicePayment_ID":"2340388000075505465","Invoice_Number":"2062064","Invoice_Applied":"498.28","Balance":"498.28","Invoice_Applied_BCY":"9281.31","Invoice_Amount":"498.28","Invoice_Amount_BCY":"9563.59","Invoice_Exch_Rate":"19.193200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34533","payment_id":"2340388000075544647","P_Date":"11-Jul-25","exchange_rate":"18.626700","amount":"1450.00","amount_bcy":"27008.72","reference_number":"IN122JUL25","currency_code":"USD","CustomerID_B":"2340388000072127217","Nombre_Cliente":"21253 FEDERATION INTERNATIONALE DE FOOTBALL ASSOCIATION (FIFA)","InvoicePayment_ID":"2340388000075544654","Invoice_Number":"2062275","Invoice_Applied":"1450.00","Balance":"1450.00","Invoice_Applied_BCY":"27008.72","Invoice_Amount":"1450.00","Invoice_Amount_BCY":"27740.97","Invoice_Exch_Rate":"19.131700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34535","payment_id":"2340388000075544910","P_Date":"11-Jul-25","exchange_rate":"18.626700","amount":"1174.75","amount_bcy":"21881.72","reference_number":"IN125JUL25","currency_code":"USD","CustomerID_B":"2340388000053927291","Nombre_Cliente":"20501 HAYGOR INSTRUMENT & COMPANY, INC.","InvoicePayment_ID":"2340388000075544917","Invoice_Number":"2063040","Invoice_Applied":"1174.75","Balance":"1174.75","Invoice_Applied_BCY":"21881.72","Invoice_Amount":"1174.75","Invoice_Amount_BCY":"22491.53","Invoice_Exch_Rate":"19.145800","Tipo":"Pago","Batch":"71"},
{"payment_number":"34566","payment_id":"2340388000075589689","P_Date":"14-Jul-25","exchange_rate":"18.659500","amount":"5079.31","amount_bcy":"94777.38","reference_number":"IN134JUL25","currency_code":"USD","CustomerID_B":"2340388000028977931","Nombre_Cliente":"18833 DANIEL GLOBAL IP LP","InvoicePayment_ID":"2340388000075589727","Invoice_Number":"2061086","Invoice_Applied":"1500.00","Balance":"1500.00","Invoice_Applied_BCY":"27989.25","Invoice_Amount":"1500.00","Invoice_Amount_BCY":"29236.80","Invoice_Exch_Rate":"19.491200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34584","payment_id":"2340388000075646751","P_Date":"15-Jul-25","exchange_rate":"1.000000","amount":"117792.42","amount_bcy":"117792.42","reference_number":"BV031JUL25","currency_code":"MXN","CustomerID_B":"2340388000016872004","Nombre_Cliente":"17932 LABORATORIOS LE ROY S.A. DE C.V.","InvoicePayment_ID":"2340388000075646762","Invoice_Number":"2059998","Invoice_Applied":"99133.82","Balance":"99133.82","Invoice_Applied_BCY":"99133.82","Invoice_Amount":"99133.82","Invoice_Amount_BCY":"99133.82","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34585","payment_id":"2340388000075646871","P_Date":"15-Jul-25","exchange_rate":"1.000000","amount":"8352.00","amount_bcy":"8352.00","reference_number":"BV034JUL25","currency_code":"MXN","CustomerID_B":"2340388000061257153","Nombre_Cliente":"20844 CAFES Y DERIVADOS DE CIUDAD JUAREZ, S.A. DE C.V.","InvoicePayment_ID":"2340388000075646878","Invoice_Number":"2064082","Invoice_Applied":"8352.00","Balance":"8352.00","Invoice_Applied_BCY":"8352.00","Invoice_Amount":"8352.00","Invoice_Amount_BCY":"8352.00","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34607","payment_id":"2340388000075740350","P_Date":"16-Jul-25","exchange_rate":"18.839700","amount":"34406.38","amount_bcy":"648205.88","reference_number":"IN169JUL25","currency_code":"USD","CustomerID_B":"2340388000062412484","Nombre_Cliente":"20895 NOKIA TECHNOLOGIES OY","InvoicePayment_ID":"2340388000075740491","Invoice_Number":"2061502","Invoice_Applied":"1577.30","Balance":"1577.30","Invoice_Applied_BCY":"29715.86","Invoice_Amount":"1577.30","Invoice_Amount_BCY":"30780.54","Invoice_Exch_Rate":"19.514700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34607","payment_id":"2340388000075740350","P_Date":"16-Jul-25","exchange_rate":"18.839700","amount":"34406.38","amount_bcy":"648205.88","reference_number":"IN169JUL25","currency_code":"USD","CustomerID_B":"2340388000062412484","Nombre_Cliente":"20895 NOKIA TECHNOLOGIES OY","InvoicePayment_ID":"2340388000075740494","Invoice_Number":"2061513","Invoice_Applied":"1409.09","Balance":"1409.09","Invoice_Applied_BCY":"26546.83","Invoice_Amount":"1409.09","Invoice_Amount_BCY":"27497.97","Invoice_Exch_Rate":"19.514700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34607","payment_id":"2340388000075740350","P_Date":"16-Jul-25","exchange_rate":"18.839700","amount":"34406.38","amount_bcy":"648205.88","reference_number":"IN169JUL25","currency_code":"USD","CustomerID_B":"2340388000062412484","Nombre_Cliente":"20895 NOKIA TECHNOLOGIES OY","InvoicePayment_ID":"2340388000075740467","Invoice_Number":"2061507","Invoice_Applied":"1618.61","Balance":"1618.61","Invoice_Applied_BCY":"30494.13","Invoice_Amount":"1618.61","Invoice_Amount_BCY":"31586.69","Invoice_Exch_Rate":"19.514700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34607","payment_id":"2340388000075740350","P_Date":"16-Jul-25","exchange_rate":"18.839700","amount":"34406.38","amount_bcy":"648205.88","reference_number":"IN169JUL25","currency_code":"USD","CustomerID_B":"2340388000062412484","Nombre_Cliente":"20895 NOKIA TECHNOLOGIES OY","InvoicePayment_ID":"2340388000075740476","Invoice_Number":"2061500","Invoice_Applied":"650.68","Balance":"650.68","Invoice_Applied_BCY":"12258.62","Invoice_Amount":"650.68","Invoice_Amount_BCY":"12697.82","Invoice_Exch_Rate":"19.514700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34651","payment_id":"2340388000075842184","P_Date":"17-Jul-25","exchange_rate":"18.717800","amount":"2499.07","amount_bcy":"46777.09","reference_number":"IN179JUL25","currency_code":"USD","CustomerID_B":"2340388000005970953","Nombre_Cliente":"06905 SOCIETÀ ITALIANA BREVETTI S.P.A.","InvoicePayment_ID":"2340388000075842212","Invoice_Number":"2061753","Invoice_Applied":"742.92","Balance":"742.92","Invoice_Applied_BCY":"13905.83","Invoice_Amount":"742.92","Invoice_Amount_BCY":"14319.63","Invoice_Exch_Rate":"19.274800","Tipo":"Pago","Batch":"71"},
{"payment_number":"34643","payment_id":"2340388000075817095","P_Date":"17-Jul-25","exchange_rate":"1.000000","amount":"78497.13","amount_bcy":"78497.13","reference_number":"BM072JUL25","currency_code":"MXN","CustomerID_B":"2340388000001171372","Nombre_Cliente":"09029 JEANADE, S.A. DE C.V.","InvoicePayment_ID":"2340388000075817131","Invoice_Number":"2061983","Invoice_Applied":"11273.97","Balance":"11273.97","Invoice_Applied_BCY":"11273.97","Invoice_Amount":"11273.97","Invoice_Amount_BCY":"11273.97","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34651","payment_id":"2340388000075842184","P_Date":"17-Jul-25","exchange_rate":"18.717800","amount":"2499.07","amount_bcy":"46777.09","reference_number":"IN179JUL25","currency_code":"USD","CustomerID_B":"2340388000005970953","Nombre_Cliente":"06905 SOCIETÀ ITALIANA BREVETTI S.P.A.","InvoicePayment_ID":"2340388000075842206","Invoice_Number":"2060098","Invoice_Applied":"371.46","Balance":"371.46","Invoice_Applied_BCY":"6952.91","Invoice_Amount":"371.46","Invoice_Amount_BCY":"7554.12","Invoice_Exch_Rate":"20.336300","Tipo":"Pago","Batch":"71"},
{"payment_number":"34634","payment_id":"2340388000075743840","P_Date":"17-Jul-25","exchange_rate":"1.000000","amount":"142945.98","amount_bcy":"142945.98","reference_number":"B014JUL25","currency_code":"MXN","CustomerID_B":"2340388000001187300","Nombre_Cliente":"10948 SIEGFRIED RHEIN S.A. DE C.V. (AR)","InvoicePayment_ID":"2340388000075743854","Invoice_Number":"2058388","Invoice_Applied":"62656.58","Balance":"62656.58","Invoice_Applied_BCY":"62656.58","Invoice_Amount":"62656.58","Invoice_Amount_BCY":"62656.58","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34697","payment_id":"2340388000075946509","P_Date":"18-Jul-25","exchange_rate":"1.000000","amount":"19459.49","amount_bcy":"19459.49","reference_number":"BM086JUL25","currency_code":"MXN","CustomerID_B":"2340388000001135007","Nombre_Cliente":"05064 ADVANCED METHODS CO. SRL CV","InvoicePayment_ID":"2340388000075946516","Invoice_Number":"2063800","Invoice_Applied":"19459.49","Balance":"19459.49","Invoice_Applied_BCY":"19459.49","Invoice_Amount":"19459.49","Invoice_Amount_BCY":"19459.49","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34719","payment_id":"2340388000075962516","P_Date":"22-Jul-25","exchange_rate":"18.645500","amount":"1850.88","amount_bcy":"34510.58","reference_number":"COM001JUL25","currency_code":"USD","CustomerID_B":"2340388000001155916","Nombre_Cliente":"07232 OLARTE MOURE & ASOCIADOS S.A.S.","InvoicePayment_ID":"2340388000075962595","Invoice_Number":"2035033","Invoice_Applied":"100.00","Balance":"100.00","Invoice_Applied_BCY":"1864.55","Invoice_Amount":"100.00","Invoice_Amount_BCY":"1791.32","Invoice_Exch_Rate":"17.913200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34719","payment_id":"2340388000075962516","P_Date":"22-Jul-25","exchange_rate":"18.645500","amount":"1850.88","amount_bcy":"34510.58","reference_number":"COM001JUL25","currency_code":"USD","CustomerID_B":"2340388000001155916","Nombre_Cliente":"07232 OLARTE MOURE & ASOCIADOS S.A.S.","InvoicePayment_ID":"2340388000075962607","Invoice_Number":"2038697","Invoice_Applied":"146.59","Balance":"146.59","Invoice_Applied_BCY":"2733.24","Invoice_Amount":"715.86","Invoice_Amount_BCY":"12035.97","Invoice_Exch_Rate":"16.813300","Tipo":"Pago","Batch":"71"},
{"payment_number":"34722","payment_id":"2340388000075989544","P_Date":"21-Jul-25","exchange_rate":"1.000000","amount":"31127.50","amount_bcy":"31127.50","reference_number":"BV057JUL25","currency_code":"MXN","CustomerID_B":"2340388000001222735","Nombre_Cliente":"14557 MEXICO DELICIOSO SA DE CV","InvoicePayment_ID":"2340388000075989551","Invoice_Number":"2057262","Invoice_Applied":"31127.50","Balance":"31127.50","Invoice_Applied_BCY":"31127.50","Invoice_Amount":"81127.50","Invoice_Amount_BCY":"81127.50","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34752","payment_id":"2340388000076117249","P_Date":"22-Jul-25","exchange_rate":"18.645500","amount":"1100.00","amount_bcy":"20510.05","reference_number":"IN232JUL25","currency_code":"USD","CustomerID_B":"2340388000016575458","Nombre_Cliente":"17902 PROPIO, LLC","InvoicePayment_ID":"2340388000076117256","Invoice_Number":"2033679","Invoice_Applied":"1100.00","Balance":"1100.00","Invoice_Applied_BCY":"20510.05","Invoice_Amount":"1100.00","Invoice_Amount_BCY":"18788.77","Invoice_Exch_Rate":"17.080700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34767","payment_id":"2340388000076067850","P_Date":"22-Jul-25","exchange_rate":"18.645500","amount":"4315.00","amount_bcy":"80455.33","reference_number":"IN238JUL25","currency_code":"USD","CustomerID_B":"2340388000003409842","Nombre_Cliente":"17204 PCG365, LLC","InvoicePayment_ID":"2340388000076067857","Invoice_Number":"2063660","Invoice_Applied":"4315.00","Balance":"4315.00","Invoice_Applied_BCY":"80455.33","Invoice_Amount":"4315.00","Invoice_Amount_BCY":"80400.10","Invoice_Exch_Rate":"18.632700","Tipo":"Pago","Batch":"71"},
{"payment_number":"34796","payment_id":"2340388000076251630","P_Date":"24-Jul-25","exchange_rate":"1.000000","amount":"6994.80","amount_bcy":"6994.80","reference_number":"BM108JUL25","currency_code":"MXN","CustomerID_B":"2340388000016516423","Nombre_Cliente":"17883 SANFER FARMA, S.A.P.I. DE C.V","InvoicePayment_ID":"2340388000076251637","Invoice_Number":"2062652","Invoice_Applied":"6994.80","Balance":"6994.80","Invoice_Applied_BCY":"6994.80","Invoice_Amount":"6994.80","Invoice_Amount_BCY":"6994.80","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34819","payment_id":"2340388000076255547","P_Date":"24-Jul-25","exchange_rate":"18.573500","amount":"7514.57","amount_bcy":"139571.87","reference_number":"IN252JUL25","currency_code":"USD","CustomerID_B":"2340388000001168369","Nombre_Cliente":"08677 CROCS, INC.","InvoicePayment_ID":"2340388000076255586","Invoice_Number":"2062791","Invoice_Applied":"1305.00","Balance":"1305.00","Invoice_Applied_BCY":"24238.42","Invoice_Amount":"1305.00","Invoice_Amount_BCY":"24675.33","Invoice_Exch_Rate":"18.908300","Tipo":"Pago","Batch":"71"},
{"payment_number":"34801","payment_id":"2340388000076256553","P_Date":"23-Jul-25","exchange_rate":"1.000000","amount":"7630.48","amount_bcy":"7630.48","reference_number":"BM099JUL25","currency_code":"MXN","CustomerID_B":"2340388000067207779","Nombre_Cliente":"21035 IMPORTADORA DE MERCADERÍA DE EXCELENCIA, S. A DE C.V","InvoicePayment_ID":"2340388000076256560","Invoice_Number":"2063066","Invoice_Applied":"7630.48","Balance":"7630.48","Invoice_Applied_BCY":"7630.48","Invoice_Amount":"7630.48","Invoice_Amount_BCY":"7630.48","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34819","payment_id":"2340388000076255547","P_Date":"24-Jul-25","exchange_rate":"18.573500","amount":"7514.57","amount_bcy":"139571.87","reference_number":"IN252JUL25","currency_code":"USD","CustomerID_B":"2340388000001168369","Nombre_Cliente":"08677 CROCS, INC.","InvoicePayment_ID":"2340388000076255610","Invoice_Number":"2062789","Invoice_Applied":"908.82","Balance":"908.82","Invoice_Applied_BCY":"16879.97","Invoice_Amount":"908.82","Invoice_Amount_BCY":"17184.24","Invoice_Exch_Rate":"18.908300","Tipo":"Pago","Batch":"71"},
{"payment_number":"34848","payment_id":"2340388000076300673","P_Date":"24-Jul-25","exchange_rate":"1.000000","amount":"17400.00","amount_bcy":"17400.00","reference_number":"BM102JUL25","currency_code":"MXN","CustomerID_B":"2340388000043796239","Nombre_Cliente":"19851 COMERCIALIZADORA MERC SA DE CV","InvoicePayment_ID":"2340388000076300680","Invoice_Number":"2061818","Invoice_Applied":"17400.00","Balance":"17400.00","Invoice_Applied_BCY":"17400.00","Invoice_Amount":"17400.00","Invoice_Amount_BCY":"17400.00","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34853","payment_id":"2340388000076274975","P_Date":"25-Jul-25","exchange_rate":"1.000000","amount":"356532.50","amount_bcy":"356532.50","reference_number":"BV070JUL25","currency_code":"MXN","CustomerID_B":"2340388000033330497","Nombre_Cliente":"19128 INTERSURGICAL S.A. DE C.V.","InvoicePayment_ID":"2340388000076274982","Invoice_Number":"2062778","Invoice_Applied":"356532.50","Balance":"356532.50","Invoice_Applied_BCY":"356532.50","Invoice_Amount":"713065.27","Invoice_Amount_BCY":"713065.27","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34833","payment_id":"2340388000076296805","P_Date":"22-Jul-25","exchange_rate":"1.000000","amount":"2088.00","amount_bcy":"2088.00","reference_number":"BV059JUL25","currency_code":"MXN","CustomerID_B":"2340388000001249204","Nombre_Cliente":"17029 MARCAS EXTRAORDINARIAS SA DE CV","InvoicePayment_ID":"2340388000076296812","Invoice_Number":"2061174","Invoice_Applied":"2088.00","Balance":"2088.00","Invoice_Applied_BCY":"2088.00","Invoice_Amount":"2088.00","Invoice_Amount_BCY":"2088.00","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34880","payment_id":"2340388000076379309","P_Date":"28-Jul-25","exchange_rate":"18.557000","amount":"1302.50","amount_bcy":"24170.49","reference_number":"IN295JUL25","currency_code":"USD","CustomerID_B":"2340388000001096282","Nombre_Cliente":"00149 APPLE INC.","InvoicePayment_ID":"2340388000076379323","Invoice_Number":"2061301","Invoice_Applied":"730.00","Balance":"730.00","Invoice_Applied_BCY":"13546.61","Invoice_Amount":"730.00","Invoice_Amount_BCY":"14228.58","Invoice_Exch_Rate":"19.491200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34880","payment_id":"2340388000076379309","P_Date":"28-Jul-25","exchange_rate":"18.557000","amount":"1302.50","amount_bcy":"24170.49","reference_number":"IN295JUL25","currency_code":"USD","CustomerID_B":"2340388000001096282","Nombre_Cliente":"00149 APPLE INC.","InvoicePayment_ID":"2340388000076379320","Invoice_Number":"2061263","Invoice_Applied":"572.50","Balance":"572.50","Invoice_Applied_BCY":"10623.88","Invoice_Amount":"572.50","Invoice_Amount_BCY":"11158.71","Invoice_Exch_Rate":"19.491200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34899","payment_id":"2340388000076383666","P_Date":"25-Jul-25","exchange_rate":"1.000000","amount":"17773.57","amount_bcy":"17773.57","reference_number":"BV069JUL25","currency_code":"MXN","CustomerID_B":"2340388000001235012","Nombre_Cliente":"15717 GRUPO RUZ, S.A. DE C.V.","InvoicePayment_ID":"2340388000076383681","Invoice_Number":"2063392","Invoice_Applied":"6173.57","Balance":"6173.57","Invoice_Applied_BCY":"6173.57","Invoice_Amount":"6173.57","Invoice_Amount_BCY":"6173.57","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34913","payment_id":"2340388000076446402","P_Date":"29-Jul-25","exchange_rate":"18.726700","amount":"2500.00","amount_bcy":"46816.75","reference_number":"IN302JUL25","currency_code":"USD","CustomerID_B":"2340388000051247319","Nombre_Cliente":"20326 FIRST PRODUCE SERVICES, LLC","InvoicePayment_ID":"2340388000076446413","Invoice_Number":"2059960","Invoice_Applied":"1200.00","Balance":"1200.00","Invoice_Applied_BCY":"22472.04","Invoice_Amount":"1200.00","Invoice_Amount_BCY":"24403.56","Invoice_Exch_Rate":"20.336300","Tipo":"Pago","Batch":"71"},
{"payment_number":"34925","payment_id":"2340388000076449139","P_Date":"29-Jul-25","exchange_rate":"18.726700","amount":"5327.87","amount_bcy":"99773.42","reference_number":"IN315JUL25","currency_code":"USD","CustomerID_B":"2340388000005978139","Nombre_Cliente":"09503 S.ORLANDO ASESORES LEGALES Y EN PROP. INDUSTRIAL S.L","InvoicePayment_ID":"2340388000076449146","Invoice_Number":"2061701","Invoice_Applied":"5327.87","Balance":"5327.87","Invoice_Applied_BCY":"99773.42","Invoice_Amount":"5327.87","Invoice_Amount_BCY":"102933.38","Invoice_Exch_Rate":"19.319800","Tipo":"Pago","Batch":"71"},
{"payment_number":"34927","payment_id":"2340388000076431304","P_Date":"29-Jul-25","exchange_rate":"1.000000","amount":"35792.39","amount_bcy":"35792.39","reference_number":"BM121JUL25","currency_code":"MXN","CustomerID_B":"2340388000032660015","Nombre_Cliente":"19071 BALANCE CAPITAL, S.A.P.I. DE C.V.","InvoicePayment_ID":"2340388000076431311","Invoice_Number":"2062910","Invoice_Applied":"35792.39","Balance":"35792.39","Invoice_Applied_BCY":"35792.39","Invoice_Amount":"71584.78","Invoice_Amount_BCY":"71584.78","Invoice_Exch_Rate":"1.000000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34928","payment_id":"2340388000076431372","P_Date":"25-Jul-25","exchange_rate":"18.553800","amount":"715.86","amount_bcy":"13281.92","reference_number":"IN299JUL25","currency_code":"USD","CustomerID_B":"2340388000001119317","Nombre_Cliente":"03366 MORGAN, LEWIS & BOCKIUS LLP (WASHINGTON)","InvoicePayment_ID":"2340388000076431379","Invoice_Number":"2063261","Invoice_Applied":"715.86","Balance":"715.86","Invoice_Applied_BCY":"13281.92","Invoice_Amount":"715.86","Invoice_Amount_BCY":"13433.11","Invoice_Exch_Rate":"18.765000","Tipo":"Pago","Batch":"71"},
{"payment_number":"34918","payment_id":"2340388000076446848","P_Date":"29-Jul-25","exchange_rate":"18.726700","amount":"640.00","amount_bcy":"11985.09","reference_number":"IN314JUL25","currency_code":"USD","CustomerID_B":"2340388000001243781","Nombre_Cliente":"16527 WEIR SLURRY GROUP INC.","InvoicePayment_ID":"2340388000076446855","Invoice_Number":"2057473","Invoice_Applied":"640.00","Balance":"640.00","Invoice_Applied_BCY":"11985.09","Invoice_Amount":"640.00","Invoice_Amount_BCY":"12997.25","Invoice_Exch_Rate":"20.308200","Tipo":"Pago","Batch":"71"},
{"payment_number":"34919","payment_id":"2340388000076409921","P_Date":"29-Jul-25","exchange_r "400", "message" => "ERROR - [wsBalanzaComp_v14] Parametros incompletos para el Servicio Web, faltan el Anio de vigencia.");
$Resultado = json_encode($j_array);
// echo $Resultado;
return;
}
if($mesCata == "")
{
$j_array = array('code' => "400", "message" => "ERROR - [wsBalanzaComp_v14] Parametros incompletos para el Servicio Web, faltan el Mes de vigencia.");
$Resultado = json_encode($j_array);
// echo $Resultado;
return;
}
if($tipoEnvio == "")
{
$j_array = array('code' => "400", "message" => "ERROR - [wsBalanzaComp_v14] Parametros incompletos para el Servicio Web, faltan el Tipo de Envio.");
$Resultado = json_encode($j_array);
// echo $Resultado;
return;
}
if($csvFileName == "")
{
$j_array = array('code' => "400", "message" => "ERROR - [wsBalanzaComp_v14] Parametros incompletos para el Servicio Web, faltan el Nombre del Archivo CSV a procesar.");
$Resultado = json_encode($j_array);
// echo $Resultado;
return $Resultado;
}
if($organi_id_ZB == "")
{
$j_array = array('code' => "306", "message" => "ERROR - [wsBalanzaComp_v14] Parametros incompletos para el Servicio Web, faltan el Organization ID de Books");
$Resultado = json_encode($j_array);
// echo $Resultado;
return $Resultado;
}
$dirBase = realpath("../");
### DEFINICIÓN DE CONSTANTES ###################################################
$SendaCVS = "archs_csv/";
$SendaXML = "archs_xml/";
$SendaZIP = "archs_zip/";
#----------------------------------------------------------------
# Creamos la conexión a la base de datos
#----------------------------------------------------------------
$conn = mysqli_connect("127.0.0.1", "aptuslegal", "#Aptus2021#", "vendorbills");
if (!$conn)
{
echo "Error: No se pudo conectar a MySQL." . PHP_EOL;
echo "errno de depuración: " . mysqli_connect_errno() . PHP_EOL;
exit;
}
#----------------------------------------------------------------
# Traemos los valores de conexión utilizando el organizationId
#----------------------------------------------------------------
$sql = 'SELECT * FROM conndetails WHERE organization_id = ' . $organi_id_ZB;
if($result = $conn->query($sql)) {
$row = $result->fetch_assoc();
}
else
exit('No se ejecuto la consulta');
#----------------------------------------------------------------
# Cerramos la conexión
#----------------------------------------------------------------
mysqli_close($conn);
#----------------------------------------------------------------
# Variables para Zoho Workdrive
#----------------------------------------------------------------
$wdrv_parent_id = $row['zworkdrvbalcom_id'];
$woa_RefreshToken = $row['zworkdrv_rtoken'];
$woa_ClientId = $row['zworkdrvclient_id'];
$woa_ClientSecret = $row['zworkdrvclient_secret'];
$woa_RedirectUri = $row['RedirectUri'];
$woa_AuthUrl = 'https://accounts.zoho.com/oauth/v2/token';
$woa_GrantType = "refresh_token";
#----------------------------------------------------------------
# RFC de la Organización
#----------------------------------------------------------------
$regFeCa = $row['rfc'];
#== Creación de la variable de tipo DOM, aquí se conforma el XML a timbrar posteriormente.
$xml = new DOMdocument('1.0', 'UTF-8');
$root = $xml->createElement("BCE:Balanza");
$root = $xml->appendChild($root);
#== Apertura, lectura y conversión de CSV a JSON.
$fileName = $SendaCVS.$csvFileName;
$csvToJson = csvToJson($fileName);
$arrayJson = json_decode( $csvToJson, true );
// Invertimos el orden del arreglo para los calculos.
$jsonArray = array_reverse($arrayJson, true);
#== Se procesan las cuentas y se obtienen los totales por subcuentas ======
$salIniNivTres = 0.00;
$debitoNivTres = 0.00;
$creditNivTres = 0.00;
$SalFinNivTres = 0.00;
$counNivTres = 0;
$salIniNivTrex = 0.00;
$debitoNivTrex = 0.00;
$creditNivTrex = 0.00;
$SalFinNivTrex = 0.00;
$salIniNivDos = 0.00;
$debitoNivDos = 0.00;
$creditNivDos = 0.00;
$SalFinNivDos = 0.00;
$counNivDos = 0;
$salIniNivUno = 0.00;
$debitoNivUno = 0.00;
$creditNivUno = 0.00;
$SalFinNivUno = 0.00;
$counNivUno = 0;
$totalCargos = 0;
$totalAbonos = 0;
$arrayDetalle = Array();
$Account1count = 0;
foreach($arrayJson as $item => $value)
{
$codCue = substr($value['account_code'],0,3);
if(is_numeric($codCue))
{
if($value['account.CF.Codigo del SAT'] != "")
{
$clave = array_search($value['account_code'], array_column($arrayDetalle, 'NumCta'));
if ($clave == NULL)
{
$arrayDetalle[] = array(
"ClaveSat"=>$value['account.CF.Codigo del SAT'],
"NumCta"=>$value['account_code'],
"SaldoIni"=>0.00,
"Debe"=>0.00,
"Haber"=>0.00,
"SaldoFin"=>0.00
);
}
$Account1count +=1;
}
}
}
foreach($jsonArray as $item => $value)
{
$codCue = substr($value['account_code'],0,3);
$cuePas = "";
$cueNivTre = "";
if(is_numeric($codCue))
{
$AccCod = $value['account_code'];
//echo "Código de cuenta: " . $AccCod ."
";
if(substr($AccCod, 4,2) != "00" && substr($AccCod, -3) != "000")
{
//echo "Cuenta: ".$AccCod." ".$value['opening_balance']." ".$value['debit_total']." ".$value['credit_total']." ".$value['closing_balance']." ".PHP_EOL;
//Nivel tres, se acumula
$totalCargos = $totalCargos + floatval($value['debit_total']);
$totalAbonos = $totalAbonos + floatval($value['credit_total']);
$salIniNivTres = $salIniNivTres + floatval($value['opening_balance']);
$debitoNivTres = $debitoNivTres + floatval($value['debit_total']);
$creditNivTres = $creditNivTres + floatval($value['credit_total']);
$SalFinNivTres = $SalFinNivTres + floatval($value['closing_balance']);
$counNivTres = $counNivTres + 1;
$salIniNivTrex = $salIniNivTrex + floatval($value['opening_balance']);
$debitoNivTrex = $debitoNivTrex + floatval($value['debit_total']);
$creditNivTrex = $creditNivTrex + floatval($value['credit_total']);
$SalFinNivTrex = $SalFinNivTrex + floatval($value['closing_balance']);
// Actualizamos el nivel 3
$sValBus = $AccCod;
$clave = array_search($sValBus, array_column($arrayDetalle, 'NumCta'));
if ($clave !== NULL)
{
//echo "Nivel Tres: ".$sValBus . " ==> ".$value['account.CF.Codigo del SAT']. " ID: ".$clave;
//echo "
";
$arrayDetalle[$clave]['SaldoIni'] = $arrayDetalle[$clave]['SaldoIni'] + number_format($salIniNivTrex,2, '.', '');
$arrayDetalle[$clave]['Debe'] = $arrayDetalle[$clave]['Debe'] + number_format($debitoNivTrex,2, '.', '');
$arrayDetalle[$clave]['Haber'] = $arrayDetalle[$clave]['Haber'] + number_format($creditNivTrex,2, '.', '');
$arrayDetalle[$clave]['SaldoFin'] = $arrayDetalle[$clave]['SaldoFin'] + number_format($SalFinNivTrex,2, '.', '');
// Inicializamos Nivel Tres
$salIniNivTrex = 0.00;
$debitoNivTrex = 0.00;
$creditNivTrex = 0.00;
$SalFinNivTrex = 0.00;
}
}
if(substr($AccCod, 4,2) != "00" && substr($AccCod, -3) == "000")
{
// Nivel Dos, se acumula
if($counNivTres > 0)
{
$salIniNivDos = $salIniNivDos + $salIniNivTres;
$debitoNivDos = $debitoNivDos + $debitoNivTres;
$creditNivDos = $creditNivDos + $creditNivTres;
$SalFinNivDos = $SalFinNivDos + $SalFinNivTres;
}
else
{
$salIniNivDos = $salIniNivDos + floatval($value['opening_balance']);
$debitoNivDos = $debitoNivDos + floatval($value['debit_total']);
$creditNivDos = $creditNivDos + floatval($value['credit_total']);
$SalFinNivDos = $SalFinNivDos + floatval($value['closing_balance']);
$cuePas = substr($AccCod, 0,6);
}
$counNivDos = $counNivDos + 1;
// Actualizamos el Nivel Dos
$jsonArray[$item]['opening_balance'] = number_format($salIniNivDos,2, '.', '');
$jsonArray[$item]['debit_total'] = number_format($debitoNivDos,2, '.', '');
$jsonArray[$item]['credit_total'] = number_format($creditNivDos,2, '.', '');
$jsonArray[$item]['closing_balance'] = number_format($SalFinNivDos,2, '.', '');
// Actualizamos el nivel 2
$sValBus = $AccCod;
$clave = array_search($sValBus, array_column($arrayDetalle, 'NumCta'));
//echo "Nivel Dos: ".$sValBus . " ==> ".$value['account.CF.Codigo del SAT']. " ID: ".$clave;
//echo "
";
if ($clave !== NULL)
{
$arrayDetalle[$clave]['SaldoIni'] = $arrayDetalle[$clave]['SaldoIni'] + number_format($salIniNivDos,2, '.', '');
$arrayDetalle[$clave]['Debe'] = $arrayDetalle[$clave]['Debe'] + number_format($debitoNivDos,2, '.', '');
$arrayDetalle[$clave]['Haber'] = $arrayDetalle[$clave]['Haber'] + number_format($creditNivDos,2, '.', '');
$arrayDetalle[$clave]['SaldoFin'] = $arrayDetalle[$clave]['SaldoFin'] + number_format($SalFinNivDos,2, '.', '');
}
// Nivel Uno, se acumula
$salIniNivUno = $salIniNivUno + $salIniNivDos;
$debitoNivUno = $debitoNivUno + $debitoNivDos;
$creditNivUno = $creditNivUno + $creditNivDos;
$SalFinNivUno = $SalFinNivUno + $SalFinNivDos;
$counNivUno = $counNivUno + 1;
// Inicializamos Nivel Dos
$salIniNivDos = 0.00;
$debitoNivDos = 0.00;
$creditNivDos = 0.00;
$SalFinNivDos = 0.00;
$counNivDos = 0;
// Inicializamos Nivel Tres
$salIniNivTres = 0.00;
$debitoNivTres = 0.00;
$creditNivTres = 0.00;
$SalFinNivTres = 0.00;
$counNivTres = 0;
}
if(substr($AccCod, 4,2) == "00" && substr($AccCod, -3) == "000")
{
if($counNivUno > 0)
{
$jsonArray[$item]['opening_balance'] = number_format($salIniNivUno,2, '.', '');
$jsonArray[$item]['debit_total'] = number_format($debitoNivUno,2, '.', '');
$jsonArray[$item]['credit_total'] = number_format($creditNivUno,2, '.', '');
$jsonArray[$item]['closing_balance'] = number_format($SalFinNivUno,2, '.', '');
// Actualizamos el nivel 1
$sValBus = $AccCod;
$clave = array_search($sValBus, array_column($arrayDetalle, 'NumCta'));
//echo "Nivel Uno: ".$sValBus . " ==> ".$value['account.CF.Codigo del SAT']. " ID: ".$clave;
//echo "
";
if ($clave !== NULL)
{
$arrayDetalle[$clave]['SaldoIni'] = number_format($salIniNivUno,2, '.', '');
$arrayDetalle[$clave]['Debe'] = number_format($debitoNivUno,2, '.', '');
$arrayDetalle[$clave]['Haber'] = number_format($creditNivUno,2, '.', '');
$arrayDetalle[$clave]['SaldoFin'] = number_format($SalFinNivUno,2, '.', '');
}
}
// Inicializamos Nivel Dos
$salIniNivDos = 0.00;
$debitoNivDos = 0.00;
$creditNivDos = 0.00;
$SalFinNivDos = 0.00;
$counNivDos = 0;
// Inicializamos Nivel Tres
$salIniNivTres = 0.00;
$debitoNivTres = 0.00;
$creditNivTres = 0.00;
$SalFinNivTres = 0.00;
$counNivTres = 0;
// Inicializamos Nivel Uno
$salIniNivUno = 0.00;
$debitoNivUno = 0.00;
$creditNivUno = 0.00;
$SalFinNivUno = 0.00;
$counNivUno = 0;
}
}
}
#== Se crea e inserta el primer nodo donde se declaran los namespaces ======
cargaAttNodo($root, array("Version"=>"1.3", "RFC"=>$regFeCa, "Mes"=>$mesCata, "Anio"=>$anioCat, "TipoEnvio"=>$tipoEnvio,"xsi:schemaLocation"=>"http://www.sat.gob.mx/esquemas/ContabilidadE/1_3/BalanzaComprobacion http://www.sat.gob.mx/esquemas/ContabilidadE/1_3/BalanzaComprobacion/BalanzaComprobacion_1_3.xsd", "xmlns:xsi"=>"http://www.w3.org/2001/XMLSchema-instance", "xmlns:BCE"=>"http://www.sat.gob.mx/esquemas/ContabilidadE/1_3/BalanzaComprobacion")
);
$arrayToCSV = Array();
$arrayToCSV[] = array('NumCta','SaldoIni', 'Debe', 'Haber', 'SaldoFin', 'ClaveSat');
foreach($arrayDetalle as $item => $value) {
if($value['ClaveSat'] != "")
{
$codCue = substr($value['NumCta'],0,3);
if(is_numeric($codCue))
{
$cuentas = $xml->createElement("BCE:Ctas");
$cuenta = $root->appendChild($cuentas);
cargaAttNodo($cuenta, array(
"SaldoFin"=>$value['SaldoFin'],
"Haber"=>$value['Haber'],
"Debe"=>$value['Debe'],
"SaldoIni"=>$value['SaldoIni'],
"NumCta"=>$value['NumCta']
)
);
// Creamos el array para el archivo CSV
$arrayToCSV[] = array($value['NumCta'],$value['SaldoIni'], $value['Debe'], $value['Haber'], $value['SaldoFin'], $value['ClaveSat']);
}
}
}
#=== Se guarda el archivo .XML de la Balanza de Comprobación =======================
$xmlFilesPath = 'archs_xml/';
$csvFilesPath = 'archs_csv/';
$zipFilesPath = 'archs_zip/';
if($tipoEnvio == "N")
{
$file_name_with_full_path = $xmlFilesPath.$regFeCa.$anioCat.$mesCata."BN.xml";
$file_name_csv_full_path = $csvFilesPath.$regFeCa.$anioCat.$mesCata."BN.csv";
}
else
{
$file_name_with_full_path = $xmlFilesPath.$regFeCa.$anioCat.$mesCata."BC.xml";
$file_name_csv_full_path = $csvFilesPath.$regFeCa.$anioCat.$mesCata."BC.csv";
}
#=== Si existe el archivo CSV se elimina para crear el nuevo =======================
if(!file_exists($file_name_csv_full_path)){
unlink($file_name_csv_full_path);
}
$fp = fopen($file_name_csv_full_path, 'w');
foreach ($arrayToCSV as $fields) {
fputcsv($fp, $fields);
}
fclose($fp);
#=== Si existe el archivo XML se elimina para crear el nuevo =======================
if(!file_exists($file_name_with_full_path)){
unlink($file_name_with_full_path);
}
#=== Se guarda el archivo XML creado =======================
$cfdi = $xml->saveXML();
$xml->formatOutput = true;
$xml->save($file_name_with_full_path);
unset($xml);
#=== Se dan permisos de escritura al archivo .xml. =========================
if($tipoEnvio == "N")
{
chmod($SendaXML.$regFeCa.$anioCat.$mesCata."BN.xml", 0777);
}
else
{
chmod($SendaXML.$regFeCa.$anioCat.$mesCata."BC.xml", 0777);
}
#=== Se procede a crear el archivo ZIP del Catalogo de Cuentas =========================
$zip = new ZipArchive();
$zipFilesPath = 'archs_zip/';
if($tipoEnvio == "N")
{
$nombreArchivoZip = $zipFilesPath.$regFeCa.$anioCat.$mesCata."BN.zip";
$nameArchZip = $regFeCa.$anioCat.$mesCata."BN.zip";
}
else
{
$nombreArchivoZip = $zipFilesPath.$regFeCa.$anioCat.$mesCata."BC.zip";
$nameArchZip = $regFeCa.$anioCat.$mesCata."BC.zip";
}
#=== Si existe el archivo ZIP se elimina para crear el nuevo =======================
if(!file_exists($nombreArchivoZip)){
unlink($nombreArchivoZip);
}
if (!$zip->open($nombreArchivoZip, ZipArchive::CREATE | ZipArchive::OVERWRITE)) {
exit("Error abriendo ZIP en $nombreArchivoZip");
}
$nombre = basename($file_name_with_full_path);
$zip->addFile($file_name_with_full_path, $nombre);
$resultado = $zip->close();
if (!$resultado)
{
// echo "Error creando archivo";
exit("Error creando archivo ZIP");
}
#=== FIN DEL PROCESO =======================
$resultData = array(
'xmlFilesPath' => $xmlFilesPath,
'xmlFileName' => $regFeCa.$anioCat.$mesCata."BN.xml",
'csvFilesPath' => $csvFilesPath,
'csvFileName' => $regFeCa.$anioCat.$mesCata."BN.csv",
'zipFilesPath' => $zipFilesPath,
'zipFileName' => $regFeCa.$anioCat.$mesCata."BN.zip",
'totalCargos' => round($totalCargos,2),
'totalAbonos' => round($totalAbonos,2),
'totalCuentas' => $Account1count,
'cantidadDeudoras' => 333);
if($tipoEnvio == "N")
{
$j_array = array('code' => "200", 'message' => 'Proceso de creacion de Archivo (NORMAL) de Balanza de Comprobacion fue exitoso', 'data' => $resultData);
}
else
{
$j_array = array('code' => "200", 'message' => "Proceso de creacion de Archivo (COMPLEMENTARIO) de Balanza de Comprobacion fue exitoso", 'data' => $resultData);
}
$Resultado = json_encode($j_array);
echo $Resultado;
return $Resultado;
### FUNCIONES DEL MÓDULO #########################################################
# Funcion para convertir CSV a formato JSON
function csvToJson($fname) {
if (!($fp = fopen($fname, 'r'))) {
die("No se pudo abrir el arcivo CSV...");
}
$key = fgetcsv($fp,"1024",",");
$json = array();
while ($row = fgetcsv($fp,"1024",",")) {
$json[] = array_combine($key, $row);
}
fclose($fp);
return json_encode($json);
}
# Función que integra los nodos al archivo .XML
function cargaAttNodo(&$nodo, $attr){
global $xmldoc;
foreach ($attr as $key => $val){
$val = preg_replace('/\s\s+/', ' ', $val);
$val = trim($val);
if (strlen($val)>0){
$val = utf8_encode(str_replace("|","/",$val));
$nodo->setAttribute($key,$val);
}
}
}