Skip to content

Commit 0c575f2

Browse files
authored
Merge pull request #6 from lunasoft/release/SW.SDK_(PHP)_0.0.2.1
Release/sw.sdk (php) 0.0.2.1
2 parents 3134795 + 802a6da commit 0c575f2

File tree

7 files changed

+600
-58
lines changed

7 files changed

+600
-58
lines changed

README.md

Lines changed: 350 additions & 0 deletions
Large diffs are not rendered by default.

SWServices/Stamp/StampRequest.php

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,5 +55,59 @@ public static function sendReq($url, $token, $xml, $version){
5555
return $response;
5656
}
5757
}
58+
59+
60+
public static function sendReqB64($url, $token, $xml, $version){
61+
$delimiter = '-------------' . uniqid();
62+
$fileFields = array(
63+
'xml' => array(
64+
'type' => 'text/xml',
65+
'content' => $xml
66+
)
67+
);
68+
69+
$data = '';
70+
// populate file fields
71+
foreach ($fileFields as $name => $file) {
72+
$data .= "--" . $delimiter . "\r\n";
73+
// "filename" attribute is not essential; server-side scripts may use it
74+
$data .= 'Content-Disposition: form-data; name="' . $name . '";' .
75+
' filename="' . $name . '"' . "\r\n";
76+
// this is, again, informative only; good practice to include though
77+
$data .= 'Content-Type: ' . $file['type'] . "\r\n";
78+
// this endline must be here to indicate end of headers
79+
$data .= "\r\n";
80+
// the file itself (note: there's no encoding of any kind)
81+
$data .= $file['content'] . "\r\n";
82+
}
83+
// last delimiter
84+
$data .= "--" . $delimiter . "--\r\n";
85+
86+
$curl = curl_init($url.'/cfdi33/stamp/'.$version.'/b64');
87+
curl_setopt($curl , CURLOPT_RETURNTRANSFER, true);
88+
curl_setopt($curl , CURLOPT_POST, true);
89+
curl_setopt($curl , CURLOPT_HTTPHEADER , array(
90+
'Content-Type: multipart/form-data; boundary=' . $delimiter,
91+
'Content-Length: ' . strlen($data),
92+
'Authorization: Bearer '.$token
93+
));
94+
curl_setopt($curl , CURLOPT_POSTFIELDS, $data);
95+
96+
$response = curl_exec($curl);
97+
$httpcode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
98+
$err = curl_error($curl );
99+
curl_close($curl );
100+
101+
if ($err)
102+
{
103+
throw new Exception("cURL Error #:" . $err);
104+
} else if($httpcode!='200') {
105+
106+
die($response);
107+
}
108+
else{
109+
return $response;
110+
}
111+
}
58112
}
59113
?>

