Esempi API
Indice
Anagrafica soggetto (PHP – JavaScript)
Articoli di magazzino (PHP – JavaScript)
Fattura Cliente (PHP – JavaScript)
Fattura Cliente Elettronica B2B (PHP )
Notifiche Fattura Elettronica B2B (PHP )
Nota Debito Cliente (PHP)
Corrispettivi (PHP –JavaScript)
DDT (PHP –JavaScript)
Per l’utilizzo con il liguaggio PHP scarica JsonRPC v2 client (zip)
Esempi in PHP
Es. Inserimento nuovo soggetto
<?php
require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$soggetto = array(
'ragionesociale' => 'Contabilità facile srl',
'partitaiva' => '01161170319',
'tiposoggetto' => 'SRL',
'aziendapaob2v'=> 'B2B',
'codiceunivoco'=> '3ZJY534',
'pec'=> 'pec@pec.it',
'sedi' => array(
array('insegna' => 'Contabilità facile - uffici',
'indirizzo' => 'Via M. Buonarroti, 10',
'cap' => '34170',
'comune' => 'Gorizia',
'telefono' => '0481 091172',
'fax' => '0481 xxxxxxx')
),
'rapporti' => array(
array('tiporapporto' => 'F',
'settore' => 'Contabilità',
'email' => 'info@contabilitafacile.it')
),
'contatti' => array(
array('nome' => 'Luca',
'email' => 'luca@xxxxxxxxxxxxx')
)
);
//L'invio dei dati a CFO avviene tramite il metodo soggetto dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->soggetto('ditta.test','SINCRO_KEY', $soggetto));
?>
Es. Inserimento nuovo articolo
<php
require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$articolo = array(
'codarticolo' => 'XB001',
'categoria' => 'altro',
'descarticolo' => 'Vaso di fiori',
'descarticoloest' => 'Vaso di fiori 50cm x 60cm',
'unitmisura' => 'pz',
'prezzounitarticolo' => '35',
'aliquota' => '21',
'gestmagazzino' => 'SI',
'nascosto' => 'NO',
'fornitori' => array(
array('tipoidfornitore' => 'CODR',
'idfornitore' => 'RF01',
'codartfornitore' => 'C005')
)
);
//L'invio dei dati a CFO avviene tramite il metodo articolo del dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->articolo('ditta.test','SINCRO_KEY', $articolo));
?>
Es. Fattura Cliente con ritenute
<?php
require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$documento = array( //dati di Testata del documento
'rinvio' => 'NO',
'tipodocumento' => 10,
'numerodocumento' => 5,
'totaledocumento' => '267.99',
'datadocumento' => '2012-10-28',
'tipoidsoggetto' => 'PIVA',
'idsoggetto' => '12345678901'
'modellocontabile' => 85,
'modpagamento' => '002',
'oneridiriscossione' => '5.30',
'jolly' => 'campo-personalizzato1=X,campo-personalizzato2=Y',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' => array(
array('importo' => '125.36',
'tipoimportoiva' => 80,
'aliquota' => 21,
'soggettoritenuta' => 'NO',
'conto' => '01'),
array('importo' => '100.26',
'tipoimportoiva' => '80',
'aliquota' => '21',
'soggettoritenuta' => 'SI',
'conto' => '51',
'settconto' => '20')
),
//Inserimento delle informazioni relative alle ritenute
'zoccolo' => array(
array('impritenutafiscale' => '100.26',
'percritenutafiscale' => '5',
'totritentuafiscale' => '5.013')
)
);
//L'invio dei dati a CFO avviene tramite il metodo documento del dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->documento('ditta.test','SINCRO_KEY', $documento));
?>
Es. Fattura Cliente Elettronica B2B
<?php
require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$documento = array( //dati di Testata del documento
'rinvio' => 'NO',
'tipodocumento' => 80,
'numerodocumento' => 5,
'totaledocumento' => '134.20',
'datadocumento' => '2012-10-28',
'tipoidsoggetto' => 'PIVA',
'idsoggetto' => '12345678901'
'modellocontabile' => 85,
'modpagamento' => '002',
'jolly' => 'campo-personalizzato1=X,campo-personalizzato2=Y',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' => array(
array('prezzounitarticolo' => '100',
'tipoimportoiva' => '10',
'aliquota' => '22',
'unitmisura' => 'pz',
'qtarticolo' => '1',
'descarticolo' => 'articolo 1'),
array('prezzounitarticolo' => '10',
'tipoimportoiva' => '10',
'aliquota' => '22',
'unitmisura' => 'pz',
'qtarticolo' => '1',
'descarticolo' => 'articolo 2')
)
);
//L'invio dei dati a CFO avviene tramite il metodo documento del dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->documento('ditta.test','SINCRO_KEY', $documento));
?>
Es. Fattura Cliente Elettronica B2B
<?php
require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$dato = array( //inviare ID documento da leggere le notifiche
'id' => 'MOAS20181031151336000000027891'
)
);
//L'invio dei dati a CFO avviene tramite il metodo documento del dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->notificafatturab2b('ditta.test','SINCRO_KEY', $dato));
?>
Avremo una risposta simile a questa:
Array
(
[0] => stdClass Object
(
[id] => MOAS20181031151336000000027891
[messaggio] => Info fattura elettronica
[NomeFileSDI] => IT0xxxxxxxxxx_JE9U2.xml.p7m
[NumeroFattura] => 538
[DataFattura] => 2018-10-26
[TipoFattura] => TD01
[UltimaNotifica] => RC
[Notifiche] => Array
(
[0] => stdClass Object
(
[TipoNotifica] => RC
[EsitoNotifica] =>
[DescrizioneEsito] =>
[DataNotifica] => 2018-10-31
)
)
)
)
in caso di errore la chiamata ritornerà un array simile:
Array
(
[0] => stdClass Object
(
[errore] => Fattura non trovata
)
)
Es. Nota Debito Cliente
<?php
require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$documento = array( //dati di Testata del documento
'rinvio' => 'NO',
'tipodocumento' => '11',
'numerodocumento' => '3',
'totaledocumento' =>; '30.25',
'datadocumento' => '2012-10-28',
'tipoidsoggetto' => 'CF',
'idsoggetto' => 'mrlvvn123456H890'
'modellocontabile' => '002',
'modpagamento' => 'RIBA30',
'jolly' => 'campo-personalizzato1=X,campo-personalizzato2=Y',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' => array(
array('importo' => '25',
'tipoimportoiva' => '10',
'aliquota' => '21',
'soggettoritenuta' => 'NO',
)
// Niente zoccolo in quanto non ci sono informazioni da inserire, ad esempio non
// ci sono ritenute
);
//L'invio dei dati a CFO avviene tramite il metodo documento del dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->documento('ditta.test','SINCRO_KEY', $documento));
?>
Es. Corrispettivi
<?php require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$documento = array( //dati di Testata del documento
'rinvio' => 'NO',
'tipodocumento' => 31,
'unitaterritoriale' => 'UD',
'dataregistrazione' => '2012-11-05',
'totaledocumento' => 560,
'tipoidsoggetto' => 'PIVA',
'idsoggetto' => '12345678901'
'modellocontabile' => 85,
'modpagamento' => '002',
'jolly' => 'campo-personalizzato1=X,campo-personalizzato2=Y',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' => array(
'importo' => '560',
'tipoimportoiva' => 80,
'aliquota' => 21)
);
//L'invio dei dati a CFO avviene tramite il metodo documento del dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->documento('ditta.test','SINCRO_KEY', $documento));
?>
Es. DDT
<?php
require_once("inc/JsonRpcClient.php");
$sincro = new JsonRpc( 'https://api.contabilitafacileonline.it/api/APIjsonrpc2.php' );
$documento = array( //dati di Testata del documento
'rinvio' => 'NO',
'tipodocumento' =>60,
'unitaterritoriale' => 'GO',
'numerodocumento' => '15',
'datadocumento' => '2012-08-10',
'dataemissionedocumento' => '2012-08-10',
'tipoidsoggetto' => 'CODR',
'idsoggetto' => 'R002'
'modellocontabile' => 85,
'modpagamento' => '002',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' => array(
// articolo 1
array('codarticolo' => '111',
'descarticolo' => 'articolo',
'qtarticolo' => '2',
'unitmisura' => 'pz',
'prezzounitarticolo' => '15.50',
'tipoimportoiva' => 80,
'aliquota' => 21,
'conto' => '01'),
// articolo 2
array('codarticolo' => '2222',
'codbarre' => '84597251036597412255',
'descarticolo' => 'articolo due',
'qtarticolo' => '1',
'unitmisura' => 'm',
'prezzounitarticolo' => '10',
'tipoimportoiva' => 80,
'aliquota' => 21,
'conto' => '01')
);
//L'invio dei dati a CFO avviene tramite il metodo documento del dell'oggetto di tipo JsonRpc.
//Per ogni invio/richiesta è necessario comunicare anche lo username e il token d'autenticazione.
print_r($sincro->documento('ditta.test','SINCRO_KEY', $documento));
?>
Esempi in JavaScript
Es. Inserimento nuovo soggetto
<script type="text/javascript">// <![CDATA[
var api_url='https://api.contabilitafacileonline.it/api/APIjsonrpc2.php';
var username='ditta.test'; var sincrokey='SINCRO_KEY';
function inviasoggetto() {
var soggetto={
'ragionesociale' : 'Contabilità facile srl',
'partitaiva' : '01161170319 ',
'tiposoggetto' : 'SRL',
'sedi' : [
{'insegna' : 'Contabilità facile- uffici',
'indirizzo' : 'Via M. Buonarroti, 10',
'cap' : '34170',
'comune': 'Gorizia',
'telefono' : '0481 091172',
'fax' : '0481 xxxxxxx'
}
],
'rapporti' : [
{'tiporapporto' : 'F',
'settore' : 'Contabilità',
'email' : 'info@contabilitafacile.it',
}
],
'contatti' : [
{'nome' : 'Luca',
'email' : 'luca@xxxxxxxxxxxx'
}
]
};
var request = {
'id' : '1',
'method' : 'soggetto',
'jsonrpc' : '2.0',
'params' : [username, sincrokey, soggetto]
};
var http_request = new XMLHttpRequest();
var response;
http_request.open('POST', api_url, false);
http_request.send(JSON.stringify(request));
response = http_request.responseText;
alert(response);
};
// ]]>Implementation of CF API: <a onclick="inviasoggetto()" href="#">Invia Soggetto</a>
Es. Inserimento nuovo articolo
<script type="text/javascript">// <![CDATA[
var api_url='https://api.contabilitafacileonline.it/api/APIjsonrpc2.php';
var username='ditta.test'; var sincrokey='SINCRO_KEY';
function inviaarticolo() {
var articolo={
'codarticolo' : 'XB001',
'categoria' : 'altro',
'descarticolo' : 'Vaso di fiori',
'descarticoloest' : 'Vaso di fiori 50cm x 60cm',
'unitmisura' : 'pz',
'prezzounitarticolo' : '35',
'aliquota' : '21',
'gestmagazzino' : 'SI',
'nascosto' : 'NO',
'fornitori' : [
{'tipoidfornitore' : 'CODR',
'idfornitore' : 'RF01',
'codartfornitore' : 'C005'
}
]
};
var request = {
'id' : '1',
'method' : 'articolo',
'jsonrpc' : '2.0',
'params' : [username, sincrokey, articolo]
};
var http_request = new XMLHttpRequest();
var response;
http_request.open('POST', api_url, false);
http_request.send(JSON.stringify(request));
response = http_request.responseText;
alert(response);
};
// ]]>Implementation of CF API: <a onclick="inviaarticolo()" href="#">Invia Articolo</a>
Es. Fattura Cliente con ritenute
CF API example<script type="text/javascript">// <![CDATA[
var api_url='https://api.contabilitafacileonline.it/api/APIjsonrpc2.php';
var username='ditta.test'; var sincrokey='SINCRO_KEY';
function inviadocumento() {
var documento={
//Dati di Testata del documento
'rinvio' : 'NO',
'tipodocumento' : 10,
'numerodocumento' : 5,
'totaledocumento' : 267.99,
'datadocumento' : '2012-10-28',
'tipoidsoggetto': 'PIVA',
'idsoggetto' : '12345678901'
'modellocontabile' : 85,
'modpagamento' : '002',
'oneridiriscossione' : '5.30',
'jolly' : 'campo-personalizzato1=X,campo-personalizzato2=Y',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' :[
{'importo' : '125.36',
'tipoimportoiva' : 80,
'aliquota' : 21,
'soggettoritenuta' : 'NO',
'conto' : '01'},
{'importo' : '100.26',
'tipoimportoiva' : '80',
'aliquota' : '21',
'soggettoritenuta' : 'SI',
'conto' : '51',
'settconto' : '20'}
],
//Inserimento delle informazioni relative alle ritenute
'zoccolo' :[
{'impritenutafiscale' : '100.26',
'percritenutafiscale' : 5,
'totritentuafiscale' : '5.013'}
]
};
var request = {
'id' : '1',
'method' : 'documento',
'jsonrpc' : '2.0',
'params' : [username, sincrokey, documento]
};
var http_request = new XMLHttpRequest();
var response;
http_request.open('POST', api_url, false);
http_request.send(JSON.stringify(request));
response = http_request.responseText;
alert(response);
};
// ]]>Implementation of CF API: <a onclick="inviadocumento()" href="#">Invia Documento</a>
Es. Corrispettivi
CF API example<script type="text/javascript">// <![CDATA[
var api_url='https://api.contabilitafacileonline.it/api/APIjsonrpc2.php';
var username='ditta.test'; var sincrokey='SINCRO_KEY';
function inviadocumento() {
var documento={
//Dati di Testata del documento
'rinvio' : 'NO',
'tipodocumento' : 31,
'unitaterritoriale' : 'UD',
'dataregistrazione': '2012-11-05',
'totaledocumento' : 560,
'tipoidsoggetto' : 'PIVA',
'idsoggetto' : '12345678901'
'modellocontabile' : 85,
'modpagamento' : '002',
'jolly' : 'campo-personalizzato1=X,campo-personalizzato2=Y',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' : [
{'importo' : '560',
'tipoimportoiva' : 80,
'aliquota' : 21,
'conto' : '01'}
]
}
var request = {
'id' : '1',
'method' : 'documento',
'jsonrpc' : '2.0',
'params' : [username, sincrokey, documento]
};
var http_request = new XMLHttpRequest();
var response;
http_request.open('POST', api_url, false);
http_request.send(JSON.stringify(request));
response = http_request.responseText;
alert(response);
};
// ]]>Implementation of CF API: <a onclick="inviadocumento()" href="#">Invia Documento</a>
Es. DDT
CF API example<script type="text/javascript">// <![CDATA[
var api_url='https://api.contabilitafacileonline.it/api/APIjsonrpc2.php';
var username='ditta.test'; var sincrokey='SINCRO_KEY';
function inviadocumento() {
var documento={
//Dati di Testata del documento
'rinvio' : 'NO',
'tipodocumento' : 60,
'unitaterritoriale' :'GO',
'numerodocumento' : '15',
'datadocumento' : '2012-08-10',
'dataemissionedocumento' : '2012-08-10',
'tipoidsoggetto' : 'CODR',
'idsoggetto' : 'R002'
'modellocontabile' : 85,
'modpagamento' : '002',
//righe di dettaglio del documento. es Articoli della fattura
'dettaglio' : [
// articolo 1
{'codarticolo': '111',
'descarticolo' : 'articolo',
'qtarticolo' : '2',
'unitmisura' : 'pz',
'prezzounitarticolo' : '15.50',
'tipoimportoiva' : 80,
'aliquota' : 21,
'conto' : '01'},
// articolo 2
{'codarticolo' : '2222',
'codbarre' : '84597251036597412255',
'descarticolo' : 'articolo due',
'qtarticolo' : '1',
'unitmisura' : 'm',
'prezzounitarticolo' : '10',
'tipoimportoiva' : 80,
'aliquota' : 21,
'conto' : '01'}]
};
var request = {
'id' : '1',
'method' : 'documento',
'jsonrpc' : '2.0',
'params' : [username, sincrokey, documento]
};
var http_request = new XMLHttpRequest();
var response;
http_request.open('POST', api_url, false);
http_request.send(JSON.stringify(request));
response = http_request.responseText;
alert(response);
};
// ]]>Implementation of CF API: <a onclick="inviadocumento()" href="#">Invia Documento</a>
Supporto API CFO
In caso di necessità richiedi supporto per l’utilizzo delle API-CFO contattandoci
- via email all’indirizzo api@contabilitafacile.it oppure
- chiamaci al 0481 091172.
Vuoi ulteriori informazioni o chiarimenti?
Scopri tutti i vantaggi per la tua attività, come?
Compila il modulo per richiedere Ulteriori Informazioni o Chiarimenti
sui servizi di Contabilità facile che comprendono:
sui servizi di Contabilità facile che comprendono:
- il Programma Gestionale online in cloud,
- l’Assistente Contabile Personale,
- i Servizi Aggiuntivi di Commercialista Online (Servizi Fiscali),
e un nostro esperto ti richiamerà il prima possibile, in orario di ufficio.
PRIVACY: useremo le informazioni inviate attraverso questo modulo allo scopo esclusivo di richiamarti per fornirti le informazioni di cui hai bisogno. Sono esclusi altri utilizzi dei dati forniti. Inviando i dati dichiari di aver letto e accettato la nostra Informativa sulla Privacy.