Liste des achats

GET /firms/FIRM_ID/purchases.json

liste des achats, par groupe de 30 résultats.

Optimisation des requêtes

Par défaut, l'API retourne les informations de chaque achat, sauf les fichiers joints, afin d'optimiser les performances de vos requêtes. Pour obtenir la liste des fichiers joints à un achat spécifique, il vous suffit de faire une requête sur l'achat concerné.

Vous avez la possibilité d'inclure la liste des fichiers joints de chaque achat retourné dans la réponse en utilisant le paramètre 'with_details':

  • with_details :
    • 1 pour inclure la liste des pièces jointes
    • 0 (par défaut) pour ne pas inclure la liste des pièces jointes

Paramètres optionnels

  • page : numéro de page
  • api_id : recherche exacte sur le champ api_id
  • api_custom : recherche partielle sur le champ api_custom
  • company : recherche partielle sur le nom du fournisseur
  • title : recherche partielle par libellé
  • invoice_ref: recherche partielle sur le numéro de facture
  • payment_ref: recherche partielle sur la référence de paiement
  • serial_number: recherche exact sur le numéro de pièce
  • purchase_type: recherche sur l'état du règlement. Les valeurs possibles sont:
    • pending : En attente
    • draft : Brouillon
    • unpaid : Non payé
    • paid : Payé
    • prepaid : Pré-paiement
    • excluded : Exclus des exports
    • forecast : Prévisionnel

Tri

Par défaut, les achats sont triés par ordre décroissant de date d'achat.
Vous pouvez trier les résultats selon différentes méthodes en utilisant les paramètres suivants

  • sort:
    • asc: tri croissant
    • desc: tri décroissant
  • order : type de tri
    • paid: tri par date de paiement
    • total: tri par montant total de l'achat
    • term: tri par date d'échéance
    • created: tri par date de création d'un achat (ie date à laquelle l'enregistrement a été créé)
    • updated: tri par date de dernière modification d'un achat (ie date à laquelle l'enregistrement a été modifié pour la dernière fois)

Requête

curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
 https://www.facturation.pro/firms/FIRM_ID/purchases.json

Réponse

[{
  "api_custom": null,
  "api_id": null,
  "category_id": 4852,
  "id": 125459,
  "supplier_id": 49087,
  "invoiced_on": "2013-07-28",
  "notes": "",
  "paid_on": "2013-07-28",
  "payment_mode": 20,
  "payment_ref": null,
  "prepaid": false,
  "ref": null,
  "term_on": null,
  "title": "H\u00e9bergement Cloud juin 2013",
  "total_with_vat": "231.4",
  "vat_amount": "37.92"
}, {
  "api_custom": null,
  "api_id": null,
  "category_id": 4860,
  "id": 125474,
  "supplier_id": 49088,
  "invoiced_on": "2013-07-28",
  "notes": "",
  "paid_on": "2013-07-28",
  "payment_mode": 2,
  "payment_ref": null,
  "prepaid": false,
  "ref": null,
  "term_on": null,
  "title": "Domiciliation janvier 2013",
  "total_with_vat": "73.39",
  "vat_amount": "12.03"
}]

Détail d'un achat

GET /firms/FIRM_ID/purchases/ID.json

Affiche le détail de l'achat n° ID

curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
 https://www.facturation.pro/firms/FIRM_ID/purchases/125459.json

Réponse

{
  "api_custom": null,
  "api_id": null,
  "category_id": 4852,
  "id": 125459,
  "supplier_id": 49087,
  "invoiced_on": "2013-07-28",
  "notes": "",
  "paid_on": "2013-07-28",
  "payment_mode": 20,
  "payment_ref": null,
  "prepaid": false,
  "ref": null,
  "term_on": null,
  "title": "H\u00e9bergement Cloud juin 2013",
  "total_with_vat": "231.4",
  "vat_amount": "37.92"
}

Créer un achat

POST /firms/FIRM_ID/purchases.json

Création d'un nouvel achat. On obtient en retour le code JSON de l'enregistrement créé, avec l'ID qui lui a été attribué

Requête

curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
 -H 'Content-Type: application/json; charset=utf-8' \
 -X POST \
 -d '{"supplier_id": 49087, "invoiced_on": "2013-06-28","title": "Restaurant","total_with_vat": "100","vat_amount": "16,39"}' \
 https://www.facturation.pro/firms/FIRM_ID/purchases.json

Réponse

Status: 201 Created
Location: /firms/FIRM_ID/purchases/125858.json

{
  "api_custom": null,
  "api_id": null,
  "category_id": null,
  "id": 125858,
  "invoiced_on": "2013-06-28",
  "notes": null,
  "paid_on": null,
  "payment_mode": 0,
  "payment_ref": null,
  "prepaid": false,
  "ref": null,
  "supplier_id": 49087,
  "term_on": null,
  "title": "Restaurant",
  "total_with_vat": "100.0",
  "vat_amount": "16.39"
}

Modifier un achat

PATCH /firms/FIRM_ID/purchases/ID.json

Mise à jour d'un achat existant.

Requête

curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
 -H 'Content-Type: application/json; charset=utf-8' \
 -X PATCH \
 -d '{"title": "Serveur virtuel"}' \
 https://www.facturation.pro/firms/FIRM_ID/purchases/125459.json

Réponse

Status: 200 OK

Supprimer un achat

DELETE /firms/FIRM_ID/purchases/ID.json

Supprime l'achat identifié par son ID.

Requête

curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
 -X DELETE \
 https://www.facturation.pro/firms/FIRM_ID/purchases/46125.json

Réponse

Status: 200 OK

Achats récurrents

Les achats récurrents sont gérés uniquement via l'interface web. Cependant, vous pouvez obtenir des informations sommaires sur la liste des achats récurrents configurés à l'aide des méthodes suivantes:

GET /firms/FIRM_ID/recurring_purchases.json

Obtenir la liste des achats récurrents

GET /firms/FIRM_ID/recurring_purchases/ID.json

Obtenir des informations sur l'achat récurrent ID

Ajouter une pièce jointe

POST /firms/FIRM_ID/purchases/ID/upload.json

Ajoute une pièce jointe à l'achat ID.

Paramètres

  • Le fichier doit être transmis sous forme de formulaire multipart (ie "multipart/form-data"), à l'aide de la variable upload_file.
  • Par défaut, le fichier sera stocké avec le nom qu'il avait sur votre système. Si vous le souhaitez, vous pouvez forcer un autre nom de fichier à l'aide de la variable filename

Requête

Cette requête ajoute le fichier stocké dans "/tmp/test.pdf" du poste local à l'achat possédant l'ID 1, avec le nom "achat_123.pdf"

curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
 -F "upload_file=@/tmp/test.pdf" \
 https://www.facturation.pro/firms/FIRM_ID/purchases/1/upload.json?filename=achat_123.pdf

Réponse

Status: 201 Created
Location: /firms/FIRM_ID/assets/1.json

{
  "id": 1,
  "purchase_id": 1,
  "document_file_name":"achat_123.pdf",
  "document_content_type":"application/pdf",
  "document_file_size":18884,
  "download_url":"https://www.facturation.pro/firms/6761/assets/1/download"
}

Liste des champs

Champs Libellé Type Accès
id Identifiant int(11) lecture seule
supplier_id Fournisseur int(11) lecture/écriture
supplier_identity Nom du fournisseur string(255) lecture seule
title Nature/Libellé text lecture/écriture
ref Réf. facture string(255) lecture/écriture
total_with_vat Montant TTC decimal(15,3) lecture/écriture
vat_amount Montant TVA decimal(15,3) lecture/écriture
total Montant HT decimal(15,3) lecture seule
currency Devise string(3) lecture/écriture
invoiced_on Date de facture date lecture/écriture
term_on Date d'échéance date lecture/écriture
paid_on Réglé le date lecture/écriture
payment_mode Mode de règlement int(11) lecture/écriture
payment_ref Référence du paiement string(255) lecture/écriture
paid_in_euros Réglé en euros decimal lecture/écriture
estimated_total_in_main_currency Total TTC estimé en euro lecture seule
draft Brouillon boolean lecture/écriture
reverse_charge Auto-liquidation boolean lecture/écriture
prepaid Pré-paiement boolean lecture/écriture
notes Notes / Remarques text lecture/écriture
skip_export Exclure de l'export comptable boolean lecture/écriture
serial_number Serial Number int(11) lecture seule
category_id Catégorie int(11) lecture/écriture
accounting_entry Compte d'imputation string(8) lecture/écriture
accounting_asset Immobilisation boolean lecture/écriture
asset_end_on Date de sortie de l'immo. date lecture/écriture
asset_end_reason Motif de sortie de l'immobilisation string(255) lecture/écriture
created_at Créé le datetime(3) lecture seule
updated_at Modifié le datetime(3) lecture seule
soft_deleted Enregistrement marqué comme à supprimer boolean lecture seule
hard_delete_on Date définitive de la suppression date lecture seule
api_id API - Référence numérique libre bigint(20) lecture/écriture
api_custom API - Texte libre string(255) lecture/écriture

Champs utilisant des valeurs spécifiques

payment_mode

0 : Non payé
2 : Carte bancaire
4 : Chèque
3 : Virement
5 : Espèces
1 : Paypal
8 : Prélèvement
9 : TIP (Titre interbancaire de paiement)
20 : Crédit fournisseur
30 : Ticket restaurant
31 : Chèque cadeau
32 : Chèque vacances
50 : LCR (Lettre de change relevé)
51 : BOR (Billet à ordre relevé)
99 : Autre

currency

