# Otros métodos útiles

## Obtener XML de la ultima solicitud realizada

Hay momentos en los cuales obtenemos un error y no sabemos como resolverlo, lo que podemos hacer es enviar un correo a **<sri@arca.gob.ar>** explicando el problema y adjuntarles el XML de solicitud y respuesta que te dio el web service para que te den una respuesta. Con ese método obtenés dicho XML.

Recordá utilizar a este método luego de llamar al web service y no antes porque lo que te devuelve es el XML ultima solicitud.

{% tabs %}
{% tab title="Node" %}

```javascript
const res = await afip.getLastRequestXML();

console.log(res);
```

{% endtab %}

{% tab title="PHP" %}

```php
$res = $afip->GetLastRequestXML();

var_dump($res);
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
res = afip.getLastRequestXML

puts res
```

{% endtab %}

{% tab title="Python" %}

```python
res = afip.getLastRequestXML()

print(res)
```

{% endtab %}

{% tab title="API" %}
**Endpoint**

<mark style="color:blue;">`GET`</mark> `https://app.afipsdk.com/api/v1/afip/requests/last-xml`

**Response**

<mark style="color:green;">`STATUS`</mark> `200`

```json
{
    "request": "<?xml version=\"1.0\" encoding...",
    "response": "<soap:Envelope xmlns:soap=..."
}
```

{% endtab %}
{% endtabs %}

## Forzar la solicitud de un nuevo TA

{% hint style="info" %}
Los **TA (token authorization)** **son archivos de ARCA,** manejados automáticamente por la Afip SDK, que contienen la información para poder comunicarse con los web services.
{% endhint %}

El TA dura 12hs y queda cacheado para no solicitarlo todo el tiempo, pero hay momentos en los cuales obtenemos un error y la forma de solucionarlo es descartando el TA actual. Con este método podes forzar a que se renueve.

{% tabs %}
{% tab title="Node" %}
En cualquier web service podes llamar al método `getTokenAuthorization(true);` . El parámetro `true` fuerza la renovación. Por ej:

```javascript
const ta = await afip.ElectronicBilling.getTokenAuthorization(true);

console.log(ta);
```

{% endtab %}

{% tab title="PHP" %}
En cualquier web service podes llamar al método `GetTokenAuthorization(TRUE);` . El parámetro `true` fuerza la renovación. Por ej:

```javascript
$ta = $afip->ElectronicBilling->getTokenAuthorization(TRUE);

var_dump($ta);
```

{% endtab %}

{% tab title="Ruby" %}
En cualquier web service podes llamar al método `getTokenAuthorization(true)` . El parámetro `true` fuerza la renovación. Por ej:

```ruby
ta = afip.ElectronicBilling.getTokenAuthorization(true)

puts ta
```

{% endtab %}

{% tab title="Python" %}
En cualquier web service podes llamar al método `getTokenAuthorization(True)` . El parámetro `true` fuerza la renovación. Por ej:

```python
ta = afip.ElectronicBilling.getTokenAuthorization(True)

print(ta)
```

{% endtab %}

{% tab title="API" %}
Al pedir la autorización debemos poner el parámetro `force_create: true`

**Endpoint**

<mark style="color:blue;">`POST`</mark> `https://app.afipsdk.com/api/v1/afip/auth`

**Ejemplo**

```json
{
    "environment": "dev",
    "tax_id": "20409378472",
    "wsid": "wsfe",
    "force_create": true
}
```

{% endtab %}
{% endtabs %}
