# Reviso # Primeros pasos ## Reviso cosas ### Cuestión Autenticación De momento es sencillo. Se trata de que hay un **Gran Token** para el **agreement** **1257729** que es el acuerdo de desarrollador Entrando en ese acuerdo en app.reviso.com, se dio de alta una app para usar el otro acuerdo, el nacional, con numero **125746** que tiene su propio Gran token. Después hay un publico y un **secret** que es el que se usa de forma global para acompañar al otro token. ### Cuestión endpoints > Hay un articulo interesante [Use Apis](https://help.reviso.com/en/articles/5573892-use-the-apis) donde se peude obtener una coleccion Postman. (Actualmente de 2023) Los endpoints son únicos y la forma de buscar es un poco liosa en Postman, aunque parece que mas sencilla para programarlo. Vien definido en [Filtering](https://api-docs.reviso.com/#filtering) ```json ?filter=name$eq:Joe$and:city$like:*port ``` #### Operadores de filtro
OperatorSyntax
Equals`$eq:`
Not equals`$ne:`
Greater than`$gt:`
Greater than or equal`$gte:`
Less than`$lt:`
Less than or equal`$lte:`
Substring match`$like:`
And also`$and:`
Or else`$or:`
In`$in:`
Not In`$nin:`
#### Soporte LIKE Podemos hacer bésquedas de sub strings con `$like` #### Caracteres especiales y su escape - "$" is escaped with "$$" - "(" is escaped with "$(" - ")" is escaped with "$)" - "*" is escaped with "$*" - "," is escaped with "$," - "\[" is escaped with "$\[" - "\]" is escaped with "$\]" #### Otras cuestiones Se puede forzar la bsuqueda de un valor null. con `$null:` Se pueden usar `in` and `not` como operadores en campos numéricos ``` customerNumber$in:[2,5,7,22,45] ``` #### Escape en URL Esto es muy especial, por si buscamos que lo dudo por caracteres - "<" is escaped with "0" - ">" is escaped with "*1*" - "\*" is escaped with "*2*" - "%" is escaped with "*3*" - ":" is escaped with "*4*" - "&" is escaped with "*5*" - "/" is escaped with "*6*" - "" is escaped with "*7*" - "\_" is escaped with "*8*" - " " is escaped with "*9*" - "?" is escaped with "*10*" - "." is escaped with "*11*" - "#" is escaped with "*12*" - "+" is escaped with "*13*" Ejemplo de url para obtener el producto ABC 2/3 ```json https://rest.reviso.com/products/ABC_9_2_6_3 ``` #### Paginacion Admite hasta 1000 ```json ?pagesize=200 ``` # Proceso Clientes ## Crear un cliente Endpoint: `https://rest.reviso.com/customers`Método: `POST`Body Mínimo: ```json { "address": "Santa clara, 8", "city": "Arenys de Mar", "corporateIdentificationNumber": "B63637953", "country": "España", "countryCode": { "code": "ES" }, "currency": "EUR", "customerGroup": { "customerGroupNumber": 1 }, "email": "admin@setdart.com", "province": { "countryCode": { "code": "ES" }, "provinceNumber": 8 }, "zip": "08359", "name": "Setdart online, S.L.", "vatNumber": "B63637953", "vatZone": { "vatZoneNumber": 1 }, "paymentTerms": { "paymentTermsNumber": 10 } } ``` Y se reibe el dato completo si uno hay errores, con un `201` ```json { "address": "Santa clara, 8", "balance": 0.00, "city": "Arenys de Mar", "corporateIdentificationNumber": "B63637953", "country": "España", "countryCode": { "code": "ES" }, "currency": "EUR", "customerGroup": { "customerGroupNumber": 1 }, "email": "admin@setdart.com", "province": { "countryCode": { "code": "ES" }, "provinceNumber": 8 }, "zip": "08359", "name": "Setdart online, S.L.", "vatNumber": "B63637953", "vatZone": { "vatZoneNumber": 1 }, "paymentTerms": { "paymentTermsNumber": 10 } } ``` ### Sobre los campos especificos Campos que deben ir #### CustomeerGroup `https://rest.reviso.com/customer-groups`
NúmeroDescripcion
1Clientes nacionales
2Clientes EU
3Cliente con retenciones. NO se usa
4Clientes moneda extranjera. No se usa
5Clientes fuera EU
#### VatZone `https://rest.reviso.com/vat-zones` Plantea serias dudas pednientes de consulta.
NúmeroDescripción
1Domestic
2VAT Zone
3Outside EU
4Domestic Exento
7España Recergo de Equivalencia
#### Payment Terms Dedidido por el 10 creod por mi.