SWServices/Stamp/StampService.php

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,25 @@ public static function Set($params){
1818
public static function StampV1($xml){
1919
return stampRequest::sendReq(Services::get_url(), Services::get_token(), $xml, "v1");
2020
}
21-
public static function StampV2($xml){
21+
public static function StampV2($xml, $isb64 = false){
22+
if($isb64){
23+
return stampRequest::sendReqB64(Services::get_url(), Services::get_token(), $xml, "v2");
24+
}
2225
return stampRequest::sendReq(Services::get_url(), Services::get_token(), $xml, "v2");
2326
}
27+
28+
public static function StampV3($xml, $isb64 = false){
29+
if($isb64){
30+
return stampRequest::sendReqB64(Services::get_url(), Services::get_token(), $xml, "v3");
31+
}
32+
return stampRequest::sendReq(Services::get_url(), Services::get_token(), $xml, "v3");
33+
}
34+
public static function StampV4($xml, $isb64 = false){
35+
if($isb64){
36+
return stampRequest::sendReqB64(Services::get_url(), Services::get_token(), $xml, "v4");
37+
}
38+
return stampRequest::sendReq(Services::get_url(), Services::get_token(), $xml, "v4");
39+
}
2440
}
2541

2642

Tests/Resources/B64.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48Y2ZkaTpDb21wcm9iYW50ZSB4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9jZmQvMyBodHRwOi8vd3d3LnNhdC5nb2IubXgvc2l0aW9faW50ZXJuZXQvY2ZkLzMvY2ZkdjMzLnhzZCBodHRwOi8vd3d3LnNhdC5nb2IubXgvUGFnb3MgaHR0cDovL3d3dy5zYXQuZ29iLm14L3NpdGlvX2ludGVybmV0L2NmZC9QYWdvcy9QYWdvczEwLnhzZCIgeG1sbnM6cGFnbzEwPSJodHRwOi8vd3d3LnNhdC5nb2IubXgvUGFnb3MiIFZlcnNpb249IjMuMyIgRmVjaGE9IjIwMTctMDUtMTRUMTI6NTU6MDkiIFNlbGxvPSJlb2NFWEVYajJCWkdwWkNlTWdtL2k5bWJyTlFDM0lSUHJpOU1tbnZYb0Q3cVVGQnNqVVgvWnlPZWZuQjcwRFk5Vnk1OG5yeDB6QllQMGFMTWQ2cmdOV2tlejBmVGo1WU9HeEVJN1VOTXA3ajVBYkJQenZZc0QxaTFSWFh4ZkVIcFJZWVRXRVRqYmZ1VGNwN3ZlS0dOdmVyS0h4MjVWa005blgzSHhOOXJiTHlkTVRwSXA1Q2ljSCtCQnYzaUFCUVdZWmMySUpiek9zanhadndGaWljK2xTZWtSbjR2bG5zTzRaVkErbXBIcG1GcXRZd3JRTnBPOHF1QUh5cVZRSS8zbzZuMXMyVlU0UjIrQW1LNmVYYTJ1TlVaRDlwb2JFNW1zQmF6K1lIby95ZFNnSFlIalp4ZEczL0hFM3lnOERpNUtuamlSaWNBVTRwcnlKaWFmVUJJbFE9PSIgTm9DZXJ0aWZpY2Fkbz0iMjAwMDEwMDAwMDAzMDAwMjI4MTUiIENlcnRpZmljYWRvPSJNSUlGeFRDQ0E2MmdBd0lCQWdJVU1qQXdNREV3TURBd01EQXpNREF3TWpJNE1UVXdEUVlKS29aSWh2Y05BUUVMQlFBd2dnRm1NU0F3SGdZRFZRUUREQmRCTGtNdUlESWdaR1VnY0hKMVpXSmhjeWcwTURrMktURXZNQzBHQTFVRUNnd21VMlZ5ZG1samFXOGdaR1VnUVdSdGFXNXBjM1J5WVdOcHc3TnVJRlJ5YVdKMWRHRnlhV0V4T0RBMkJnTlZCQXNNTDBGa2JXbHVhWE4wY21GamFjT3piaUJrWlNCVFpXZDFjbWxrWVdRZ1pHVWdiR0VnU1c1bWIzSnRZV05wdzdOdU1Ta3dKd1lKS29aSWh2Y05BUWtCRmhwaGMybHpibVYwUUhCeWRXVmlZWE11YzJGMExtZHZZaTV0ZURFbU1DUUdBMVVFQ1F3ZFFYWXVJRWhwWkdGc1oyOGdOemNzSUVOdmJDNGdSM1ZsY25KbGNtOHhEakFNQmdOVkJCRU1CVEEyTXpBd01Rc3dDUVlEVlFRR0V3Sk5XREVaTUJjR0ExVUVDQXdRUkdsemRISnBkRzhnUm1Wa1pYSmhiREVTTUJBR0ExVUVCd3dKUTI5NWIyRmp3NkZ1TVJVd0V3WURWUVF0RXd4VFFWUTVOekEzTURGT1RqTXhJVEFmQmdrcWhraUc5dzBCQ1FJTUVsSmxjM0J2Ym5OaFlteGxPaUJCUTBSTlFUQWVGdzB4TmpFd01qVXlNVFV5TVRGYUZ3MHlNREV3TWpVeU1UVXlNVEZhTUlHeE1Sb3dHQVlEVlFRREV4RkRTVTVFUlUxRldDQlRRU0JFUlNCRFZqRWFNQmdHQTFVRUtSTVJRMGxPUkVWTlJWZ2dVMEVnUkVVZ1ExWXhHakFZQmdOVkJBb1RFVU5KVGtSRlRVVllJRk5CSUVSRklFTldNU1V3SXdZRFZRUXRFeHhNUVU0M01EQTRNVGN6VWpVZ0x5QkdWVUZDTnpjd01URTNRbGhCTVI0d0hBWURWUVFGRXhVZ0x5QkdWVUZDTnpjd01URTNUVVJHVWs1T01Ea3hGREFTQmdOVkJBc1VDMUJ5ZFdWaVlWOURSa1JKTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFndnZDaUNGREZWYVlYN3hkVlJocC8zOFVMV3RvL0xLRFNaeTF5clhLcGFxRlhxRVJKV0Y3OFlIS2YzTjVHQm9YZ3p3RlB1RFgrNWt2WTV3dFlOeHgvT3d1MnNoTlpxRkZoNkVLc3lzUU1lUDVyejZrRTFnRlllbmFQRVVQOXpqK2gwYkwzeFI1YXFvVHNxR0YyNG1LQkxvaWFLNDRwWEJ6R3pnc3haaXNoVkpWTTZYYnpOSlZvbkVVTmJJMjVEaGdXQWQ4NmYyYVUzQm1PSDJLMVJaeDQxZHRUVDU2VXNzekpsczR0UEZPRHIvY2FXdVpFdVV2THAxTTNuajdEeXU4OG1oRDJmKzFmQS9nN2t6Y1UvMXRjcEZYRi9ySXk5M0FQdmtVNzJqd3Zrcm5wcnpzK1NuRzgxKy9GMTZhaHVHc2IyRVo4OGRLSHdxeEVrd3poTXlUYlFJREFRQUJveDB3R3pBTUJnTlZIUk1CQWY4RUFqQUFNQXNHQTFVZER3UUVBd0lHd0RBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQWdFQUoveGtMOEkrZnBpbFpQKzlhTzhuOTMrMjBYeFZvbUxKamVTTCtOZzJFckwyR2dhdHBMdU41SmtuRkJrWkFoeFZJZ01hVFMyM3p6azFSTHRSYVl2SDgzbEJINUUrTStrRWpGR3AxNEZuZTFpVjJQbTN2TDRqZUxtekhnWTFLZjVIbWVWcnJwNFBVN1dRZzE2VnB5SGFKL2VvblBOaUVCVWpjeVExaUZma3pKbW5TSnZER3RmUUsyVGlFb2xESkFwWXYwT1dkbTRpczlCc2ZpOWo2bEk5L1Q2TU5aKy9MTTJML3Q3MlZhdTRyN205NEpERXphTzNBMHdIQXRROTdmakJmQmlPNU04QUVJU0FWN2VaaWRJbDNpYUpKSGtRYkJZaWlXMmdpa3JlVVpLUFVYMEhtbG5JcXFRY0JKaFdLUnU2TnFrNmFaQlRFVExMcEdydkY5T0FyVjFKU3NiZHcvWkgrUDg4UkF0NWVtNS9nand3dEZsTkh5aUtHNXcrVUZwYVpPSzNnWlAwc3Uwc2E2ZGxQZVE5RUw0SmxGa0dxUUNnU1ErTk9zWHFhT2F2Z29QNVZMeWtMd3VHbndJVW51aEJUVmVEYnpwZ3JnOUx1RjVkWXAvenMrWTlTY0pxZTVWTUFhZ0xTWVRTaE50TjhsdVY3THZ4RjlwZ1d3WmRjTTdsVXdxSm1VZGRDaVpxZG5nZzN2elRhY3RNVG9HMTZnWkE0Q1duTWdiVTRFK3I1NDErRk5NcGdBWk52czJDaVcvZUFwZmFhUW9qc1pFQUhEc0R2NEw1bjNNMUNDN2ZZakUvZDYxYVNuZzFMYU82VDFtaCtkRWZQdkx6cDd6eXp6K1VnV01oaTVDczRwY1h4MWVpYzVyN3V4UG9Cd2NDVHQzWUkxaktWVm5WNy93PSIgU3ViVG90YWw9IjEiIE1vbmVkYT0iTVhOIiBUaXBvQ2FtYmlvPSIxIiBUb3RhbD0iMS4xNiIgVGlwb0RlQ29tcHJvYmFudGU9IkkiIEx1Z2FyRXhwZWRpY2lvbj0iNDUxMDAiIHhtbG5zOmNmZGk9Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9jZmQvMyIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSI+PGNmZGk6RW1pc29yIFJmYz0iTEFONzAwODE3M1I1IiBOb21icmU9IkNJTkRFTUVYIFNBIERFIENWIiBSZWdpbWVuRmlzY2FsPSI2MDEiIC8+PGNmZGk6UmVjZXB0b3IgUmZjPSJYRVhYMDEwMTAxMDAwIiBOb21icmU9ImNsaWVudGUgYWwgcHVibGljbyIgUmVzaWRlbmNpYUZpc2NhbD0iVVNBIiBVc29DRkRJPSJQMDEiIC8+PGNmZGk6Q29uY2VwdG9zPjxjZmRpOkNvbmNlcHRvIENsYXZlUHJvZFNlcnY9IjEwMTUxNzAxIiBDYW50aWRhZD0iMSIgQ2xhdmVVbmlkYWQ9IktHTSIgVW5pZGFkPSJraWxvcyIgRGVzY3JpcGNpb249ImFycm96IiBWYWxvclVuaXRhcmlvPSIxIiBJbXBvcnRlPSIxIj48Y2ZkaTpJbXB1ZXN0b3M+PGNmZGk6VHJhc2xhZG9zPjxjZmRpOlRyYXNsYWRvIEJhc2U9IjEiIEltcHVlc3RvPSIwMDIiIFRpcG9GYWN0b3I9IlRhc2EiIFRhc2FPQ3VvdGE9IjAuMTYwMDAwIiBJbXBvcnRlPSIwLjE2IiAvPjwvY2ZkaTpUcmFzbGFkb3M+PC9jZmRpOkltcHVlc3Rvcz48L2NmZGk6Q29uY2VwdG8+PC9jZmRpOkNvbmNlcHRvcz48Y2ZkaTpJbXB1ZXN0b3MgVG90YWxJbXB1ZXN0b3NUcmFzbGFkYWRvcz0iMC4xNiI+PGNmZGk6VHJhc2xhZG9zPjxjZmRpOlRyYXNsYWRvIEltcHVlc3RvPSIwMDIiIFRpcG9GYWN0b3I9IlRhc2EiIFRhc2FPQ3VvdGE9IjAuMTYwMDAwIiBJbXBvcnRlPSIwLjE2IiAvPjwvY2ZkaTpUcmFzbGFkb3M+PC9jZmRpOkltcHVlc3Rvcz48Y2ZkaTpDb21wbGVtZW50bz48cGFnbzEwOlBhZ29zIFZlcnNpb249IjEuMCI+PHBhZ28xMDpQYWdvIEZlY2hhUGFnbz0iMjAxNy0wMy0xNVQwMDowMDowMCIgRm9ybWFEZVBhZ29QPSIwMyIgTW9uZWRhUD0iTVhOIiBNb250bz0iMS4xMSIgTnVtT3BlcmFjaW9uPSJOdW1PcGVyYWNpb24xIiBSZmNFbWlzb3JDdGFPcmQ9IkFBQTAxMDEwMUFBQSIgTm9tQmFuY29PcmRFeHQ9Ik5vbUJhbmNvT3JkRXh0MSIgQ3RhT3JkZW5hbnRlPSIxMjM0NTY3ODkwIiBSZmNFbWlzb3JDdGFCZW49IkFBQTAxMDEwMUFBQSIgQ3RhQmVuZWZpY2lhcmlvPSIxMjM0NTY3ODkwIiBUaXBvQ2FkUGFnbz0iMDEiIENlcnRQYWdvPSJJQT09IiBDYWRQYWdvPSJDYWRQYWdvMSIgU2VsbG9QYWdvPSJJQT09Ij48cGFnbzEwOkRvY3RvUmVsYWNpb25hZG8gSWREb2N1bWVudG89IjEyMzQ1Njc4LTEyMzQtMTIzNC0xMjM0LTEyMzQ1Njc4OTAxMiIgTW9uZWRhRFI9Ik1YTiIgTWV0b2RvRGVQYWdvRFI9IlBVRSIgSW1wU2FsZG9BbnQ9IjEiIEltcFBhZ2Fkbz0iMS4xMSIgLz48cGFnbzEwOkltcHVlc3RvcyBUb3RhbEltcHVlc3Rvc1JldGVuaWRvcz0iMS4xMSIgVG90YWxJbXB1ZXN0b3NUcmFzbGFkYWRvcz0iMSI+PHBhZ28xMDpSZXRlbmNpb25lcz48cGFnbzEwOlJldGVuY2lvbiBJbXB1ZXN0bz0iMDAyIiBJbXBvcnRlPSIxLjExIiAvPjwvcGFnbzEwOlJldGVuY2lvbmVzPjxwYWdvMTA6VHJhc2xhZG9zPjxwYWdvMTA6VHJhc2xhZG8gSW1wdWVzdG89IjAwMyIgVGlwb0ZhY3Rvcj0iQ3VvdGEiIFRhc2FPQ3VvdGE9IjAuMDAwMDAwIiBJbXBvcnRlPSIxIiAvPjwvcGFnbzEwOlRyYXNsYWRvcz48L3BhZ28xMDpJbXB1ZXN0b3M+PC9wYWdvMTA6UGFnbz48L3BhZ28xMDpQYWdvcz48L2NmZGk6Q29tcGxlbWVudG8+PC9jZmRpOkNvbXByb2JhbnRlPg==

Tests/Resources/file.xml

Lines changed: 1 addition & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1 @@
1-
<?xml version="1.0" encoding="utf-8"?>
2-
<cfdi:Comprobante xsi:schemaLocation="http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv33.xsd" Version="3.3" Serie="A" Folio="167ABC" Fecha="2017-05-02T11:51:40" Sello="Rhp6u+fxD1jY8UTjOVRyMSoS3inBXJCTMqUJVVc7J7qoidGGn2l6FcFghyOSJNgu3rdSP6JwTpmOjwVpbpekv3SSjFThXMUKPW54RvuXfZOqG2Aj77geDCML2FvY86ajII/HQHcPNXXjjSn2ISiXgrgIbH3+g55Gn0bY7Egs9XhNk8igOf5xHiiw3XWJIoWgV6Hv7DlQ3w0S2bAGc7fOJniC62MtzLtMtaXlUa1x9bFEss4T7xyw0DhmUXgp4IM1O68f+6aAdnF00xTsHQg3r2FZ7Ak6Fh+41I2GIzpFvVSYGK2pGs8Um1WWjk3La1MivYdYrA/m4IGv1eUDhVtKGA==" FormaPago="01" NoCertificado="20001000000300022815" Certificado="MIIFxTCCA62gAwIBAgIUMjAwMDEwMDAwMDAzMDAwMjI4MTUwDQYJKoZIhvcNAQELBQAwggFmMSAwHgYDVQQDDBdBLkMuIDIgZGUgcHJ1ZWJhcyg0MDk2KTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRtaW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSkwJwYJKoZIhvcNAQkBFhphc2lzbmV0QHBydWViYXMuc2F0LmdvYi5teDEmMCQGA1UECQwdQXYuIEhpZGFsZ28gNzcsIENvbC4gR3VlcnJlcm8xDjAMBgNVBBEMBTA2MzAwMQswCQYDVQQGEwJNWDEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDESMBAGA1UEBwwJQ295b2Fjw6FuMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxITAfBgkqhkiG9w0BCQIMElJlc3BvbnNhYmxlOiBBQ0RNQTAeFw0xNjEwMjUyMTUyMTFaFw0yMDEwMjUyMTUyMTFaMIGxMRowGAYDVQQDExFDSU5ERU1FWCBTQSBERSBDVjEaMBgGA1UEKRMRQ0lOREVNRVggU0EgREUgQ1YxGjAYBgNVBAoTEUNJTkRFTUVYIFNBIERFIENWMSUwIwYDVQQtExxMQU43MDA4MTczUjUgLyBGVUFCNzcwMTE3QlhBMR4wHAYDVQQFExUgLyBGVUFCNzcwMTE3TURGUk5OMDkxFDASBgNVBAsUC1BydWViYV9DRkRJMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgvvCiCFDFVaYX7xdVRhp/38ULWto/LKDSZy1yrXKpaqFXqERJWF78YHKf3N5GBoXgzwFPuDX+5kvY5wtYNxx/Owu2shNZqFFh6EKsysQMeP5rz6kE1gFYenaPEUP9zj+h0bL3xR5aqoTsqGF24mKBLoiaK44pXBzGzgsxZishVJVM6XbzNJVonEUNbI25DhgWAd86f2aU3BmOH2K1RZx41dtTT56UsszJls4tPFODr/caWuZEuUvLp1M3nj7Dyu88mhD2f+1fA/g7kzcU/1tcpFXF/rIy93APvkU72jwvkrnprzs+SnG81+/F16ahuGsb2EZ88dKHwqxEkwzhMyTbQIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAJ/xkL8I+fpilZP+9aO8n93+20XxVomLJjeSL+Ng2ErL2GgatpLuN5JknFBkZAhxVIgMaTS23zzk1RLtRaYvH83lBH5E+M+kEjFGp14Fne1iV2Pm3vL4jeLmzHgY1Kf5HmeVrrp4PU7WQg16VpyHaJ/eonPNiEBUjcyQ1iFfkzJmnSJvDGtfQK2TiEolDJApYv0OWdm4is9Bsfi9j6lI9/T6MNZ+/LM2L/t72Vau4r7m94JDEzaO3A0wHAtQ97fjBfBiO5M8AEISAV7eZidIl3iaJJHkQbBYiiW2gikreUZKPUX0HmlnIqqQcBJhWKRu6Nqk6aZBTETLLpGrvF9OArV1JSsbdw/ZH+P88RAt5em5/gjwwtFlNHyiKG5w+UFpaZOK3gZP0su0sa6dlPeQ9EL4JlFkGqQCgSQ+NOsXqaOavgoP5VLykLwuGnwIUnuhBTVeDbzpgrg9LuF5dYp/zs+Y9ScJqe5VMAagLSYTShNtN8luV7LvxF9pgWwZdcM7lUwqJmUddCiZqdngg3vzTactMToG16gZA4CWnMgbU4E+r541+FNMpgAZNvs2CiW/eApfaaQojsZEAHDsDv4L5n3M1CC7fYjE/d61aSng1LaO6T1mh+dEfPvLzp7zyzz+UgWMhi5Cs4pcXx1eic5r7uxPoBwcCTt3YI1jKVVnV7/w=" CondicionesDePago="CONDICIONES" SubTotal="1511500" Descuento="0.00" Moneda="MXN" TipoCambio="1.0" Total="2298178.00" TipoDeComprobante="I" MetodoPago="PUE" LugarExpedicion="45079" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3-
<cfdi:CfdiRelacionados TipoRelacion="01">
4-
<cfdi:CfdiRelacionado UUID="A39DA66B-52CA-49E3-879B-5C05185B0EF7" />
5-
</cfdi:CfdiRelacionados>
6-
<cfdi:Emisor Rfc="LAN7008173R5" Nombre="CINDEMEX SA DE CV" RegimenFiscal="601" />
7-
<cfdi:Receptor Rfc="HEPR930322977" Nombre="RAFAEL ALEJANDRO HERNÁNDEZ PALACIOS" UsoCFDI="G01" />
8-
<cfdi:Conceptos>
9-
<cfdi:Concepto ClaveProdServ="01010101" NoIdentificacion="00001" Cantidad="1.5" ClaveUnidad="F52" Unidad="TONELADA" Descripcion="ACERO" ValorUnitario="1500000" Importe="1500000">
10-
<cfdi:Impuestos>
11-
<cfdi:Traslados>
12-
<cfdi:Traslado Base="2150000" Impuesto="003" TipoFactor="Tasa" TasaOCuota="0.530000" Importe="1139500" />
13-
</cfdi:Traslados>
14-
<cfdi:Retenciones>
15-
<cfdi:Retencion Base="2250000" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="360000" />
16-
</cfdi:Retenciones>
17-
</cfdi:Impuestos>
18-
<cfdi:CuentaPredial Numero="51888" />
19-
</cfdi:Concepto>
20-
<cfdi:Concepto ClaveProdServ="01010101" NoIdentificacion="00002" Cantidad="1.6" ClaveUnidad="F52" Unidad="TONELADA" Descripcion="ALUMINIO" ValorUnitario="1500" Importe="1500">
21-
<cfdi:Impuestos>
22-
<cfdi:Traslados>
23-
<cfdi:Traslado Base="2400" Impuesto="003" TipoFactor="Tasa" TasaOCuota="0.530000" Importe="1272" />
24-
</cfdi:Traslados>
25-
<cfdi:Retenciones>
26-
<cfdi:Retencion Base="2400" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="384" />
27-
</cfdi:Retenciones>
28-
</cfdi:Impuestos>
29-
<cfdi:InformacionAduanera NumeroPedimento="15 48 4667 6001234" />
30-
</cfdi:Concepto>
31-
<cfdi:Concepto ClaveProdServ="01010101" NoIdentificacion="00003" Cantidad="1.7" ClaveUnidad="F52" Unidad="TONELADA" Descripcion="ZAMAC" ValorUnitario="10000" Importe="10000">
32-
<cfdi:Impuestos>
33-
<cfdi:Traslados>
34-
<cfdi:Traslado Base="17000" Impuesto="003" TipoFactor="Tasa" TasaOCuota="0.530000" Importe="9010" />
35-
</cfdi:Traslados>
36-
<cfdi:Retenciones>
37-
<cfdi:Retencion Base="17000" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="2720" />
38-
</cfdi:Retenciones>
39-
</cfdi:Impuestos>
40-
<cfdi:Parte ClaveProdServ="01010101" NoIdentificacion="055155" Cantidad="1.0" Unidad="UNIDAD" Descripcion="PARTE EJEMPLO" ValorUnitario="1.00" Importe="1.00">
41-
<cfdi:InformacionAduanera NumeroPedimento="15 48 4667 6001234" />
42-
</cfdi:Parte>
43-
</cfdi:Concepto>
44-
</cfdi:Conceptos>
45-
<cfdi:Impuestos TotalImpuestosRetenidos="363104" TotalImpuestosTrasladados="1149782">
46-
<cfdi:Retenciones>
47-
<cfdi:Retencion Impuesto="002" Importe="363104" />
48-
</cfdi:Retenciones>
49-
<cfdi:Traslados>
50-
<cfdi:Traslado Impuesto="003" TipoFactor="Tasa" TasaOCuota="0.530000" Importe="1149782" />
51-
</cfdi:Traslados>
52-
</cfdi:Impuestos>
53-
<cfdi:Complemento />
54-
</cfdi:Comprobante>
1+
<?xml version="1.0" encoding="utf-8"?><cfdi:Comprobante xsi:schemaLocation="http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv33.xsd http://www.sat.gob.mx/Pagos http://www.sat.gob.mx/sitio_internet/cfd/Pagos/Pagos10.xsd" xmlns:pago10="http://www.sat.gob.mx/Pagos" Version="3.3" Fecha="2017-05-14T12:55:09" Sello="eocEXEXj2BZGpZCeMgm/i9mbrNQC3IRPri9MmnvXoD7qUFBsjUX/ZyOefnB70DY9Vy58nrx0zBYP0aLMd6rgNWkez0fTj5YOGxEI7UNMp7j5AbBPzvYsD1i1RXXxfEHpRYYTWETjbfuTcp7veKGNverKHx25VkM9nX3HxN9rbLydMTpIp5CicH+BBv3iABQWYZc2IJbzOsjxZvwFiic+lSekRn4vlnsO4ZVA+mpHpmFqtYwrQNpO8quAHyqVQI/3o6n1s2VU4R2+AmK6eXa2uNUZD9pobE5msBaz+YHo/ydSgHYHjZxdG3/HE3yg8Di5KnjiRicAU4pryJiafUBIlQ==" NoCertificado="20001000000300022815" Certificado="MIIFxTCCA62gAwIBAgIUMjAwMDEwMDAwMDAzMDAwMjI4MTUwDQYJKoZIhvcNAQELBQAwggFmMSAwHgYDVQQDDBdBLkMuIDIgZGUgcHJ1ZWJhcyg0MDk2KTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRtaW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSkwJwYJKoZIhvcNAQkBFhphc2lzbmV0QHBydWViYXMuc2F0LmdvYi5teDEmMCQGA1UECQwdQXYuIEhpZGFsZ28gNzcsIENvbC4gR3VlcnJlcm8xDjAMBgNVBBEMBTA2MzAwMQswCQYDVQQGEwJNWDEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDESMBAGA1UEBwwJQ295b2Fjw6FuMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxITAfBgkqhkiG9w0BCQIMElJlc3BvbnNhYmxlOiBBQ0RNQTAeFw0xNjEwMjUyMTUyMTFaFw0yMDEwMjUyMTUyMTFaMIGxMRowGAYDVQQDExFDSU5ERU1FWCBTQSBERSBDVjEaMBgGA1UEKRMRQ0lOREVNRVggU0EgREUgQ1YxGjAYBgNVBAoTEUNJTkRFTUVYIFNBIERFIENWMSUwIwYDVQQtExxMQU43MDA4MTczUjUgLyBGVUFCNzcwMTE3QlhBMR4wHAYDVQQFExUgLyBGVUFCNzcwMTE3TURGUk5OMDkxFDASBgNVBAsUC1BydWViYV9DRkRJMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgvvCiCFDFVaYX7xdVRhp/38ULWto/LKDSZy1yrXKpaqFXqERJWF78YHKf3N5GBoXgzwFPuDX+5kvY5wtYNxx/Owu2shNZqFFh6EKsysQMeP5rz6kE1gFYenaPEUP9zj+h0bL3xR5aqoTsqGF24mKBLoiaK44pXBzGzgsxZishVJVM6XbzNJVonEUNbI25DhgWAd86f2aU3BmOH2K1RZx41dtTT56UsszJls4tPFODr/caWuZEuUvLp1M3nj7Dyu88mhD2f+1fA/g7kzcU/1tcpFXF/rIy93APvkU72jwvkrnprzs+SnG81+/F16ahuGsb2EZ88dKHwqxEkwzhMyTbQIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAJ/xkL8I+fpilZP+9aO8n93+20XxVomLJjeSL+Ng2ErL2GgatpLuN5JknFBkZAhxVIgMaTS23zzk1RLtRaYvH83lBH5E+M+kEjFGp14Fne1iV2Pm3vL4jeLmzHgY1Kf5HmeVrrp4PU7WQg16VpyHaJ/eonPNiEBUjcyQ1iFfkzJmnSJvDGtfQK2TiEolDJApYv0OWdm4is9Bsfi9j6lI9/T6MNZ+/LM2L/t72Vau4r7m94JDEzaO3A0wHAtQ97fjBfBiO5M8AEISAV7eZidIl3iaJJHkQbBYiiW2gikreUZKPUX0HmlnIqqQcBJhWKRu6Nqk6aZBTETLLpGrvF9OArV1JSsbdw/ZH+P88RAt5em5/gjwwtFlNHyiKG5w+UFpaZOK3gZP0su0sa6dlPeQ9EL4JlFkGqQCgSQ+NOsXqaOavgoP5VLykLwuGnwIUnuhBTVeDbzpgrg9LuF5dYp/zs+Y9ScJqe5VMAagLSYTShNtN8luV7LvxF9pgWwZdcM7lUwqJmUddCiZqdngg3vzTactMToG16gZA4CWnMgbU4E+r541+FNMpgAZNvs2CiW/eApfaaQojsZEAHDsDv4L5n3M1CC7fYjE/d61aSng1LaO6T1mh+dEfPvLzp7zyzz+UgWMhi5Cs4pcXx1eic5r7uxPoBwcCTt3YI1jKVVnV7/w=" SubTotal="1" Moneda="MXN" TipoCambio="1" Total="1.16" TipoDeComprobante="I" LugarExpedicion="45100" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><cfdi:Emisor Rfc="LAN7008173R5" Nombre="CINDEMEX SA DE CV" RegimenFiscal="601" /><cfdi:Receptor Rfc="XEXX010101000" Nombre="cliente al publico" ResidenciaFiscal="USA" UsoCFDI="P01" /><cfdi:Conceptos><cfdi:Concepto ClaveProdServ="10151701" Cantidad="1" ClaveUnidad="KGM" Unidad="kilos" Descripcion="arroz" ValorUnitario="1" Importe="1"><cfdi:Impuestos><cfdi:Traslados><cfdi:Traslado Base="1" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="0.16" /></cfdi:Traslados></cfdi:Impuestos></cfdi:Concepto></cfdi:Conceptos><cfdi:Impuestos TotalImpuestosTrasladados="0.16"><cfdi:Traslados><cfdi:Traslado Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="0.16" /></cfdi:Traslados></cfdi:Impuestos><cfdi:Complemento><pago10:Pagos Version="1.0"><pago10:Pago FechaPago="2017-03-15T00:00:00" FormaDePagoP="03" MonedaP="MXN" Monto="1.11" NumOperacion="NumOperacion1" RfcEmisorCtaOrd="AAA010101AAA" NomBancoOrdExt="NomBancoOrdExt1" CtaOrdenante="1234567890" RfcEmisorCtaBen="AAA010101AAA" CtaBeneficiario="1234567890" TipoCadPago="01" CertPago="IA==" CadPago="CadPago1" SelloPago="IA=="><pago10:DoctoRelacionado IdDocumento="12345678-1234-1234-1234-123456789012" MonedaDR="MXN" MetodoDePagoDR="PUE" ImpSaldoAnt="1" ImpPagado="1.11" /><pago10:Impuestos TotalImpuestosRetenidos="1.11" TotalImpuestosTrasladados="1"><pago10:Retenciones><pago10:Retencion Impuesto="002" Importe="1.11" /></pago10:Retenciones><pago10:Traslados><pago10:Traslado Impuesto="003" TipoFactor="Cuota" TasaOCuota="0.000000" Importe="1" /></pago10:Traslados></pago10:Impuestos></pago10:Pago></pago10:Pagos></cfdi:Complemento></cfdi:Comprobante>

0 commit comments

Comments
 (0)