Funciones
Al habilitar este módulo, habilita el uso de los servicios web proporcionados por el NETLOGYC. A continuación, puede realizar una llamada REST de los diferentes servicios web proporcionados por NETLOGYC.
miclinik REST web services server
Una vez que se activa el módulo de servicios web REST, miclinik se convierte también en un servidor de servicios web REST. Entonces puede enviar su propia solicitud REST a la URL relativa /api/index.php/xxx donde xxx es el nombre de la API a llamar.
Puede encontrar una lista de API en su instalación a través del explorador.
Apache setup
No hay nada que hacer. Si su miclinik funciona con Apache, la API REST también debería funcionar. Las API serán atendidas por el mismo servidor web virtual que su aplicación.
Nginx setup
Al igual que Apache, si su miclinik está funcionando dentro de un host virtual NGinx, no debería tener nada que hacer para que su API funcione. Las API serán atendidas por el mismo servidor web virtual que su aplicación.
Sin embargo, la configuración predeterminada de NGinx en muchas distribuciones suele ser un motor de gas y es posible que experimente problemas. Si experimenta estos problemas, puede intentar editar su archivo de configuración NGinx para que coincida con el siguiente ejemplo. Esta es una configuración simple de localhost con un manejo de API REST en funcionamiento (probado con 9.0.1 en parabola gnu / linux).
worker_processes 1; error_log /var/log/nginx/error.log; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name miclinik.localhost; # adjust to your domain root /usr/share/webapps/miclinik; # adjust to your path index index.php; # from https://github.com/miclinik/miclinik/issues/6163#issuecomment-391265538 location ~ [^/]\.php(/|$) { fastcgi_split_path_info ^(.+?\.php)(/.*)$; if (!-f $document_root$fastcgi_script_name) { return 404; } # Mitigate https://httpoxy.org/ vulnerabilities fastcgi_param HTTP_PROXY ""; root /usr/share/webapps/miclinik; fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # miclinik Rest API path support fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_script_name; } } }
List of provided services
Only few services are available. Starting to micllinik 5.0 version, you can see full list of NETLOGYC Web services provided, by calling the explorer here at address:
https://micllinikurl/api/index.php/explorer.
You must first make the first call to the login api to get the API key. Then enter api key to get list of all other available API services.
For example, you can try the explorer on the demo instance at:
https://micllinik.com/api/index.php/explorer
You must first make the first call to the login api to get the API key. Then enter api key to get list of all other available API services.
You can then test directly from this explorer any API. This is the recommended solution to test any miclinik API since any API and parameters is documented here. As a result of any test, you will get the answer but also example on how to call the API from command line using curl.
Installation
To install, open the modules page and activate de API REST module. On the configuration page of the module, there’s a link to an explorer. Click on it to open the API explorer.
On the top right corner, paste the of the user you want to use to call the API and click the “explore” button. Note: The token of each user can be defined on the user record page.
After clicking on “Explore”, you should see all the actions available with this token. If you don’t have a lot of actions, it’s probably because the according modules are not activated. If you want to see the invoices, you have to activate the invoice module in the configuration of miclinik. Same for products, third parties and so on.
On this exploration page of the API, you can do quite a lot of tests. Reading datas from miclinik and writing, modifying and deleting as well. Warning: Data are really modified in your database.
Use
To use the REST API, you have to call an url such as this one : http:///api/index.php/
with one of the 4 following methods : GET, POST, PUT, DELETE, replacing by the action you want to use. Ex : http:///api/index.php/invoices
There’s different ways to do so. Here’s a piece of code but you can also use libraries such as phphttpclient.com
// Example of function to call a REST API function callAPI($method, $apikey, $url, $data = false) { $curl = curl_init(); $httpheader = ['DOLAPIKEY: '.$apikey]; switch ($method) { case "POST": curl_setopt($curl, CURLOPT_POST, 1); $httpheader[] = "Content-Type:application/json"; if ($data) curl_setopt($curl, CURLOPT_POSTFIELDS, $data); break; case "PUT": curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT'); $httpheader[] = "Content-Type:application/json"; if ($data) curl_setopt($curl, CURLOPT_POSTFIELDS, $data); break; default: if ($data) $url = sprintf("%s?%s", $url, http_build_query($data)); } // Optional Authentication: // curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); // curl_setopt($curl, CURLOPT_USERPWD, "username:password"); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_HTTPHEADER, $httpheader); $result = curl_exec($curl); curl_close($curl); return $result; }
This is just a working example. There’s no error control and security was not in mind but you can use this code, modify it to suit your needs
The fonction has 4 parameters :
- $method : string, “GET”, “POST”, “PUT”, “DELETE”
- $apikey : string, “your generated earlier”
- $url : string, url to call. Ex : “http:///api/index.php/invoices”
- $data : string, datas in json format. This parameter is not mandatory.
Accepted parameters
This is documented somewhat in the REST Explorer. Check that first. Second try and see what response you get. Third look at the source code for the given API.
Date
The ISO date format is accepted: %Y-%m-%d e.g. 2020-07-14. yymmdd is not accepted.
Examples with PHP
This is more examples, for different uses cases:
In every examples, we have:
- $apiKey = “”;
- $apiUrl = “http:///api/index.php/”;
// Retrieve products list $listProduits = []; $produitParam = ["limit" => 10000, "sortfield" => "rowid"]; $listProduitsResult = CallAPI("GET", $apiKey, $apiUrl."products", $produitParam); $listProduitsResult = json_decode($listProduitsResult, true); if (isset($listProduitsResult["error"]) && $listProduitsResult["error"]["code"] >= "300") { } else { foreach ($listProduitsResult as $produit) { $listProduits[intval($produit["id"])] = html_entity_decode($produit["ref"], ENT_QUOTES); } }
Comments :
- I retrieve the 10’000 first products sorted on their ID in the base
- html_entity_decode is necessary as single quotes are encoded
- It’s easy to use the same method (replacing products with dictionnarycountries) to retrieve the list of countries and their ID
// Create a product $ref = "my_product_ref_X203ZZ"; $newProduct = [ "ref" => $ref, "label" => $ref ]; $newProductResult = CallAPI("POST", $apiKey, $apiUrl."products", json_encode($newProduct)); $newProductResult = json_decode($newProductResult, true);
Comments :
- before creating a product, it could be wise to check if it exists. Using my first example, you’ll have :
// my ref $ref = "my_product_ref_X203ZZ"; // does it exist in my array $produitKey = array_search($ref, $listProduits); if ($produitKey) { // yes $fk_product = $produitKey; } else { // no // Create the product $newProduct = [ "ref" => $ref, "label" => $ref ]; $newProductResult = CallAPI("POST", $apiKey, $apiUrl."products", json_encode($newProduct)); $newProductResult = json_decode($newProductResult, true); if (isset($newProductResult["error"]) && $newProductResult["error"]["code"] >= "300") { // there's been an error echo "
ERROR", var_dump($newProductResult), "
«;
exit;
} else {
// everything good
$fk_product = $newProductResult;
$listProduits[$fk_product] = $ref;
}
}
Comments :
- I check if the ref of my product exist in the array created in the first example.
- If it exists, I use it’s key in the array as ID
- If it doesn’t exist, I create the product, then I add it to my array for next time then I use the ID created
- I choose this method to do less API calls when I have to import 500 orders. I just need to retrieve the products list once at the beginning instead of searching miclinik each time.
Warning: The example below is not working properly. Creating an order and lines in one go is not supported. Instead you have to create an order first and with the returned order id add the lines using the /orders/{id}/lines endpoint.
// create an order with 2 products // The array where there will be all the products lines of my order. $newCommandeLine = []; // product 1 $ref1 = "my_product_ref_X203ZZ"; $prix1 = 10; $qtt1 = 100; $tva1 = 20; $fk_product1 // product 2 $ref2 = "my_product_ref_B707FD"; $prix2 = 13; $qtt2 = 37; $tva2 = 20; $newCommandeLine[] = [ "desc" => $ref1, "subprice" => $prix1, "qty" => $qtt1, "tva_tx" => floatval($tva1), "fk_product"=> $fk_product1 ]; $newCommandeLine[] = [ "desc" => $ref2, "subprice" => $prix2, "qty" => $qtt2, "tva_tx" => floatval($tva2), "fk_product"=> $fk_product2 ]; if (count($newCommandeLine) > 0) { $newCommande = [ "socid" => $clientmiclinikId, "type" => "0", "lines" => $newCommandeLine, "note_private" => "order created automatically with API", ]; $newCommandeResult = CallAPI("POST", $apiKey, $apiUrl."orders", json_encode($newCommande)); $newCommandeResult = json_decode($newCommandeResult, true); }
Comments :
- $clientmiclinikId is the ID of the customer in the miclinik database. Either you know it or you can search for it before
- type => 0, This is a customer order (while 1 = supplier order)
// Validate an order $newCommandeValider = [ "idwarehouse" => "0", "notrigger" => "0" ]; $newCommandeValiderResult = CallAPI("POST", $apiKey, $apiUrl."orders/".$newCommandeResult."/validate", json_encode($newCommandeValider)); $newCommandeValiderResult = json_decode($newCommandeValiderResult, true);
Comments :
- in this example, on the penultimate line, we can see : $apiUrl.”orders/”.$newCommandeResult.”/validate”.
$newCommandeResult is the ID of the order created in the previous example
// search in the database if a customer exist $customer_name = "Acme Inc"; $clientSearch = json_decode(CallAPI("GET", $apiKey, $apiUrl."thirdparties", array( "sortfield" => "t.rowid", "sortorder" => "ASC", "limit" => "1", "mode" => "1", "sqlfilters" => "(t.nom:=:'".$customer_name."')" ) ), true);
Comments :
- limit => 1 only 1 customer
- mode => 1 we are looking for a customer, not a supplier (they are thirdparties too but with a different status)
- sqlfilters a bit special but there are more examples on the explorer page
// customer doesn't exist. Let's create it and get it's ID $newClient = [ "name" => "customer company name", "email" => "customer company email", "client" => "1", "code_client" => "-1" ]; $newClientResult = CallAPI("POST", $apiKey, $apiUrl."thirdparties", json_encode($newClient)); $newClientResult = json_decode($newClientResult, true); $clientmiclinikId = $newClientResult;
Comments :
- client => 1 He is a customer (not a supplier)
- code_client => -1 so the customer code will be generated automatically.
- we get the customer ID in $clientmiclinikId
Crear tercero: (thirdparties) GET
El siguiente es un ejempo funcional para crear un tercero.
{
«entity»: «1»,
«name»: «PRUEBA-1»,
«name_alias»: «PRUEBA-1»,
«address»: «CRA DIRECCION-1»,
«zip»: null,
«town»: null,
«status»: «1»,
«state_id»: «150»,
«state_code»: «11001»,
«state»: «Bogotá, D.C. – BOGOTÁ, D.C. «,
«phone»: «8520460-1»,
«fax»: «3017915399-1»,
«email»: «carlos.chacon-1@gmail.com»,
«socialnetworks»: [],
«url»: null,
«barcode»: null,
«idprof1»: «»,
«idprof2»: «»,
«idprof3»: «»,
«idprof4»: «»,
«idprof5»: «»,
«idprof6»: «»,
«tva_assuj»: null,
«tva_intra»: «80543301-1»,
«localtax1_assuj»: null,
«localtax1_value»: «0.000»,
«localtax2_assuj»: null,
«localtax2_value»: «0.000»,
«managers»: null,
«capital»: null,
«typent_id»: «101»,
«typent_code»: «TE_HOMME»,
«effectif»: «»,
«effectif_id»: null,
«forme_juridique_code»: null,
«forme_juridique»: «»,
«remise_percent»: 0,
«remise_supplier_percent»: «0»,
«mode_reglement_supplier_id»: null,
«cond_reglement_supplier_id»: null,
«transport_mode_supplier_id»: null,
«fk_prospectlevel»: «»,
«date_modification»: «2021-06-14»,
«user_modification»: «3»,
«date_creation»: «2021-06-14»,
«user_creation»: «3»,
«client»: «3»,
«prospect»: 0,
«fournisseur»: «0»,
«code_client»: «80000001»,
«code_fournisseur»: null,
«code_compta»: null,
«code_compta_client»: null,
«code_compta_fournisseur»: null,
«note_private»: null,
«note_public»: null,
«stcomm_id»: «3»,
«stcomm_picto»: null,
«status_prospect_label»: «Contacted»,
«price_level»: 1,
«outstanding_limit»: null,
«order_min_amount»: null,
«supplier_order_min_amount»: null,
«parent»: null,
«default_lang»: null,
«ref»: «»,
«ref_ext»: null,
«import_key»: null,
«webservices_url»: null,
«webservices_key»: null,
«logo»: null,
«logo_small»: null,
«logo_mini»: null,
«logo_squarred»: null,
«logo_squarred_small»: null,
«logo_squarred_mini»: null,
«fk_multicurrency»: «0»,
«multicurrency_code»: «»,
«bank_account»: null,
«id»: «»,
«array_options»: {
«options_nombre1»: «CARLOS-1»,
«options_nombre2»: «ANDRES»,
«options_apellido1»: «CHACON»,
«options_apellido2»: «ANDRADE»,
«options_additionalaccountid»: «2»,
«options_prof»: «INGENIERO»,
«options_birthdate»: «1990-06-14»,
«options_tipdoc»: «13»,
«options_eps»: «EPS008»,
«options_tipvinculacion»: «4»,
«options_nacionallidad»: «343»,
«options_taxlevelcodelistname»: «49»,
«options_taxlevelcode»: «O-49»
},
«array_languages»: null,
«linkedObjectsIds»: null,
«canvas»: «patient@cabinetmed»,
«fk_project»: null,
«contact»: null,
«contact_id»: null,
«user»: null,
«origin»: null,
«origin_id»: null,
«statut»: null,
«country»: «Colombia»,
«country_id»: «70»,
«country_code»: «CO»,
«region_id»: null,
«barcode_type»: null,
«barcode_type_code»: null,
«barcode_type_label»: null,
«barcode_type_coder»: null,
«mode_reglement_id»: null,
«cond_reglement_id»: «1»,
«demand_reason_id»: null,
«transport_mode_id»: null,
«cond_reglement»: null,
«shipping_method_id»: null,
«model_pdf»: «»,
«last_main_doc»: null,
«fk_bank»: null,
«fk_account»: «0»,
«openid»: null,
«lastname»: null,
«firstname»: null,
«civility_id»: null,
«date_validation»: null,
«specimen»: 0,
«alreadypaid»: null,
«fk_incoterms»: «0»,
«label_incoterms»: null,
«location_incoterms»: null,
«modelpdf»: «»,
«absolute_discount»: «0»,
«absolute_creditnote»: «0»
}
Cuando se crea el tercero la respuesta es el id del tercero.
La siguiente es una respuesta a consulta de un tercero ayuda datos
{
«entity»: «1», (entidada multiemprea siempre =»1″)
«name»: «CARLOS CHACON», (Nombre) Campo obligatorio
«name_alias»: «»,
«address»: «CRA 2 NO 5 30 CASA 2», (dirección) Campo obligatorio
«zip»: null,
«town»: null,
«status»: «1», (estado del tercero siempre =»1″)
«state_id»: «479», (Ciudad id tabla departaments) Campo obligatorio
«state_code»: «25200», (Ciudad codigo tabla departaments)
«state»: «Cundinamarca – COGUA «, (nombre ciudad departamento)
«phone»: «8520460», (telefono obligatorio)
«fax»: «3017915399», (telefono 2)
«email»: «carlos.andres.chacon@gmail.com», (email) Campo obligatorio
«socialnetworks»: [],
«url»: null,
«barcode»: null,
«idprof1»: «»,
«idprof2»: «»,
«idprof3»: «»,
«idprof4»: «»,
«idprof5»: «»,
«idprof6»: «»,
«tva_assuj»: null,
«tva_intra»: «80543301», (DOCUMENTO DE IDENTIDAD) Campo obligatorio
«localtax1_assuj»: null,
«localtax1_value»: «0.000»,
«localtax2_assuj»: null,
«localtax2_value»: «0.000»,
«managers»: null,
«capital»: null,
«typent_id»: «101», (genero 101=masculino 102=femenino) Campo obligatorio
«typent_code»: «TE_HOMME», ()
«effectif»: «»,
«effectif_id»: null,
«forme_juridique_code»: null,
«forme_juridique»: «»,
«remise_percent»: 0,
«remise_supplier_percent»: «0»,
«mode_reglement_supplier_id»: null,
«cond_reglement_supplier_id»: null,
«transport_mode_supplier_id»: null,
«fk_prospectlevel»: «»,
«date_modification»: 1624547121, (fecha de registro =2021-06-30)
«user_modification»: «2», (usuario apikey siempre =»3″)
«date_creation»: 1624380350, (fecha de registro =2021-06-30)
«user_creation»: «1», (usuario apikey =»3″)
«client»: «3», (tipo cliente siempre =»3″)
«prospect»: 0, (prospecto siempre =0)
«fournisseur»: «0», (proveedor siempre =»0″)
«code_client»: «80543301», (Documento de identidad sin puntos, sin raya, sin DV, dato solo numerico, no puede estar repetido) Campo obligatorio
«code_fournisseur»: null,
«code_compta»: null,
«code_compta_client»: null,
«code_compta_fournisseur»: null,
«note_private»: null,
«note_public»: null, (Nota Publica o comentarios)
«stcomm_id»: «3»,
«stcomm_picto»: null,
«status_prospect_label»: «Contacted»,
«price_level»: 1, (lista de precios =1)
«outstanding_limit»: null,
«order_min_amount»: null,
«supplier_order_min_amount»: null,
«parent»: null,
«default_lang»: null,
«ref»: «241», (Referencia Automatico id)
«ref_ext»: null,
«import_key»: null,
«webservices_url»: null,
«webservices_key»: null,
«logo»: null,
«logo_small»: null,
«logo_mini»: null,
«logo_squarred»: null,
«logo_squarred_small»: null,
«logo_squarred_mini»: null,
«fk_multicurrency»: «0»,
«multicurrency_code»: «»,
«bank_account»: null,
«id»: «241»,(Automatico id)
«array_options»: {
«options_nombre1»: «CARLOS», (Primer nombre) Campo obligatorio
«options_nombre2»: «ANDRES», (Segundo nombre)
«options_apellido1»: «CHACON», (Primer pellido)Campo obligatorio
«options_apellido2»: «ANDRADE», (Segundo apellido)
«options_additionalaccountid»: «2», (1=Persona Juridica – 2=Persona Natural) Campo obligatorio
«options_prof»: «INGENIERO», (profesión)
«options_birthdate»: 274165200, (Fecha de cumpleaños Formato=1978-07-21)
«options_tipdoc»: «13», (Tipo de documento listado) 11=Registro civil de nacimiento – 12=Tarjeta de identidad – 13=Cédula de ciudadanía – 21=Tarjeta de extrangería – 31=NIT – 41=Pasaporte – 42=Tipo de documento extranjero – 43=Sin identificación del exterior o para uso definido por la DIAN Cuantías menores – Campo obligatorio
«options_eps»: «EPS008», (eps listado) Campo obligatorio
«options_tipvinculacion»: «4», (tipo usuario eps listado) 1=Contributivo 2=Subsidiado 3=Régimen excepcional o especial 4=Prepagada 5=PC 6=No aplica – Campo obligatorio
«options_nacionallidad»: «343», (nacionalidad listado) – Campo obligatorio
«options_taxlevelcodelistname»: «49», (Tipo de persona listado) 1=Persona Juridica, 2=Persona Natural – Campo obligatorio
«options_taxlevelcode»: «O-49» (Responsabilidades fiscales listado) O-48=Impuesto sobre las ventas, O-49=No responsable de IVA – Campo obligatorio
},
«array_languages»: null,
«linkedObjectsIds»: null,
«canvas»: «patient@cabinetmed», (siempre =»patient@cabinetmed»)
«fk_project»: null,
«contact»: null,
«contact_id»: null,
«user»: null,
«origin»: null,
«origin_id»: null,
«statut»: null,
«country»: «Colombia», (siempre =»Colombia»)
«country_id»: «70», (siempre =»70″)
«country_code»: «CO», (siempre =»CO»)
«region_id»: null,
«barcode_type»: null,
«barcode_type_code»: null,
«barcode_type_label»: null,
«barcode_type_coder»: null,
«mode_reglement_id»: null,
«cond_reglement_id»: «1»,
«demand_reason_id»: null,
«transport_mode_id»: null,
«cond_reglement»: null,
«shipping_method_id»: null,
«model_pdf»: «»,
«last_main_doc»: null,
«fk_bank»: null,
«fk_account»: «0»,
«openid»: null,
«lastname»: null,
«firstname»: null,
«civility_id»: null,
«date_validation»: null,
«specimen»: 0,
«alreadypaid»: null,
«fk_incoterms»: «0»,
«label_incoterms»: null,
«location_incoterms»: null,
«modelpdf»: «»,
«absolute_discount»: «0»,
«absolute_creditnote»: «0»
}
LOS SIGUIENTES SON LOS LISTADOS DE LOS CAMPOS CON LISTA DE SELECCION
—————–
LISTADO EPS
EPS001,ALIANSALUD EPS
EPS002,SALUD TOTAL – ENTIDAD PROMOTORA DE SALUD DE REGIMEN CONTRIBUTIVO
EPS003,CAFESALUD EPS
EPS005,SANITAS EPS
EPS008,COMPENSAR
EPS009,CONFENALCO ANTIOQUIA – CAJA DE COMPENSACION CONFENALCO ANTIOQUIA
EPS010,SURA – COMPAÑÍA SURAMERICANA DE SERVICIOS DE SALUD S.A
EPS012,CONFENALCO VALLE EPS
EPS013,SALUDCOOP EPS
EPS014,HUMANA VIVIR ARS
EPS015,COLPATRIA – SALUD COLPATRIA S.A
EPS016,COOMEVA EPS S.A
EPS017,EPS FAMISANAR LTDA
EPS018,SERVICIO OCCIDENTAL DE SALUD S.A SOS
EPS023,CRUZ BLANCA EPS
EPS026,SOLSALUD – ENTIDAD PROMOTORA DE SALUD DEL REGIMEN CONTRIBUTIVO Y SUBSIDIADO SOLSALUD EPS S.A
EPS033,SALUD VIDA EPS
EPS037,NUEVA EPS
EPS039,GOLDEN GROUP S.A EPS
RES002,ECOPETROL S.A.S
CCF018,CAFAM
EPS020,CAPRECOM – CAJA DE PREVISION SOCIAL DE COMUNICACIÓN CAPRECOM EPS
EPS022,CONVIDA – ENTIDAD PROMOTORA DE SALUD DEL REGIMEN SUBSIDIADO EPS CONVIDA
EPS025,CAPRESOCA EPS
EPSS34,CAPITAL SALUD EPS-S S.A.S
RES001,DIRECCION DE SANIDAD POLICIAL
RES003,DIRECCION DE SANIDAD MILITAR
EPS045,MEDIMAS EPS S.A.S CM
EPS040,SAVIA SALUD EPS
FMS001,FUERZAS MILITARES
POL001,POLICIA NACIONAL
EMP002,MEDPLUS MEDICINA PREPAGADA S.A
EMP017,COLMEDICA MEDICINA PREPAGADA
EMP023,COMPAÑÍA DE MEDICINA PREPAGADA COLSANITAS
EMP028,COOMEVA MEDICINA PREPAGADA S.A.
EMP090,NO APLICA
———————
NACIONALIDAD
102,AUSTRIA
103,BELGICA
104,BULGARIA
106,CHIPRE
107,DINAMARCA
108,ESPAÑA
109,FINLANDIA
110,FRANCIA
111,GRECIA
112,HUNGRIA
113,IRLANDA
115,ITALIA
117,LUXEMBURGO
118,MALTA
121,PAISES BAJOS
122,POLONIA
123,PORTUGAL
125,REINO UNIDO
126,ALEMANIA
128,RUMANIA
131,SUECIA
136,LETONIA
141,ESTONIA
142,LITUANIA
143,REPUBLICA CHECA
144,REPUBLICA ESLOVACA
147,ESLOVENIA
198,OTROS PAISES O TERRITORIOS DE LA UNION EUROPEA
101,ALBANIA
114,ISLANDIA
116,LIECHTENSTEIN
119,MONACO
120,NORUEGA
124,ANDORRA
129,SAN MARINO
130,SANTA SEDE
132,SUIZA
135,UCRANIA
137,MOLDAVIA
138,BELARUS
139,GEORGIA
145,BOSNIA Y HERZEGOVINA
146,CROACIA
148,ARMENIA
154,RUSIA
156,MACEDONIA
157,SERBIA
158,MONTENEGRO
170,GUERNESEY
171,SVALBARD Y JAN MAYEN
172,ISLAS FEROE
173,ISLA DE MAN
174,GIBRALTAR
175,ISLAS DEL CANAL
176,JERSEY
177,ISLAS ALAND
436,TURQUIA
199,OTROS PAISES O TERRITORIOS DEL RESTO DE EUROPA
201,BURKINA FASO
202,ANGOLA
203,ARGELIA
204,BENIN
205,BOTSWANA
206,BURUNDI
207,CABO VERDE
208,CAMERUN
209,COMORES
210,CONGO
211,COSTA DE MARFIL
212,DJIBOUTI
213,EGIPTO
214,ETIOPIA
215,GABON
216,GAMBIA
217,GHANA
218,GUINEA
219,GUINEA-BISSAU
220,GUINEA ECUATORIAL
221,KENIA
222,LESOTHO
223,LIBERIA
224,LIBIA
225,MADAGASCAR
226,MALAWI
227,MALI
228,MARRUECOS
229,MAURICIO
230,MAURITANIA
231,MOZAMBIQUE
232,NAMIBIA
233,NIGER
234,NIGERIA
235,REPUBLICA CENTROAFRICANA
236,SUDAFRICA
237,RUANDA
238,SANTO TOME Y PRINCIPE
239,SENEGAL
240,SEYCHELLES
241,SIERRA LEONA
242,SOMALIA
243,SUDAN
244,SWAZILANDIA
245,TANZANIA
246,CHAD
247,TOGO
248,TUNEZ
249,UGANDA
250,REP.DEMOCRATICA DEL CONGO
251,ZAMBIA
252,ZIMBABWE
253,ERITREA
260,SANTA HELENA
261,REUNION
262,MAYOTTE
263,SAHARA OCCIDENTAL
299,OTROS PAISES O TERRITORIOS DE AFRICA
301,CANADA
302,ESTADOS UNIDOS DE AMERICA
303,MEXICO
370,SAN PEDRO Y MIQUELON
371,GROENLANDIA
396,OTROS PAISES O TERRITORIOS DE AMERICA DEL NORTE
310,ANTIGUA Y BARBUDA
311,BAHAMAS
312,BARBADOS
313,BELICE
314,COSTA RICA
315,CUBA
316,DOMINICA
317,EL SALVADOR
318,GRANADA
319,GUATEMALA
320,HAITI
321,HONDURAS
322,JAMAICA
323,NICARAGUA
324,PANAMA
325,SAN VICENTE Y LAS GRANADINAS
326,REPUBLICA DOMINICANA
327,TRINIDAD Y TOBAGO
328,SANTA LUCIA
329,SAN CRISTOBAL Y NIEVES
380,ISLAS CAIMÁN
381,ISLAS TURCAS Y CAICOS
382,ISLAS VÍRGENES DE LOS ESTADOS UNIDOS
383,GUADALUPE
384,ANTILLAS HOLANDESAS
385,SAN MARTIN (PARTE FRANCESA)
386,ARUBA
387,MONTSERRAT
388,ANGUILLA
389,SAN BARTOLOME
390,MARTINICA
391,PUERTO RICO
392,BERMUDAS
393,ISLAS VIRGENES BRITANICAS
398,OTROS PAISES O TERRITORIOS DEL CARIBE Y AMERICA CENTRAL
340,ARGENTINA
341,BOLIVIA
342,BRASIL
343,COLOMBIA
344,CHILE
345,ECUADOR
346,GUYANA
347,PARAGUAY
348,PERU
349,SURINAM
350,URUGUAY
351,VENEZUELA
394,GUAYANA FRANCESA
395,ISLAS MALVINAS
399,OTROS PAISES O TERRITORIOS DE SUDAMERICA
401,AFGANISTAN
402,ARABIA SAUDI
403,BAHREIN
404,BANGLADESH
405,MYANMAR
407,CHINA
408,EMIRATOS ARABES UNIDOS
409,FILIPINAS
410,INDIA
411,INDONESIA
412,IRAQ
413,IRAN
414,ISRAEL
415,JAPON
416,JORDANIA
417,CAMBOYA
418,KUWAIT
419,LAOS
420,LIBANO
421,MALASIA
422,MALDIVAS
423,MONGOLIA
424,NEPAL
425,OMAN
426,PAKISTAN
427,QATAR
430,COREA
431,COREA DEL NORTE
432,SINGAPUR
433,SIRIA
434,SRI LANKA
435,TAILANDIA
437,VIETNAM
439,BRUNEI
440,ISLAS MARSHALL
441,YEMEN
442,AZERBAIYAN
443,KAZAJSTAN
444,KIRGUISTAN
445,TADYIKISTAN
446,TURKMENISTAN
447,UZBEKISTAN
448,ISLAS MARIANAS DEL NORTE
449,PALESTINA
450,HONG KONG
453,BHUTÁN
454,GUAM
455,MACAO
499,OTROS PAISES O TERRITORIOS DE ASIA
501,AUSTRALIA
502,FIJI
504,NUEVA ZELANDA
505,PAPUA NUEVA GUINEA
506,ISLAS SALOMON
507,SAMOA
508,TONGA
509,VANUATU
511,MICRONESIA
512,TUVALU
513,ISLAS COOK
515,NAURU
516,PALAOS
517,TIMOR ORIENTAL
520,POLINESIA FRANCESA
521,ISLA NORFOLK
522,KIRIBATI
523,NIUE
524,ISLAS PITCAIRN
525,TOKELAU
526,NUEVA CALEDONIA
527,WALLIS Y FORTUNA
528,SAMOA AMERICANA
599,OTROS PAISES O TERRITORIOS DE OCEANIA
Crear miembro (members)
Los datos de creación de miembro se pueden autocompletar con los correspondientes a la creación del tercero que se creo anteriormente, «el sistema responde con el id en la creación del tercero».
{
«mesgs»: null,
«login»: null,
«pass»: null,
«pass_indatabase»: null,
«pass_indatabase_crypted»: null,
«societe»: «CARLOS CHACON», (nombres y apellodos)
«company»: «CARLOS CHACON», (nombres y apellodos)
«fk_soc»: «241», (id tercero) se obtiene cuando se crea el tercero en la respuesta del envío de la consulta. Campo obligatorio
«socid»: «241», (id tercero) se obtiene cuando se crea el tercero en la respuesta del envío de la consulta. Campo obligatorio
«address»: «CRA 2 NO 5-30 CASA 2», (dirección)
«zip»: null,
«town»: null,
«state_id»: «479», (Ciudad id tabla departaments)
«state_code»: «25200», (Ciudad codigo tabla departaments)
«state»: «Cundinamarca – COGUA «, (Ciudad tabla departaments)
«email»: «carlos.andres.chacon@gmail.com», (email)
«socialnetworks»: [],
«skype»: null,
«twitter»: null,
«facebook»: null,
«linkedin»: null,
«phone»: «8520460», (Telefono)
«phone_perso»: «3017915399»,
«phone_pro»: null,
«phone_mobile»: «3017915399»,
«fax»: null,
«poste»: null,
«morphy»: «mor», (Tipo de miembro Titular=»mor» Beneficiario=»phy») Campo obligatorio
«public»: «1», (info publica siempre =»1″)
«photo»: null,
«datec»: «2021-06-30», (Fecha de creación Formato=1978-07-21)
«datem»: «2021-06-30», (Fecha de modificación Formato=1978-07-21)
«datevalid»: «2021-06-30», (Fecha de validación Formato=1978-07-21)
«gender»: «man», (genero Hombre=»man» Mujer =woman)
«birth»: 1978-07-21, (Fecha de cumpleaños Formato=1978-07-21)
«typeid»: «1», (afiliado nacional =»1″ afiliado extranjero =»2″)
«type»: «AFILIADO NACIONAL», (Tipo afiliado 1 =»AFILIADO NACIONAL» 2 =»AFILIADO VENEZUELA»)
«need_subscription»: «0»,
«user_id»: «»,
«user_login»: «»,
«datefin»: «2022-06-22», (fin suscripción)
«first_subscription_date»: «2021-06-22», (inicio de sus suscripción)
«first_subscription_amount»: «81000.00000000», Valor pagado suscripcion
«last_subscription_date»: «2021-06-22», (Ultima suscripcion)
«last_subscription_date_start»: «2021-06-22», (inicio ultima suscripcion)
«last_subscription_date_end»: «2022-06-22», (fin ultima suscripcion)
«last_subscription_amount»: «81000.00000000»,
«entity»: «1»,
«id»: «51», (id suscripcion dato automatico)
«import_key»: null,
«array_options»: {
«options_idtuappsistencia»: null,
«options_titularafiliacion»: null
},
«array_languages»: null,
«linkedObjectsIds»: null,
«canvas»: null,
«fk_project»: null,
«contact»: null,
«contact_id»: null,
«thirdparty»: null,
«user»: null,
«origin»: null,
«origin_id»: null,
«ref»: «51»,
«ref_ext»: null,
«statut»: «1»,
«status»: null,
«country»: «Colombia»,
«country_id»: «70»,
«country_code»: «CO»,
«region_id»: null,
«barcode_type»: null,
«barcode_type_code»: null,
«barcode_type_label»: null,
«barcode_type_coder»: null,
«mode_reglement_id»: null,
«cond_reglement_id»: null,
«demand_reason_id»: null,
«transport_mode_id»: null,
«cond_reglement»: null,
«model_pdf»: null,
«last_main_doc»: null,
«fk_bank»: null,
«fk_account»: null,
«openid»: null,
«note_public»: «PRUEBAS TUAPPSISTENCIA»,
«note_private»: null,
«note»: null,
«lines»: null,
«name»: null,
«lastname»: «CHACON ANDRADE»,
«firstname»: «CARLOS ANDRES»,
«civility_id»: «MR»,
«date_creation»: «2021-06-22»,
«date_validation»: «2021-06-22»,
«date_modification»: «2021-06-22»,
«specimen»: 0,
«alreadypaid»: null,
«civility_code»: «MR»,
«civility»: «Señor»,
«first_subscription_date_start»: «2021-06-22»,
«first_subscription_date_end»: «2022-06-22»
}
«datec»: «2021-06-22»,
«datem»: «2021-06-22»,
«dateh»: «2021-06-22»,
«datef»: «2022-06-22»,
«fk_type»: «1»,
«fk_adherent»: «51», (id miembro respuesta creación miembro)
«amount»: «80008.00000000», (Valor cancelado por la suscripción o producto)
«fk_bank»: null,
«id»: «», (id suscripción automático)
«entity»: «1»,
«import_key»: null,
«array_options»: [],
«array_languages»: null,
«linkedObjectsIds»: null,
«canvas»: null,
«fk_project»: null,
«contact»: null,
«contact_id»: null,
«thirdparty»: null,
«user»: null,
«origin»: null,
«origin_id»: null,
«ref»: «»,
«ref_ext»: null,
«statut»: null,
«status»: null,
«country»: «Colombia»,
«country_id»: «70»,
«country_code»: «CO»,
«state»: «Cundinamarca – COGUA «, (Ciudad tabla departaments)
«state_id»: «479», (Ciudad id tabla departaments)
«state_code»: «25200», (Ciudad código tabla departaments)
«region_id»: null,
«barcode_type»: null,
«barcode_type_code»: null,
«barcode_type_label»: null,
«barcode_type_coder»: null,
«mode_reglement_id»: null,
«cond_reglement_id»: null,
«demand_reason_id»: null,
«transport_mode_id»: null,
«cond_reglement»: null,
«shipping_method_id»: null,
«model_pdf»: null,
«last_main_doc»: null,
«fk_account»: null,
«openid»: null,
«note_public»: null,
«note_private»: null,
«note»: «PRUEBAS PORTAL», (campo para notas)
«total_ht»: null,
«total_tva»: null,
«total_localtax1»: null,
«total_localtax2»: null,
«total_ttc»: null,
«lines»: null,
«name»: «CARLOS ANDRES CHACON ANDRADE»,
«lastname»: «CHACON ANDRADE»,
«firstname»: «CARLOS ANDRES»,
«civility_id»: «MR»,
«date_creation»: «2021-06-22»,
«date_validation»: «2021-06-22»,
«date_modification»: «2021-06-22»,
«specimen»: 0,
«alreadypaid»: null
}
{
«socid»: «241», (id thirdparties)
«ref_client»: «PAGO0001», (puede ser la referencia de pago)
«contactid»: null,
«statut»: «0»,
«billed»: «0»,
«brouillon»: 1,
«cond_reglement_code»: «RECEP», (codigo tipo de pago tabla)
«fk_account»: null,
«mode_reglement»: «Credit card», (modo de pago)
«mode_reglement_id»: «6», (id modo de pago)
«mode_reglement_code»: «CB», (code modo de pago)
«availability_id»: «8», (id modo de entrega tabla)
«availability_code»: «TD», (code modo de entrega tabla)
«availability»: «Transcurso del día»,
«demand_reason_id»: «1», (id canal de contacto)
«demand_reason_code»: «SRC_INTE», (code canal de contacto tabla)
«date»: «2021-06-22»,
«date_commande»: «2021-06-22»,
«date_livraison»: «2021-06-22»,
«delivery_date»: «2021-06-22»,
«fk_remise_except»: null,
«remise_percent»: «0»,
«remise_absolue»: null,
«info_bits»: null,
«rang»: null,
«special_code»: null,
«source»: null,
«extraparams»: [],
«linked_objects»: [],
«user_author_id»: «1»,
«user_valid»: null,
«lines»: [
{
«fk_commande»: «495», (automatico)
«commande_id»: «495», (automatico)
«fk_parent_line»: null,
«fk_facture»: null,
«ref_ext»: «»,
«fk_remise_except»: null,
«rang»: «1»,
«fk_fournprice»: null,
«pa_ht»: «0.00000000»,
«marge_tx»: «»,
«marque_tx»: 100,
«remise»: null,
«date_start»: «»,
«date_end»: «»,
«label»: null,
«ref»: «ANTIGENO»,
«libelle»: «ANTÍGENO»,
«product_ref»: «ANTIGENO»,
«product_label»: «ANTÍGENO»,
«product_desc»: «SARS-CoV-2 Rapid Antigen Test<br />\r\nref. 9901-NCOV-01G»,
«product_tobatch»: «0»,
«product_barcode»: null,
«qty»: «1», (Cantidad de productos)
«price»: «120000», (precio producto)
«subprice»: «120000.00000000», (sub total)
«product_type»: «0», (producto =0 servicio =1)
«desc»: «SARS-CoV-2 Rapid Antigen Test<br />\r\nref. 9901-NCOV-01G»,
«fk_product»: «1»,
«remise_percent»: «0»,
«vat_src_code»: «240895», (cuenta contable iva tabla)
«tva_tx»: «0.000»,
«localtax1_tx»: «0.000»,
«localtax2_tx»: «0.000»,
«localtax1_type»: «0»,
«localtax2_type»: «0»,
«info_bits»: «0»,
«special_code»: «0»,
«multicurrency_subprice»: «120000.00000000», (sub total)
«multicurrency_total_ht»: «120000.00000000», (total con iva)
«multicurrency_total_tva»: «0.00000000», (valor iva)
«multicurrency_total_ttc»: «120000.00000000», (total)
«id»: «489», (automatico)
«rowid»: «489», (automatico)
«fk_unit»: null,
«entity»: null,
«import_key»: null,
«array_options»: [],
«array_languages»: null,
«linkedObjectsIds»: null,
«canvas»: null,
«origin»: null,
«origin_id»: null,
«statut»: null,
«status»: null,
«state»: null,
«state_id»: null,
«state_code»: null,
«region_id»: null,
«demand_reason_id»: null,
«transport_mode_id»: null,
«last_main_doc»: null,
«fk_bank»: null,
«fk_account»: null,
«openid»: null,
«total_ht»: «120000.00000000»,
«total_tva»: «0.00000000»,
«total_localtax1»: «0.00000000»,
«total_localtax2»: «0.00000000»,
«total_ttc»: «120000.00000000»,
«lines»: null,
«date_creation»: null,
«date_validation»: null,
«date_modification»: null,
«specimen»: 0,
«alreadypaid»: null,
«description»: «SARS-CoV-2 Rapid Antigen Test<br />\r\nref. 9901-NCOV-01G»,
«product_tosell»: «1», ==
«product_tobuy»: «1», ==
«fk_product_type»: «0», (producto =0 servicio =1)
«weight»: null,
«weight_units»: «0»,
«volume»: null,
«volume_units»: «0»
}
],
«fk_multicurrency»: «0», ==
«multicurrency_code»: «COP»,==
«multicurrency_tx»: «1.00000000»,==
«multicurrency_total_ht»: «120000.00000000», (valor venta)
«multicurrency_total_tva»: «0.00000000»,
«multicurrency_total_ttc»: «120000.00000000», (valor venta)
«module_source»: null,
«pos_source»: null,
«id»: «495»,(automatico)
«entity»: «1», ==
«import_key»: null,
«array_options»: {
«options_numcompag»: «P4RUEBASISTEMA01», (numero comprobante de pago)
«options_bcopedido»: «7» (listado de bancos)
},
«array_languages»: null,
«linkedObjectsIds»: [],
«canvas»: null,
«fk_project»: null,
«contact»: null,
«contact_id»: null,
«thirdparty»: null,
«user»: null,
«origin»: null,
«origin_id»: null,
«ref»: «(PROV495)», (automatico)
«ref_ext»: null,
«status»: «0», ==
«country»: null,
«country_id»: null,
«country_code»: null,
«state»: null,
«state_id»: null,
«state_code»: null,
«region_id»: null,
«cond_reglement_id»: «1», (id tipo de pago listado)
«transport_mode_id»: null,
«cond_reglement»: «Due upon receipt», (code tipo de pago listado)
«shipping_method_id»: «19», (id Metodo envio entrega tabla)
«model_pdf»: «einstein»,==
«last_main_doc»: «commande/(PROV495)/(PROV495).pdf», (automatico)
«fk_bank»: null,
«openid»: null,
«note_public»: «»,
«note_private»: «»,
«total_ht»: «120000.00000000», (sub total)
«total_tva»: «0.00000000», (valor pago impuesto iva)
«total_localtax1»: «0.00000000»,
«total_localtax2»: «0.00000000»,
«total_ttc»: «120000.00000000», (total pago)
«name»: null,
«lastname»: null,
«firstname»: null,
«civility_id»: null,
«date_creation»: «2021-06-22»,
«date_validation»: «»,
«date_modification»: «2021-06-22»,
«specimen»: 0, ==
«alreadypaid»: null,
«fk_incoterms»: «0», ==
«label_incoterms»: null,
«location_incoterms»: «»,
«remise»: «0», ==
«ref_customer»: «PAGO0001»,
«modelpdf»: «einstein», (automatico =»»)
«cond_reglement_doc»: «Due upon receipt»,
«warehouse_id»: null,
«contacts_ids»: []
}
listado bancos
7 AV VILLAS 010162345
2 BANCOLOMBIA 04000000684
3 BANCOLOMBIA 04000001053
4 BANCOLOMBIA 04000001054
5 BANCOLOMBIA 04000001055
8 CAJA EFECTIVO
1 DAVIVIENDA 457269981868
6 DAVIVIENDA 457270136502
tipo de pago
id code tipo
1 RECEP Due upon receipt
2 30D 30 days
3 30DENDMONTH 30 days end of month
4 60D 60 days
5 60DENDMONTH 60 days end of month
6 PT_ORDER Due on order
7 PT_DELIVERY Due on delivery
8 PT_5050 50 and 50
9 10D 10 days
10 10DENDMONTH 10 days end of month
11 14D 14 days
12 14DENDMONTH 14 days end of month
13 8D 8 Días
14 15D 15 Días
15 45D 45 Días
16 Inmed Inmediato
17 RECEP Due upon receipt
18 30D 30 days
19 30DENDMONTH 30 days end of month
20 60D 60 days
21 60DENDMONTH 60 days end of month
22 PT_ORDER Due on order
23 PT_DELIVERY Due on delivery
24 PT_5050 50 and 50
25 10D 10 days
listado modo de pago
id code tipo
1 TIP TIP
2 VIR Transfer
3 PRE Debit order
4 LIQ Cash
6 CB Credit card
7 CHQ Cheque
50 VAD Online payment
51 TRA Traite
52 LCR LCR
53 FAC Factor
54 CANJE Canje
55 Corte Cortesía
56 Delyfa Delyfas
tiempo de entrega
1 AV_NOW Immediate
2 AV_1W 1 week
3 AV_2W 2 weeks
4 AV_3W 24 horas
5 24H 24 Horas
6 48H 48 Horas
7 72H 72 Horas
8 TD Transcurso del día
canal de contacto
1 SRC_INTE Web site
2 SRC_CAMP_MAIL Mailing campaign
3 SRC_CAMP_PHO Phone campaign
4 SRC_CAMP_FAX Fax campaign
5 SRC_COMM Commercial contact
6 SRC_SHOP Shop contact
7 SRC_CAMP_EMAIL EMailing campaign
8 SRC_WOM Word of mouth
9 SRC_PARTNER Partner
10 SRC_EMPLOYEE Employee
11 SRC_SPONSORING Sponsorship
12 SRC_CUSTOMER Incoming contact of a customer
Metodo envio entrega
1 CATCH In-Store Collection
2 TRANS Generic transport service
3 COLSUI Colissimo Suivi
4 LETTREMAX Lettre Max
5 UPS UPS
6 KIALA KIALA
7 GLS GLS
8 CHRONO Chronopost
9 INPERSON In person at your site
10 FEDEX Fedex
11 TNT TNT
12 DHL DHL
13 DPD DPD
14 MAINFREIGHT Mainfreight
15 DOMI DOMICILIO
16 SERVIENTREGA SERVIENTREGA
17 INTER RAPIDISIMO INTER RAPIDISIMO
18 INMEDIATO INMEDIATO
19 EMAIL EMAIL