Bienvenue, Invité
Nom d'utilisateur : Mot de passe : Se souvenir de moi

SUJET : API REST Proposition commerciale vers facture

API REST Proposition commerciale vers facture il y a 1 an 3 semaines #105800

  • Laygen
  • Portrait de Laygen
  • Hors ligne
  • Fresh Boarder
  • Messages : 11
  • Karma: 0
Bonjour,

Je cherche à utiliser la REST API afin de créer une facture depuis une proposition commerciale

Je sais que c'est possible depuis une commande avec la route suivante: /invoices/createfromorder/{orderid}.

Cependant (ou alors je me trompe) je ne vois pas de route qui permet la création d'une facture depuis une proposition commerciale.

Est-ce une fonctionnalité non développé pour le moment ?
Est-ce que la REST API propose une route pour ça que je ne vois pas ?

Merci d'avance pour votre temps et vos réponses :)

PS: En ajoutant dans le fichier ./compta/facture/class/api_invoices.class.php la route, cela fonctionne:
/**
     * Create an invoice using an existing propal.
     *
     *
     * @param int   $propalid      Id of the propal
     *
     * @url     POST /createfrompropal/{propalid}
     *
     * @return int
     * @throws 400
     * @throws 401
     * @throws 404
     * @throws 405
     */
    function createInvoiceFromPropal($propalid) {
		
        require_once DOL_DOCUMENT_ROOT . '/comm/propal/class/propal.class.php';

        if(! DolibarrApiAccess::$user->rights->propal->lire) {
                throw new RestException(401);
        }
        if(! DolibarrApiAccess::$user->rights->facture->creer) {
                throw new RestException(401);
        }
        if(empty($propalid)) {
                throw new RestException(400, 'Propal ID is mandatory');
        }

        $propal = new Propal($this->db);
        $result = $propal->fetch($propalid);
        if( ! $result ) {
                throw new RestException(404, 'Propal not found');
        }

        $result = $this->invoice->createFromOrder($propal, DolibarrApiAccess::$user);
        if( $result < 0) {
                throw new RestException(405, $this->invoice->error);
        }
        $this->invoice->fetchObjectLinked();
        return $this->_cleanObjectDatas($this->invoice);
    }
Dernière édition: il y a 1 an 3 semaines par Laygen. Raison: Ajout de la route
L'administrateur a désactivé l'accès en écriture pour le public.

API REST Proposition commerciale vers facture il y a 8 mois 1 semaine #111557

  • jtraulle
  • Portrait de jtraulle
  • Hors ligne
  • Admin
  • Messages : 285
  • Remerciements reçus 113
  • Karma: 18
Bonjour,

Je réponds un peu tard :laugh:

Donc, pour répondre, non il n'y a pas de endpoint direct pour créer une facture à partir d'une propale.
Par contre, il est possible de créer une commande à partir de la propale et de créer une facture à partir de la commande.
  • POST /orders/createfromproposal/{proposalid} puis
  • POST /invoices/createfromorder/{orderid}

Après, la façon dont tu as procédé est plus rapide et je pense que tu devrais proposer l'ajout via une Pull Request sur Github pour que tout le monde en bénéficie d'autant plus que depuis l'interface graphique d'une fiche propale, il est possible de créer directement une facture (ça serait donc logique que ça soit également possible via l'API sans avoir à créer une commande entre deux) ;)
L'administrateur a désactivé l'accès en écriture pour le public.
Cet utilisateur a été remercié pour son message par: Laygen

API REST Proposition commerciale vers facture il y a 3 mois 3 semaines #116920

  • Laygen
  • Portrait de Laygen
  • Hors ligne
  • Fresh Boarder
  • Messages : 11
  • Karma: 0
Merci de la réponse.

C'était ma logique de procéder qui n'était pas correcte.

En passant par l'ordre logique: ¨Proposition commercial -> Commande -> Facture tout est OK.
L'administrateur a désactivé l'accès en écriture pour le public.

API REST Proposition commerciale vers facture il y a 3 mois 3 semaines #116929

  • yves57
  • Portrait de yves57
  • Hors ligne
  • Gold Boarder
  • Messages : 732
  • Remerciements reçus 145
  • Karma: 11
Laygen écrit:
Merci de la réponse.

C'était ma logique de procéder qui n'était pas correcte.

En passant par l'ordre logique: ¨Proposition commercial -> Commande -> Facture tout est OK.
En pratique tous les jours, je passe des propositions commerciales en factures directement. Ça reste aussi un ordre logique.
L'administrateur a désactivé l'accès en écriture pour le public.

API REST Proposition commerciale vers facture il y a 3 mois 3 semaines #116939

  • Laygen
  • Portrait de Laygen
  • Hors ligne
  • Fresh Boarder
  • Messages : 11
  • Karma: 0
Des connaissances font le même procéder, Propositions commerciales en facture.

Je vais tenter de faire une PR sur GitHub pour ajouter la route dans la Rest API, ça peut être utile.
L'administrateur a désactivé l'accès en écriture pour le public.