Fakturaskapande misslyckas för konfigurerbara objekt när Adobe Commerce REST API används
Fakturaskapande med Adobe Commerce REST API misslyckas för konfigurerbara produkter, där artikeln inte visas på fakturan och valideringsfelen inte utlöses. Åtgärda problemet genom att referera till artikel-ID:t för den konfigurerbara (överordnade) produkten i stället för den enkla (underordnade) produkten i fakturabegäran.
Beskrivning description
Miljö
Adobe Commerce
Problem/symtom
- Fakturor som skapas via API:t innehåller inte konfigurerbara produkter.
- Inget felmeddelande visas när endast underordnade (enkla) objekt-ID används.
- Inkluderar både överordnade och underordnade artikel-ID:n med noll kvantitet för de överordnade returerna Fakturan kan inte skapas utan produkter.
- Enkel produktfaktura lyckades.
Upplösning resolution
Följ de här stegen för att åtgärda problemet:
-
Identifiera artikel-ID för den konfigurerbara (överordnade) produkten från ordningen genom att fråga tabellen
sales_order_item.code language-none select item_id, sku, product_type from sales_order_item; 208 simple_skuA configurable 211 simple_skuA simple 214 simple_skuB configurable 217 simple_skuB simple 220 simple_skuC simple 223 simple_skuD simple -
Skapa fakturan via REST API genom att endast inkludera artikel-ID:t för den konfigurerbara överordnade produkten i nyttolasten för begäran.
Obs!: Inkludera inte underordnade (enkla) produktartikel-ID:n och ställ inte in kvantiteten på noll för några artiklar.
-
Skicka förfrågan om att skapa faktura med följande nyttolaststruktur:
code language-none curl -X POST \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <token>" \ https://<store_url>/rest/V1/order/<order_id>/invoice { "items": [ { "order_item_id": 208, "qty": 1 }, { "order_item_id": 220, "qty": 1 }, { "order_item_id": 223, "qty": 1 } ] } -
Kontrollera att den skapade fakturan innehåller radartiklar för alla tänkta konfigurerbara produkter.
Obs!
Om det finns flera varianter av en konfigurerbar produkt i en order använder du varje relevant överordnat artikel-ID som motsvarar dessa variationer när du skapar fakturor.
select item_id, sku, product_type from sales_order_item;
226 simple_skuA configurable
229 simple_skuA simple
232 simple_skuB configurable
235 simple_skuB simple
I det här exemplet använder nyttolasten för fakturavariant B för SKU:n simple_skuB det överordnade artikel-ID:t 232.