EUR : euro
USD : dollar US
GBP : livre sterling
CHF : franc suisse
CAD : dollar canadien
AUD : dollar australien
NZD : dollar néo-zélandais
JPY : yen japonais
HKD : dollar de Hong Kong
CNY : yuan chinois
RUB : rouble russe
ILS : shekel israélien
AFN : Afghani afghan
MRO : Ancienne ouguiya mauritanienne
XAG : Argent
MGA : Ariary malgache
THB : Baht thailandais
PAB : Balboa panaméen
ETB : Birr éthiopien
BTC : Bitcoin
VEF : Bolivar fuerte vénézuélien
BOB : Boliviano bolivien
GHS : Cedi ghanéen
SVC : Colon salvadorien
CRC : Colón costaricien
NIO : Cordoba d'or nicaraguayen
DKK : Couronne danoise
ISK : Couronne islandaise
NOK : Couronne norvégienne
SEK : Couronne suedoise
CZK : Couronne tchèque
GMD : Dalasi gambien
MKD : Denar macédonien
DZD : Dinar algérien
BHD : Dinar bahreïni
IQD : Dinar irakien
JOD : Dinar jordanien
KWD : Dinar koweïtien
LYD : Dinar libyen
RSD : Dinar serbe
TND : Dinar tunisien
AED : Dirham des Émirats arabes unis
MAD : Dirham marocain
STD : Dobra santoméen
ZWL : Dollar Zimbabwéen
BSD : Dollar bahaméen
BBD : Dollar barbadien
BMD : Dollar bermudien
BZD : Dollar bélizien
BND : Dollar de Brunei
FJD : Dollar de Fidji
SGD : Dollar de Singapour
TTD : Dollar de Trinité-et-Tobago
XCD : Dollar des Caraïbes orientales
SBD : Dollar des Salomon
KYD : Dollar des îles Caïmans
SRD : Dollar du Suriname
GYD : Dollar guyanien
JMD : Dollar jamaïcain
LRD : Dollar libérien
NAD : Dollar namibien
VND : Dong vietnamien
AMD : Dram arménien
XDR : Droit de Tirage Spécial
CVE : Escudo cap-verdien
AWG : Florin arubais
ANG : Florin des Antilles néerlandaises
HUF : Forint hongrois
XAF : Franc CFA (XAF)
XOF : Franc CFA (XOF)
XPF : Franc CFP (XPF)
DJF : Franc Djibouti
BIF : Franc burundais
KMF : Franc comorien
CDF : Franc congolais
GNF : Franc guinéen
RWF : Franc rwandais
HTG : Gourde haïtienne
PYG : Guaraní paraguayen
UAH : Hryvnia ukrainienne
PGK : Kina papou-néo-guinéen
LAK : Kip laotien
HRK : Kuna croate
MWK : Kwacha malawien
ZMW : Kwacha zambien
AOA : Kwanza angolais
MMK : Kyat
GEL : Lari géorgien
ALL : Lek albanais
HNL : Lempira hondurien
SLL : Leone sierra-léonais
MDL : Leu moldave
RON : Leu roumain
BGN : Lev bulgare (ancien)
SZL : Lilangeni swazilandais
TRY : Lire turque
GGP : Livre
SHP : Livre
GIP : Livre de Gibraltar
JEP : Livre de Jersey
FKP : Livre des Îles Malouines
LBP : Livre libanaise
IMP : Livre mannoise
SDG : Livre soudanaise
SYP : Livre syrienne
EGP : Livre égyptienne
LSL : Loti lesothan
AZN : Manat azerbaïdjanais
BAM : Mark convertible de Bosnie-Herzégovine
MZN : Metical mozambicain
NGN : Naira nigérien
ERN : Nakfa érythréen
BTN : Ngultrum bhoutanais
TWD : Nouveau dollar de Taïwan
TMT : Nouveau manat turkmène
XAU : Or
MRU : Ouguiya mauritanienne
TOP : Pa'anga des Tonga
XPD : Palladium
MOP : Pataca
ARS : Peso argentin
CLP : Peso chilien
COP : Peso colombien
CUC : Peso convertible cubain
CUP : Peso cubain
DOP : Peso dominicain
MXN : Peso mexicain
PHP : Peso philippin
UYU : Peso uruguayen
XPT : Platine
BWP : Pula botswanais
GTQ : Quetzal guatémaltèque
ZAR : Rand sud-africain
IRR : Rial iranien
OMR : Rial omanais
KHR : Riel cambodgien
MYR : Ringgit malaisien
QAR : Riyal qatarien
SAR : Riyal saoudien
YER : Riyal yéménite
BYR : Rouble biélorusse (ancien)
BYN : Rouble biélorusse (nouveau)
INR : Roupie indienne
IDR : Roupie indonésienne
MUR : Roupie mauricienne
NPR : Roupie népalaise
PKR : Roupie pakistanaise
SCR : Roupie seychelloise
LKR : Roupie srilankaise
MVR : Rufiyaa maldivienne
BRL : Réal bresilien
KES : Shilling kényan
UGX : Shilling ougandais
SOS : Shilling somalien
TZS : Shilling tanzanien
PEN : Sol péruvien
KGS : Som kirghiz
TJS : Somoni tadjik
UZS : Sum ouzbek
BDT : Taka bangladais
WST : Tala samoan
KZT : Tenge kazakh
MNT : Tugrik mongol
CLF : Unidad de fomento chilienne
VUV : Vatu du Vanuatu
KPW : Won nord-coréen
KRW : Won sud-coréen
PLN : Zloty polonais