Méthodes disponibles via OAuth

Plusieurs méthodes sont disponibles dans l’API Prestataire, et chaque appel doit être authentifié via le protocole OAuth. Les données retournées sont toujours relative au compte client utilisé pour vous authentifier.

Modifier les coordonnées de facturation

POST /provider/update_billing.xml

Mise à jour des coordonnées de facturation.

Requête

<customer>
  <city>Lyon</city>
  <civility>0</civility>
  <company_name>COMPANY 2</company_name>
  <country>FR</country>
  <discount nil="true"></discount>
  <email>contact@company2.com</email>
  <fax></fax>
  <first_name>My Second</first_name>
  <last_name>Customer</last_name>
  <phone>+33123456780</phone>
  <short_name>CUSTOMER2</short_name>
  <street>12 rue de la creation</street>
  <zip_code>75001</zip_code>
</customer>

Réponse

Status: 200 OK

Liste des factures

GET /provider/invoices.xml

Retourne les 10 dernières factures générées.
Le détail des champs retournés pour chaque facture est disponible ici

Réponse

<?xml version="1.0" encoding="UTF-8"?>
<invoices type="array">
  <invoice>
    <api_custom nil="true"></api_custom>
    <api_id nil="true"></api_id>
    <customer_id>1</customer_id>
    <customer_ref nil="true">FA1234</customer_ref>
    <id>679</id>
    <discount>0.0</discount>
    <information/>
    <pay_before>90</pay_before>
    <penalty>0.0</penalty>
    <invoice_ref>1</invoice_ref>
    <invoice_status>0</invoice_status>
    <total>13.2</total>
    <items>
      <item>
        <position>0</position>
        <product_id>0</product_id>
        <quantity>1.32</quantity>
        <title>Campagne video</title>
        <total>13.2</total>
        <nature>1</nature>
        <unit_price>10.0</unit_price>
      </item>
    </items>
  </invoice>
  <invoice>
    <api_custom nil="true"></api_custom>
    <api_id nil="true"></api_id>
    <customer_id>1</customer_id>
    <customer_ref nil="true">FA1235</customer_ref>
    <id>522</id>
    <discount>0.0</discount>
    <information/>
    <pay_before>90</pay_before>
    <penalty>0.0</penalty>
    <invoice_ref>2</invoice_ref>
    <invoice_status>0</invoice_status>
    <total>200.0</total>
    <items>
      <item>
        <position>0</position>
        <product_id>0</product_id>
        <quantity>1.0</quantity>
        <title>Campagne publicitaire</title>
        <total>200.0</total>
        <nature>2</nature>
        <unit_price>200.0</unit_price>
      </item>
    </items>
  </invoice>
</invoices>

Créer une facture

POST /provider/create_invoice.xml

Création d’une nouvelle facture. On obtient en retour le code XML de l’enregistrement créé, avec l’ID qui lui a été attribué.
Une facture doit au moins contenir une ligne de facturation (items-attribute)
Le total de chaque ligne de facturation ainsi que le total de la facture sont calculés automatiquement.

Requête

<?xml version="1.0" encoding="UTF-8"?>
<invoice>
  <items-attributes type="array">
    <items-attribute>
      <position>1</position>
      <product_id>0</product_id>
      <quantity>1.0</quantity>
      <nature>2</nature>
      <title>Campagne publicitaire</title>
      <unit_price>200.0</unit_price>
    </items-attribute>
    <items-attribute>
      <position>2</position>
      <product_id>0</product_id>
      <quantity>1.0</quantity>
      <title>Conseil en marketing</title>
      <nature>2</nature>
      <unit_price>300.0</unit_price>
    </items-attribute>
  </items-attributes>
</invoice>

Réponse

La réponse contient l’url de téléchargement de la facture créée dans le champ “Location” du header

Status: 201 Created
Location: /provider/download_invoice?invoice_id=#{new-invoice-id}

<invoice>
  ...
</invoice>

Télécharger une facture

GET /provider/download_invoice?invoice_id={ID}

Télécharger la facture n° ID au format PDF

Réponse

Vous obtenez le fichier PDF de la facture demandée