FREDFRED docs

Devis d’impression 3D : prix, fabricants et validation

Afficher les prix et laisser FRED ou votre client choisir le fabricant.

Publié par FRED · Mis à jour le

Choisir la source du modèle

  • Nouveau fichier : POST /v1/storefront/quotes/upload, en multipart.
  • Fichier déjà présent dans le compte : POST /v1/storefront/quotes avec file_id.
  • Produit du dashboard : le même appel JSON avec product_id.
{
  "product_id": "prod_abc123",
  "quantity": 2,
  "color": "black",
  "destination": { "country": "FR", "postal_code": "34000" }
}

Envoyez la clé API et une Idempotency-Key sur chaque création. Sans code postal, les prix de production sont comparables mais aucun total livré n’est présenté.

Options facultatives

ChampDéfautUtilisation
quantity1De 1 à 50 exemplaires identiques
materialPLAIdentifiant exact de GET /v1/materials, par exemple bambu-pla-matte ; PLA reste l’alias historique
colorautoRéférence d’une couleur de cette matière ; auto propose une correspondance avec les couleurs du fichier
height_mmTaille originaleRedimensionnement proportionnel, de 5 à 350 mm ; peut demander une validation
destination.countryFRPays de livraison, code à deux lettres
destination.postal_codeAbsentNécessaire pour le prix livré
product_variant_idVariante compatible par défautUniquement pour un produit enregistré
personalization{}Champs définis sur le produit enregistré

Pour l’envoi multipart, country et postal_code sont des champs de formulaire séparés ; les autres options portent le même nom. Pour plusieurs modèles différents, demandez un devis par modèle. Cette interface couvre un objet, une configuration et une destination à la fois.

Matières et couleurs exactes

Appelez GET /v1/materials avec votre clé API (quotes:read). La réponse contient materials, avec pour chaque gamme son id, son name, son role et ses colors. Chaque couleur fournit id, code, label, hex et hexes (plusieurs teintes pour un filament multicolore). Utilisez uniquement les gammes role: "model" comme matière principale ; les autres sont des filaments de support.

{
  "file_id": "file_abc123",
  "material": "bambu-pla-matte",
  "color": "bambu-pla-matte:11101",
  "quantity": 2,
  "destination": { "country": "FR", "postal_code": "34000" }
}

Une couleur PLA Basic ne peut pas être associée à PLA Matte. Les références sont comparées au stock exact du fabricant et à sa grille de prix pour cette matière. Le catalogue ne garantit pas qu’un fabricant ou un profil qualifié est disponible. Sans offre compatible, le devis reste indisponible : aucun remplacement silencieux par du PLA Basic. Avec color: "auto", une différence entre les couleurs du fichier et les teintes proposées peut nécessiter la validation d’un aperçu.

Les anciens appels material: "PLA" avec color: "black" restent acceptés. Pour une nouvelle intégration, utilisez les identifiants du catalogue et conservez material et les colors de la réponse avec le devis.

Lire la réponse

Chaque entrée de options contient :

ChampÀ afficher ou utiliser
idL’option_id à conserver si vous choisissez ce fabricant
supplierIdentifiant, nom, ville et pays du fabricant
colorsRéférences ref et teintes hex du fichier de fabrication proposé
price.production_centsFabrication et préparation de toute la quantité
price.service_centsFrais de service FRED
price.shipping_centsTransport pour le colis, ou null
price.total_centsSomme à payer, ou null tant que la livraison manque
dispatch_hoursDélai prévu avant expédition, après paiement
transit_hoursTransport prévu, ou null
delivery_hoursDélai global prévu, ou null
availableCette option peut être sélectionnée maintenant
reasonMotif d’indisponibilité éventuel
expires_atFin de validité du prix
estimate_sourceslicer après un tranchage réussi
indicativeLe prix ou les conditions nécessitent encore une confirmation
estimation_noticeExplication à afficher avec le prix provisoire

Pendant le premier tranchage, aucune option de prix provisoire n’est publiée. Le visuel peut déjà être disponible, mais le prix et les mesures attendent un tranchage réussi. Continuez à lire poll_url tant que le devis est en calcul. Utilisez uniquement une option available: true pour commander, après les éventuelles validations demandées.

Les délais sont des estimations, pas une réservation de capacité. FRED classe les options selon sa politique de recommandation : délai, qualité, prix et distance. recommended_option_id désigne la première option commandable. Le fabricant le moins cher n’est donc pas forcément le recommandé.

Pour laisser FRED choisir à la commande, omettez option_id. Pour respecter le choix fait sur votre site, transmettez-le avec quote_id. La disponibilité est vérifiée à nouveau avant la création de la commande.

Attendre ou demander une validation

status du devisAction de votre site
processingLire poll_url toutes les deux secondes
needs_destinationDemander le code postal et chiffrer la livraison
readyPrésenter les options disponibles et permettre la commande
action_requiredAfficher l’aperçu et faire valider le modèle
unavailableAfficher issues, reason ou unavailable_suppliers ; ne pas proposer le paiement

Obtenir rapidement un prix exact

Un devis boutique devient ready dès qu’une option exacte et disponible peut être commandée. Il n’attend plus la fin du tranchage des profils alternatifs. comparison_complete: false indique que d’autres fabricants sont encore en cours de calcul : vous pouvez continuer à lire poll_url pour compléter la comparaison. La recommandation peut évoluer ; transmettez option_id pour conserver le choix présenté à votre client.

Les mesures de tranchage sont réutilisées pour le même compte, le même fichier préparé, le même profil, la même matière et la même palette. Une nouvelle quantité ou destination recalcule les tarifs sans relancer le tranchage de l’unité. Les tarifs et la disponibilité restent vérifiés à chaque nouveau devis.

Pour une boutique, demandez un devis pour chaque configuration commercialisée avant sa mise en vente, puis attendez la fin de la comparaison. Les demandes des clients peuvent ainsi réutiliser ces mesures. Une nouvelle géométrie, personnalisation, taille ou configuration machine peut nécessiter un premier tranchage : son prix exact en quelques secondes n’est pas garanti.

Si approval_required vaut true, affichez l’aperçu de l’option à votre utilisateur, puis appelez POST /v1/preparations/{preparation_id}/approve avec {"artifact_id":"artifact_abc123"} après sa validation explicite. Rechargez ensuite le devis. Une validation ne remplace pas une qualification technique manquante. Les URL d’aperçu nécessitent aussi votre authentification : servez-les via votre serveur, sans exposer la clé API au navigateur.

Un changement de matière, quantité, taille, couleur ou modèle nécessite un nouveau devis. Le prix d’un devis existant reste figé ; un résultat expiré ne peut plus être commandé.

Cette page vous a-t-elle été utile ?

Sur cette page