PHPackages                             ggarzam/sw-sdk-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. ggarzam/sw-sdk-php

ActiveLibrary[API Development](/categories/api)

ggarzam/sw-sdk-php
==================

PHP Library for SW Services

011XSLT

Since Jul 31Pushed 4y agoCompare

[ Source](https://github.com/ggarzam/sw-sdk-php)[ Packagist](https://packagist.org/packages/ggarzam/sw-sdk-php)[ RSS](/packages/ggarzam-sw-sdk-php/feed)WikiDiscussions master Synced 4w ago

READMEChangelogDependenciesVersions (5)Used By (0)

 [![](https://camo.githubusercontent.com/3a8d53907fd3b4a7a8c016ec1f4b1b606440392e8c2bf694ef2b522bc2130af4/68747470733a2f2f7777772e746865626c6f636b6c6561726e696e672e636f6d2f77702d636f6e74656e742f75706c6f6164732f323031382f30392f6c6f676f5f7068702d363030783630302e706e67)](https://camo.githubusercontent.com/3a8d53907fd3b4a7a8c016ec1f4b1b606440392e8c2bf694ef2b522bc2130af4/68747470733a2f2f7777772e746865626c6f636b6c6561726e696e672e636f6d2f77702d636f6e74656e742f75706c6f6164732f323031382f30392f6c6f676f5f7068702d363030783630302e706e67)

A continuación encontrara la documentación necesaria para consumir nuestro SDK de servicios proveido por \*\*SmarterWeb\*\* para Timbrado de \*\*CFDI 3.3\*\* mediante un servicio \*\*API REST\*\* Estado Actual
-------------

[](#estado-actual)

[![Build Status](https://camo.githubusercontent.com/bfe6ca7a40212f3b67787599de81e10fd2b3e90fbeed92dec8fa0e97199d95c2/68747470733a2f2f7472617669732d63692e6f72672f6c756e61736f66742f73772d73646b2d7068702e7376673f6272616e63683d6d6173746572)](http://travis-ci.org/example/example)

Compatibilidad
--------------

[](#compatibilidad)

- CFDI 3.3
- PHP 5.6 ó en su versión PHP 7

Dependencias
------------

[](#dependencias)

- [PHPUnit](https://phpunit.de/) Para las pruebas Unitarias
- [Composer](https://getcomposer.org/) Para descargar nuestro SDK

---

Instalación
-----------

[](#instalación)

Para poder hacer uso de nuestro SDK para consumir el servio **REST** que **SmarterWeb** le provee primero es necesario tener instalado una version de PHP ya sea la **5.6** o la version **7** y posteriormente instalar manejador de paquetes de PHP **Composer**

#### Instalar Composer

[](#instalar-composer)

- Paso 1: Dirigirnos a la siguiente pagina web
- Paso 2: Dar click en **Download**
- Paso 3: Dar clic en **Composer-Setup.exe** esto abrira una ventana en su explorador para que guarde el archivo composer
- Paso 4: Ejecutar el archivo descargado **Composer-Setup.exe** y seguir los pasos de instalacion

#### Preparar nuestro ambiente de Desarrollo

[](#preparar-nuestro-ambiente-de-desarrollo)

- Paso 1: Necesitaremos crear un archivo llamador **composer.json** y dentro de el ingresaremos la libreria de la cual queremos hacer uso en nuestro ejemplo es **lunasoft/sw-sdk-php**

```
{
    "name": "richbarusta/implement",
    "authors": [
        {
            "name": "Rich Barusta",
            "email": "ricardo.barusta@sw.com.mx"
        }
    ],
    "require": {
        "lunasoft/sw-sdk-php": "dev-master"
    }
}
```

- Paso 2 Dentro de tu carpeta de tu proyecto abrir **CMD** o **PowerShell** y escribir lo siguiente:

```
composer install

```

De esta manera descarga las dependencias que antes escribimos dentro del require que en nuestro caso es el **SDK**

#### En caso de no usar composer

[](#en-caso-de-no-usar-composer)

Se puede hacer uso de las clases mediante la implementacion manual haciendo uso del archivo SWSDK.php en lugar del archivo vendor.php

```
	include('SWSDK.php');
```

---

Implementación
==============

[](#implementación)

La librería cuenta con dos servicios principales los que son la Autenticacion y el Timbrado de CFDI (XML).

#### Nueva funcionalidad para el soporte con servidores Proxy

[](#nueva-funcionalidad-para-el-soporte-con-servidores-proxy)

Si tu posees un servidor proxy en tu empresa y deseas que la libreria lo use, debes pasar un parametro extra llamado "proxy" con el host y puerto de tu servidor proxy.

```
    $params = array(
        "url"=>"http://services.test.sw.com.mx",
        "proxy"=> "server.domain.com:8888"
    );
```

Autenticación
-------------

[](#autenticación)

El servicio de Autenticación es utilizado principalmente para obtener el **token** el cual sera utilizado para poder timbrar nuestro CFDI (xml) ya emitido (sellado), para poder utilizar este servicio es necesario que cuente con un **usuario** y **contraseña** para posteriormente obtenga el token, usted puede utilizar los que estan en este ejemplo para el ambiente de **Pruebas**.

**Obtener Token**

```
