Packs i un aparador comú per a productes
Els packs tenen la seva pròpia API amb imatges i vista d'aparador, els productes es poden publicar a la web amb preu amb i sense IVA, i les factures admeten línies de pack amb el preu cobrat.
Els packs i l'aparador web ja formen part del contracte públic. Estan disponibles a tots els plans que inclouen productes, des d'Esencial. Esencial admet fins a 5 packs sense arxivar per compte i la resta de plans no té límit.
- Els packs tenen el seu propi recurs: composició, preu, disponibilitat, imatges
(fins a 5, amb URL públiques i permanents),
view=storefrontper a webs, lectures condicionals ambETagi un desglossament de preu per tarifa, client (client_id), data ichannel. - Els productes comparteixen el contracte d'aparador:
channels.web,slug,summary,seo,sale_price{net, tax, gross},availabilityialt,widthiheightde les imatges. Una operació massiva publica o retira fins a 50 productes. - Les línies de document admeten
{pack_id, quantity, sold_on, unit_price, prices_include_tax, print_mode}. Una venda web cobrada es factura amb el preu cobrat, al cèntim, encara que el pack s'hagi arxivat després. - Un pack s'imprimeix igual a tots els documents: cada producte a la seva línia,
amb el nom del pack, i l'estalvi sota l'última.
print_modenomés admetfull_breakdown. - Les línies de producte amb
unit_priceadmetenprices_include_taxper línia. - Els webhooks afegeixen
pack.created,pack.updated,pack.archived,pack.restored,pack.deletediproduct.deleted.
Llegeix Packs i La teva botiga amb Factuarea.
Esdeveniments
| Esdeveniment | Canvi |
|---|---|
pack.created, pack.updated, pack.archived i pack.restored | Nous, amb el pack a view=all |
pack.deleted | Nou, amb {id, object: "pack", deleted: true} |
product.deleted | Nou, amb {id, object: "product", deleted: true} |
product.updated | També en activar o desactivar un producte, i quan canvien la galeria, el contingut, el slug, el canal web, les variants o l'estat de disponibilitat |
Errors nous: pack_not_found, slug_already_exists, pack_in_use,
pack_composition_too_small, invalid_pack_component,
duplicate_pack_component, invalid_pack_pricing, pack_price_unreachable,
pack_price_allocation_impossible, invalid_pack_status_transition,
pack_not_sellable, pack_image_limit_reached, pack_snapshot_invalid,
pack_lines_must_be_expanded, pack_line_locked i
pack_print_mode_not_allowed.
Contracte al dia
Aquesta publicació també recull els canvis finals del contracte de packs, ofertes i tarifes. Les operacions afectades figuren a la llista de sota.
- Packs.
sellable.codeés un codi estable i nullable (archived,inactive,out_of_window,no_channel,component_unsellableoprice_unreachable) inullquan el pack es pot vendre. Modificar o esborrar les imatges d'un pack d'una altra empresa respon 404pack_not_found. - Tarifes. Actualitzar, eliminar o tocar els ítems d'una tarifa d'una altra empresa respon 404
price_list_not_found. Eliminar un ítem inexistent respon el nou 404price_list_item_not_found, ambparamitem_id. Els errors de dominiduplicate_price_list_name,invalid_price_list_item,inactive_price_listiprice_list_in_useporten el seucodei el seuparam. - Idempotència. Les escriptures de packs, ofertes i tarifes (19 escriptures) responen 409
idempotency_key_in_usementre una altra petició amb la mateixaIdempotency-Keycontinua en curs. Reintenta passats uns segons amb la mateixa clau i el mateix cos. - Productes. Un filtre
price[gte],price[lte]i similars amb un valor no numèric respon 400parameter_invalid_format, ambparam. - Límit del pla. Al pla Esencial un compte admet fins a 5 packs sense arxivar, actius o inactius, entre totes les seves empreses.
POST /v1/companies/{company}/packsiPOST /v1/companies/{company}/packs/{pack}/restoreresponen 402plan_limit_exceededambdetails.resourcepacks,currentilimitquan el compte és ple, i no desen res. Arxiva o esborra un pack per alliberar una plaça, o amplia el pla. La resta de plans no té límit. - Mòduls. Els recursos
packsipromotionsde la v1 exigeixen el mòdulproductsa cada petició i responen 403feature_not_available_in_plansi falta.productsiprice-listsresponen com fins ara. Una línia de pack perpack_iden un document exigeix el mòdulpacks. - Ofertes. El
labeladmet com a màxim 24 caràcters. - Documents. Els exemples de línia inclouen
pack_group: null.
Nous endpoints12
| Endpoint | Descripció |
|---|---|
GET/v1/companies/{company}/packs | Llistar tots els packs |
POST/v1/companies/{company}/packs | Crear un pack |
GET/v1/companies/{company}/packs/{pack} | Consultar un pack |
PATCH/v1/companies/{company}/packs/{pack} | Actualitzar un pack |
DEL/v1/companies/{company}/packs/{pack} | Eliminar un pack |
POST/v1/companies/{company}/packs/{pack}/archive | Arxivar un pack |
POST/v1/companies/{company}/packs/{pack}/restore | Restaurar un pack |
GET/v1/companies/{company}/packs/{pack}/price-breakdown | Obtenir el desglossament de preu d'un pack |
POST/v1/companies/{company}/packs/{pack}/images | Pujar una imatge a un pack |
PATCH/v1/companies/{company}/packs/{pack}/images/{image} | Actualitzar una imatge d'un pack |
DEL/v1/companies/{company}/packs/{pack}/images/{image} | Eliminar una imatge d'un pack |
POST/v1/companies/{company}/products/bulk-channels | Publicar o retirar productes de la web en bloc |