Sistem B2B profesional pentru Magento 2 Open Source

Kowal B2B Suite este un pachet de module Magento 2 conceput pentru companiile care doresc să desfășoare vânzări B2B pe Magento Open Source fără a renunța la catalogul nativ, coș, checkout, MSI, store view, website scope și mecanismele de integrare ale platformei.
SKU
M2-B2B
922,50 EUR
Trimite un email unui prieten

Solicită informații despre acest produs

Descriere / Sistem B2B profesional pentru Magento 2 Open Source

MAGENTO 2 · MAGENTO OPEN SOURCE · COMPANII · COMERȚ B2B

Conectează vânzările B2B și B2C într-o singură instalare Magento.

Kowal B2B Suite

Dezvoltă un portal pentru parteneri cu companii, roluri, prețuri, cataloage, RFQ, limite, documente și integrări. Activează logica B2B pentru website-urile selectate și adaptează procesul la regulile tale comerciale.

16 module și temă · Website scope · REST și GraphQL

CUM FUNCȚIONEAZĂ ÎN PRACTICĂ

01 · Stabilești modelul comercial
Definești companiile, canalele, prețurile și sursele de date.

02 · Configurezi procesul B2B
Atribui roluri, catalogul, condițiile și aprobările.

03 · Conectezi sistemele și implementezi
Alegi adaptoarele și verifici scenariile complete.

Ce câștigă magazinul tău?

Descoperă funcțiile, utilizarea și setările modulului.

Descoperă modulul

KOWAL B2B SUITE · MAGENTO 2 OPEN SOURCE

Sistem B2B profesional fără migrare la Adobe Commerce

Kowal B2B Suite extinde Magento 2 Open Source cu funcțiile necesare pentru vânzarea en-gros și contractuală.

Gestionează companii, utilizatori, prețuri individuale, comenzi rapide, limite de credit comercial, aprobări, oferte, documente și integrări — într-un singur mediu Magento.

Companii și roluri · Prețuri și cataloage · RFQ · Credit comercial · Documente · Integrări

Vânzare B2B adaptată regulilor tale comerciale

Fiecare partener poate primi propriile prețuri, catalog, condiții de plată, limite și utilizatori cu permisiuni diferite.

Sistemul susține atât un model en-gros simplu, cât și procese de achiziție complexe, cu aprobare în mai multe etape și integrare cu ERP, PIM, WMS sau CRM.

Cele mai importante zone ale platformei B2B

Mută gestionarea zilnică a partenerilor din e-mailuri, foi de calcul și acorduri manuale direct în Magento.

Companii, utilizatori și roluri de achiziție

O companie poate avea mai mulți utilizatori, adrese și persoane responsabile de achiziții. Rolurile stabilesc cine poate comanda, aproba sau vizualiza date.

Prețuri și cataloage individuale

Fiecare partener poate primi propriul catalog, prețuri contractuale, praguri cantitative și reguli de achiziție. Clientul vede oferta destinată companiei sale.

Comenzi rapide și liste de cumpărături

Clienții pot plasa eficient comenzi mari după SKU, pot folosi liste de cumpărături și pot importa poziții în loc să caute fiecare produs separat.

RFQ, oferte și aprobări

Procesul de ofertare poate include prețuri negociate, termen de valabilitate și condiții individuale. Comenzile pot trece prin aprobare în funcție de valoare sau de rolul utilizatorului.

Control financiar fără lucru în foi de calcul

Limitele de credit comercial, utilizarea creditului și termenele de plată ajută la controlul vânzărilor cu plată amânată.

Clientul are acces la documente, iar echipa vede condițiile comerciale și starea procesului într-un singur loc.

Documente în portalul clientului

  • facturi și storno-uri,
  • avize de livrare și confirmări,
  • oferte PDF,
  • documente din Magento sau din sistemul ERP.

Cum arată implementarea?

Platforma poate fi implementată pe etape. Mai întâi ordonăm regulile comerciale, apoi le reflectăm în Magento și le integrăm cu sistemele companiei.

1. Model de vânzare

Stabilim clienții, canalele, listele de prețuri, plățile, restricțiile și sursele de date.

2. Reguli pentru companii

Configurăm utilizatorii, prețurile, catalogul, adresele, limitele și rolurile de achiziție.

3. Proces de achiziție

Implementăm comenzi rapide, oferte, aprobări, documente și reguli de checkout.

4. Integrări și teste

Conectăm ERP, PIM, WMS sau CRM, testăm scenariile și pregătim echipa pentru lucru.

Integrări cu sistemele companiei

Datele despre clienți, prețuri, produse, comenzi și documente pot fi schimbate cu ERP, PIM, WMS, CRM, EDI și sistemele de achiziții ale partenerilor.

Sincronizarea poate include limite de credit comercial, condiții de plată, statusuri ale comenzilor și documente. Istoricul taskurilor și erorilor facilitează controlul procesului.

B2B care crește odată cu businessul

Kowal B2B Suite este o soluție pentru angrosiști, distribuitori, producători și companii care desfășoară vânzări contractuale.

Poți începe cu companii, prețuri și catalog, iar apoi poți extinde platforma cu comenzi rapide, RFQ, limite, aprobări, documente și integrări.

Un singur Magento. Un singur catalog. Un singur proces de vânzare B2C și B2B.

Un singur pachet, arhitectură modulară

kowal/metapackage-b2b-suite furnizează fișierele a 16 module B2B și ale temei frontend/Kowal/b2b. Pachetul principal le înregistrează în autoload și înlocuiește numele subpachetelor, astfel încât instalarea suite nu necesită un repository separat pentru fiecare modul.

Implementarea este proiectată pentru Magento Open Source 2.4.9 și PHP 8.3. Domeniul modulelor activate, compatibilitatea temei și scenariile procesului trebuie verificate în instalarea țintă.

Website și modelul de acces al companiei

Funcțiile B2B funcționează în contextul website_id selectat. Compania trebuie să aibă o relație activă cu acest canal, iar rolurile definesc accesul la achiziții, utilizatori, oferte și documente.

Primul model de companie presupune un singur website atribuit. Vânzarea B2C poate utiliza aceeași instalare, însă activarea B2B și accesul companiilor rămân separate prin configurarea canalelor.

Quick Order, aprobări și implementare etapizată

Comanda rapidă verifică SKU, cantitatea, atribuirea la website, vizibilitatea pentru companie și prețul B2B. Listele de cumpărături și logurile de import ajută la gestionarea comenzilor repetitive.

Regulile approval iau în considerare compania, website-ul, moneda și pragul. Request-ul pending curent este închis prin decizia approve, reject sau cancel. Fluxul în mai multe etape trebuie convenit și verificat ca domeniu concret al implementării.

Documente și acces securizat

Documentele sunt atribuite companiei și website-ului. Fișierele PDF se află în var/kowal_b2b_documents și sunt descărcate printr-un controller care verifică accesul.

Sursa poate fi Magento Sales sau modul hibrid Magento + API. Pachetul include documente pentru comenzi, facturi, expedieri și corecții, precum și un renderer PDF comun; sincronizarea documentelor dintr-un sistem extern necesită un adaptor adecvat.

Integrările necesită adaptoare și surse de date

Stratul Integration furnizează profile, maparea identificatorilor, joburi, retry, loguri și dead letter queue. Un ERP, PIM, WMS sau CRM concret este conectat printr-un adaptor care implementează SyncAdapterInterface.

Înainte de start, stabilește sursa de adevăr pentru companii, prețuri, stocuri, comenzi și documente. REST și GraphQL sunt puncte de integrare; instalarea pachetului nu conectează automat toate sistemele companiei.

Instalare prin Composer

Pachetul kowal/metapackage-b2b-suite, modulul Kowal_B2BBase. După configurarea accesului la repository-ul Kowal, instalează pachetul, activează modulul, actualizează Magento și golește cache-ul. În producție, include compilarea și deploy-ul conținutului static conform procesului magazinului.

De la configurare la rezultat

1. Stabilești modelul comercial
Definești companiile, canalele, prețurile și sursele de date.

2. Configurezi procesul B2B
Atribui roluri, catalogul, condițiile și aprobările.

3. Conectezi sistemele și implementezi
Alegi adaptoarele și verifici scenariile complete.

Portal de comenzi pentru partener

Compania este atribuită unui website B2B activ. Utilizatorul ei folosește catalogul și prețul conform condițiilor stabilite, adaugă poziții după SKU și plasează comanda.

În funcție de configurare, procesul include limita și aprobarea. Documentele și integrările rămân asociate companiei și canalului de vânzare corespunzător.

Planifică o implementare B2B adaptată companiei

Vrei să adaptezi modulul la magazinul tău? Solicită implementarea Kowal B2B Suite și discută configurarea sau extensiile necesare.

Mai multe informații

Conformitate cu șablonul Luma / Blank, KOWAL

Configurarea integrării

Kowal B2B API — documentație REST completă

Versiunea contractului: V1 · Sursa de adevăr: Kowal_B2BApi/etc/webapi.xml · Destinatari: administratori de magazine, parteneri de implementare și echipe care integrează ERP, PIM, WMS sau un sistem de achiziții.

1. Scopul și limitele API

Kowal B2B API pune la dispoziție date și procese B2B care funcționează în Magento 2: companii, catalog și prețuri individuale, cumpărături rapide, documente, limită de credit comercial, aprobări, RFQ și cozi de integrare. Este un REST API pentru integrări de sistem; nu înlocuiește endpointurile standard Magento pentru catalog, coș, checkout și contul clientului.

Documentul descrie exclusiv endpointurile expuse în prezent de modul. Nu promite operațiuni pe care contractul V1 nu le oferă, de exemplu crearea unei comenzi prin REST, CRUD pentru liste de prețuri sau editarea configurației website.

2. Obținerea accesului și reguli de colaborare

2.1. Procesul de lansare a integrării

  1. Integratorul transmite administratorului magazinului scopul integrării, mediul (test/producție), sistemul sursă, domeniul datelor și lista zonelor API necesare.
  2. Administratorul creează sau configurează integrarea Magento, îi atribuie permisiuni ACL minime și transmite printr-un canal sigur: baseUrl, tokenul, websiteId, companyId (dacă se aplică), moneda și datele de test.
  3. Integratorul execută testul GET /V1/kowal-b2b/websites/:websiteId/config, apoi teste funcționale pe mediul de test.
  4. Înainte de producție, ambele părți stabilesc programul de sincronizare, dimensiunea maximă a datelor, retry, proprietarul datelor și modul de raportare a erorilor.
  5. Tokenurile sunt păstrate exclusiv într-un seif de secrete; administratorul le rotește sau le retrage la schimbarea furnizorului, utilizatorului ori domeniului integrării.

2.2. Responsabilități

ParteResponsabilitate
Administrator magazinConfigurarea website-ului B2B, a companiei și relației companiei cu website-ul, tokenului și ACL; transmiterea datelor de test; decizia privind accesul la date.
IntegratorPăstrarea în siguranță a tokenului, utilizarea corectă a contextului websiteId/companyId, validarea datelor, gestionarea erorilor și reluărilor, neexpunerea datelor altor companii.
Proprietar proces de businessStabilirea sursei de adevăr pentru prețuri, documente, RFQ, limite și statusuri de sincronizare.

Nu folosi tokenul administratorului într-o aplicație client și nu partaja un singur token între sisteme independente. Fiecare integrare ar trebui să aibă propriul token și doar ACL necesare.

2.3. Permisiuni

Magento verifică tokenul Bearer și ACL atribuite utilizatorului administrativ sau integrării. Endpointurile B2B necesită una dintre următoarele grupe de permisiuni:

ACLDomeniu
configWebsites și feature flags
companies, company_save, company_users, batchCompanii, utilizatorii lor și importul batch de companii
products, prices, catalog_permissionsCatalog, disponibilitate, prețuri și vizibilitate
import_export, quick_order, documentsProfile de import/export, liste de cumpărături și documente
credit_limits, approvals, orders, quotesLimită, workflow de aprobare, contextul comenzilor și RFQ
system_integrationsProfile, mapări și joburi de integrare

Domeniul trebuie să rezulte din scopul integrării. Exemplu: un sistem de achiziții are de obicei nevoie de products, prices, catalog_permissions, quick_order și quotes; un ERP care gestionează documente — documents și, dacă este proprietarul sincronizării, system_integrations.

3. Convenții tehnice

Adresă, headere și parametri

Adresa de bază are forma https://b2b.example.com/rest/V1. Toate căile de mai jos din document sunt indicate de la /V1; adresa completă a endpointului este BASE_URL + calea.

Authorization: Bearer Accept: application/jsonContent-Type: application/json

API folosește JSON. Numele din URL sunt camelCase (websiteId, companyId), iar câmpurile JSON corespund numelor parametrilor contractelor Magento. :companyId, :quoteId, :sku etc. sunt parametri de cale. În exemple, ? marchează un parametru opțional.

websiteId este necesar pentru operațiile dependente de canalul de vânzare. Trebuie să indice un website existent cu B2B activat. companyId indică o companie care trebuie să aibă o relație activă cu acel website când operația funcționează în contextul ei. API nu alege implicit website-ul sau compania.

Request body și idempotency

Magento serializează obiectul DTO sub numele parametrului metodei: majoritatea scrierilor acceptă {'request': {...}}; crearea companiei folosește {'company': {...}}; batch-ul de companii — {'companies': [...]}. Endpointurile cu argumente simple acceptă câmpuri fără wrapper, de exemplu {'websiteId': 1, 'currency': 'PLN', 'items': [...]}.

Headerul Idempotency-Key (max. 128 de caractere) este acceptat în prezent de POST /companies: reluarea cu aceeași cheie va returna compania creată anterior. Pentru jobul de integrare folosește câmpul request.idempotencyKey. Nu presupune idempotency automată pentru alte endpointuri de scriere; reia-le doar după stabilirea statusului operației.

Răspunsuri și erori

Răspunsurile de succes sunt obiecte sau tablouri ale contractelor Magento. Câmpurile returnate de obiecte pot fi extinse compatibil; integrarea ar trebui să ignore câmpurile necunoscute. O eroare de business poate conține:

{ 'code': 'b2b.company.not_assigned_to_website', 'message': 'B2B company is not assigned to website.', 'website_id': 1, 'trace_id': 'request-correlation-id', 'details': {'company_id': 10}, 'field_errors': []}
HTTPSemnificațieReacția integratorului
400 / 422Date incorecte sau validare de domeniuCorectează datele; nu relua fără schimbarea payloadului.
401 / 403Token/ACL lipsă sau insuficientNu relua; raportează administratorului domeniul tokenului.
404Resursa sau relația nu există în contextul datVerifică identificatorii și contextul website.
409Conflict de status sau duplicatCitește starea curentă înainte de decizia de reluare.
5xx / timeoutEroare tehnicăAplică retry limitat cu backoff și păstrează trace_id.

Nu loga tokenuri, date personale complete sau secrete de configurare. Raportarea către echipa magazinului ar trebui să includă timpul, metoda, calea fără secrete, statusul HTTP, trace_id și payloadul anonimizat.

4. Scheme de date de intrare

Schemele de mai jos sunt comune endpointurilor de referință. Câmpul fără ? este cerut de contract; ? înseamnă valoare opțională. Câmpurile metadata, config, configuration și payload sunt obiecte JSON.

DTO / wrapperCâmpuri
companywebsiteId, name, taxId, externalId?, status?, salesRepresentativeId?, customerGroupId?, websiteActive?
companyUserwebsiteId, roleId, active
request — RFQwebsiteId, companyId, customerId?, externalId?, title, currency, validUntil?, customerNote?, salesNote?, metadata?
request — poziție RFQquoteId, sku, productId?, name?, qty, requestedPrice?, offeredPrice?, comment?, metadata?
request — decizie RFQcustomerId?, adminUserId?, message?
request — comentariu RFQquoteId, customerId?, adminUserId?, authorType, message, visibleForCustomer
request — documentwebsiteId, companyId, orderId?, orderIncrementId?, invoiceId?, invoiceIncrementId?, creditmemoId?, creditmemoIncrementId?, externalId?, documentNumber, documentType, status, issueDate?, dueDate?, grandTotal?, currency?, metadata?
request — fișier documentdocumentId, fileName, filePath, mimeType, fileSize, checksum?, primary
request — limităwebsiteId, companyId, termsId?, creditLimit, currency, active, status, metadata?
request — expunere limităwebsiteId, companyId, sourceType, sourceId, sourceIncrementId?, amount, currency, dueDate?, metadata?
request — condiții de platăwebsiteId, code, name, daysDue, active, description?
request — regulă de aprobarewebsiteId, companyId, name, thresholdAmount, currency?, priority, active, metadata?
request — aprobatorruleId, customerId, sortOrder, active
request — decizie aprobareapproverCustomerId?, comment?
request — cerere aprobarewebsiteId, companyId, orderId?, orderIncrementId?, requesterCustomerId?, grandTotal, currency, comment?, metadata?
request — profil import/exportwebsiteId, code, name, direction, entityType, format, behavior, active, configuration?
request — profil integrarewebsiteId, code, name, systemType, adapterCode, direction, active, maxAttempts, config?
request — maparewebsiteId, systemType, entityType, localId, externalId, metadata?
request — job integrareprofileId, direction?, entityType, operation, idempotencyKey?, maxAttempts?, payload?, scheduledAt?

5. Referință endpointuri

În tabele, ACL indică resursa minimă de permisiune Magento. Rezultat definește tipul răspunsului de succes.

5.1. Websites și configurare

Metodă și endpointACLIntrareRezultat și utilizare
GET /V1/kowal-b2b/websitesconfig—Tablou website (websiteId, cod, nume, flag B2B). Preia înainte de configurarea integrării.
GET /V1/kowal-b2b/websites/:websiteId/configconfigpath: websiteIdConfigurarea B2B a website-ului (inclusiv enabled/debug/retenție loguri). Execută drept test de acces.
GET /V1/kowal-b2b/websites/:websiteId/featuresconfigpath: websiteIdFeature flags active pentru website; folosește pentru activarea condiționată a funcțiilor clientului.

5.2. Companii și utilizatori de companie

Metodă și endpointACLIntrareRezultat și utilizare
GET /companies?websiteId=companiesquery: websiteIdTablou de companii atribuite website-ului.
POST /companiescompany_savebody: companyCreează compania și relația cu website-ul; folosește Idempotency-Key la reluări. Returnează compania.
POST /companies/batchbatchbody: companies — tablou companyCreează mai multe companii și returnează rezultatul per element, inclusiv erori.
GET /companies/:companyId?websiteId=companiespath: companyId; query: websiteIdCompanie verificată în contextul website.
PUT /companies/:companyIdcompany_savepath: companyId; body: companyActualizează datele și relația companiei pentru company.websiteId.
POST /companies/:companyId/activate?websiteId=company_savepath: companyId; query: websiteIdActivează compania în website-ul indicat și returnează compania.
POST /companies/:companyId/block?websiteId=company_savepath: companyId; query: websiteIdBlochează compania în website-ul indicat și returnează compania.
GET /companies/:companyId/users?websiteId=company_userspath: companyId; query: websiteIdTablou de atribuiri ale clienților la companie.
PUT /companies/:companyId/users/:customerIdcompany_userspath: companyId, customerId; body: companyUserAcordă/actualizează rolul și activitatea clientului în companie; returnează atribuirea.

5.3. Produse, preț și vizibilitatea catalogului

Metodă și endpointACLIntrareRezultat și utilizare
GET /products?websiteId=productsquery: websiteIdTablou de produse Magento de bază pentru website.
GET /products/:sku?websiteId=productspath: sku codificat; query: websiteIdProdus (id, sku, nume, tip, status, websites).
GET /products/:sku/availability?websiteId=productspath: sku; query: websiteIdDisponibilitate și cantitate vandabilă MSI pentru SKU.
GET /products/:sku/b2b-status?websiteId=productspath: sku; query: websiteIdStatus B2B: atribuirea la website, traduceri și date stock.
GET /reports/products/missing-translations?websiteId=productsquery: websiteIdRaport SKU fără traduceri necesare, cu reason/details.
GET /reports/products/missing-stock?websiteId=productsquery: websiteIdRaport SKU fără date stock necesare.
GET /companies/:companyId/products/:sku/price?websiteId=&currency=&qty=pricespath: companyId, sku; query: websiteId, currency, opț. qty (implicit 1)Explicația prețului corect pentru companie, monedă și cantitate; citește înainte de achiziție.
GET /companies/:companyId/products/:sku/visibility?websiteId=catalog_permissionspath: companyId, sku; query: websiteIdRezultatul vizibilității/achiziției SKU pentru companie.
GET /companies/:companyId/catalog-visibility?websiteId=catalog_permissionspath: companyId; query: websiteIdTablou de poziții ale indexului catalogului vizibil al companiei.
POST /companies/:companyId/catalog-visibility/reindex?websiteId=catalog_permissionspath: companyId; query: websiteIdReconstruiește indexul și returnează numărul de poziții indexate. Operație administrativă.

5.4. Import și export pe fișiere

Metodă și endpointACLIntrareRezultat și utilizare
GET /import-export/profiles?websiteId=import_exportquery: websiteIdTablou de profile import/export pentru website.
POST /import-export/profilesimport_exportbody: request — profil import/exportSalvează profilul și returnează datele lui.
POST /import-export/import/:profileId?sourceFile=&dryRun=import_exportpath: profileId; query: sourceFile, opț. dryRun=falsePornește importul fișierului indicat pe partea mediului Magento; returnează jobul. Nu trimite multipart.
POST /import-export/export/:profileId?resultFile=import_exportpath: profileId; opț. query: resultFileCreează jobul de export, opțional cu calea fișierului țintă.
GET /import-export/jobs?websiteId=import_exportquery: websiteIdTablou de joburi import/export pentru website.
GET /import-export/jobs/:jobIdimport_exportpath: jobIdStarea, rezultatul și datele unui singur job.
GET /import-export/jobs/:jobId/logsimport_exportpath: jobIdLoguri diagnostice ale jobului.

5.5. Comandă rapidă și liste de cumpărături

Metodă și endpointACLIntrareRezultat și utilizare
POST /companies/:companyId/quick-order/validatequick_orderpath: companyId; body: websiteId, currency, items (sku, qty)Validează mai multe SKU în contextul companiei: disponibilitate, vizibilitate și preț; returnează rezultatul agregat.
GET /companies/:companyId/shopping-lists?websiteId=quick_orderpath: companyId; query: websiteIdTablou de liste de cumpărături ale companiei.
POST /companies/:companyId/shopping-listsquick_orderpath: companyId; body: websiteId, name, opț. customerId, isDefault=falseCreează lista de cumpărături și o returnează.
GET /shopping-lists/:listId/itemsquick_orderpath: listIdTablou de poziții ale listei indicate.
POST /shopping-lists/:listId/itemsquick_orderpath: listId; body: currency, items (sku, qty)Adaugă poziții în listă și returnează pozițiile salvate.

5.6. Documente și fișiere

Metodă și endpointACLIntrareRezultat și utilizare
GET /companies/:companyId/documents?websiteId=&documentType=documentspath: companyId; query: websiteId, opț. documentTypeDocumentele companiei, filtrate opțional după tip.
GET /documents/:documentId?companyId=&websiteId=documentspath: documentId; query: companyId, websiteIdDetaliile documentului după verificarea apartenenței companiei.
POST /documentsdocumentsbody: request — documentCreează sau salvează metadatele documentului și returnează documentul.
POST /documents/filesdocumentsbody: request — fișier documentÎnregistrează fișierul existent în storage Magento (nume, cale, MIME, dimensiune), nu trimite binare.
GET /documents/:documentId/files?companyId=&websiteId=documentspath: documentId; query: companyId, websiteIdTablou de metadate ale fișierelor documentului.
GET /documents/:documentId/sync-logsdocumentspath: documentIdLoguri de sincronizare ale documentului; destinate integrării administrative.

5.7. Limită de credit comercial și termene de plată

Metodă și endpointACLIntrareRezultat și utilizare
GET /companies/:companyId/credit/status?websiteId=&currency=credit_limitspath: companyId; query: websiteId, currencyStatusul limitei, utilizarea și suma disponibilă a companiei.
POST /credit-limitscredit_limitsbody: request — limităCreează/actualizează limita companiei și returnează limita.
POST /credit/exposurescredit_limitsbody: request — expunereRezervă expunerea limitei pentru sursă (de ex. comandă) și o returnează.
POST /credit/exposures/:exposureId/releasecredit_limitspath: exposureId; opț. body: messageEliberează expunerea; returnează starea acesteia.
GET /payment-terms?websiteId=credit_limitsquery: websiteIdTablou de condiții de plată active/cunoscute ale website-ului.
POST /payment-termscredit_limitsbody: request — condiții de platăSalvează condițiile de plată și le returnează.

5.8. Workflow de aprobare

Metodă și endpointACLIntrareRezultat și utilizare
GET /companies/:companyId/approval/rules?websiteId=&currency=approvalspath: companyId; query: websiteId, opț. currencyReguli de aprobare ale companiei pentru canal/monedă.
POST /approval/rulesapprovalsbody: request — regulăCreează/actualizează regula de prag și o returnează.
GET /approval/rules/:ruleId/approversapprovalspath: ruleIdTablou de aprobatori atribuiți, în ordinea sortOrder.
POST /approval/approversapprovalsbody: request — aprobatorSalvează atribuirea clientului ca aprobator.
GET /companies/:companyId/approval/required?websiteId=&grandTotal=&currency=approvalspath: companyId; query: websiteId, grandTotal, currencyBoolean: dacă suma necesită aprobare.
POST /approval/requestsapprovalsbody: request — cerere aprobareCreează request pentru comandă și îl returnează.
GET /companies/:companyId/approval/requests?websiteId=&status=approvalspath: companyId; query: websiteId, opț. statusTablou de requesturi de aprobare ale companiei.
POST /approval/requests/:requestId/approveapprovalspath: requestId; body: request — decizieAprobă requestul; returnează starea lui curentă.
POST /approval/requests/:requestId/rejectapprovalspath: requestId; body: request — decizieRespinge requestul; returnează starea lui curentă.
POST /approval/requests/:requestId/cancelapprovalspath: requestId; body: request — decizieAnulează requestul; returnează starea lui curentă.
GET /approval/requests/:requestId/decisionsapprovalspath: requestIdIstoricul deciziilor pentru request.

5.9. Context B2B al comenzilor

Metodă și endpointACLIntrareRezultat și utilizare
GET /orders/:orderId/b2b-contextorderspath: orderIdContext B2B al unei singure comenzi native Magento (de ex. companie, status aprobare, limită, export).
GET /companies/:companyId/orders/b2b-context?websiteId=&approvalStatus=orderspath: companyId; query: websiteId, opț. approvalStatusTablou de contexte ale comenzilor companiei, filtrat opțional după statusul aprobării.

5.10. RFQ și oferte comerciale

Metodă și endpointACLIntrareRezultat și utilizare
GET /companies/:companyId/quotes?websiteId=&status=quotespath: companyId; query: websiteId, opț. statusRFQ și ofertele companiei, opțional după status.
POST /quotesquotesbody: request — RFQCreează un RFQ draft și îl returnează. Adaugă poziții printr-un endpoint separat.
GET /quotes/:quoteIdquotespath: quoteIdDetalii RFQ/ofertă.
GET /quotes/:quoteId/itemsquotespath: quoteIdTablou de poziții RFQ.
POST /quotes/itemsquotesbody: request — poziție RFQAdaugă SKU și cantitatea, prețul solicitat/ofertat opțional și comentariul.
GET /quotes/:quoteId/commentsquotespath: quoteIdComentarii RFQ. Clientul vede doar comentariile marcate ca vizibile.
POST /quotes/commentsquotesbody: request — comentariu RFQAdaugă mesaj; authorType și visibleForCustomer definesc autorul și vizibilitatea.
GET /quotes/:quoteId/historyquotespath: quoteIdIstoricul schimbărilor de status și evenimentelor RFQ.
POST /quotes/:quoteId/submitquotespath: quoteId; body: request — decizie RFQTrimite RFQ draft pentru ofertare.
POST /quotes/:quoteId/make-offerquotespath: quoteId; body: request — decizie RFQAgentul de vânzări creează/transmite oferta; înainte de apel stabilește prețurile pozițiilor.
POST /quotes/:quoteId/acceptquotespath: quoteId; body: request — decizie RFQAcceptă oferta curentă. În acest contract nu creează comandă REST.
POST /quotes/:quoteId/rejectquotespath: quoteId; body: request — decizie RFQRespinge oferta/RFQ.
POST /quotes/:quoteId/cancelquotespath: quoteId; body: request — decizie RFQAnulează RFQ, dacă statusul curent permite.

5.11. Profile și joburi de integrare

Metodă și endpointACLIntrareRezultat și utilizare
GET /integrations/profiles?websiteId=&systemType=system_integrationsquery: websiteId, opț. systemTypeProfile de integrare pentru website.
POST /integrations/profilessystem_integrationsbody: request — profil integrareSalvează profilul ERP/PIM/WMS etc. și îl returnează.
POST /integrations/mappingssystem_integrationsbody: request — mapareSalvează perechea ID local ↔ ID extern.
GET /integrations/mappings/local?websiteId=&systemType=&entityType=&localId=system_integrationsquery: toți parametrii sunt necesariCaută maparea după identificatorul Magento.
GET /integrations/mappings/external?websiteId=&systemType=&entityType=&externalId=system_integrationsquery: toți parametrii sunt necesariCaută maparea după identificatorul sistemului extern.
POST /integrations/jobssystem_integrationsbody: request — jobPublică jobul pentru execuție; idempotencyKey identifică operația de business.
GET /integrations/jobs?websiteId=&status=system_integrationsquery: websiteId, opț. statusTablou de joburi de integrare.
GET /integrations/jobs/:jobIdsystem_integrationspath: jobIdStarea și detaliile unui singur job.
POST /integrations/jobs/:jobId/processsystem_integrationspath: jobIdProcesează jobul și returnează starea lui curentă.
POST /integrations/jobs/:jobId/retrysystem_integrationspath: jobIdReia jobul după eroare, conform limitei sale de încercări.
GET /integrations/jobs/:jobId/logssystem_integrationspath: jobIdLogurile execuției jobului.
GET /integrations/jobs/:jobId/errorssystem_integrationspath: jobIdErori de domeniu/tehnice ale jobului.

6. Exemple de apeluri

export BASE_URL='https://b2b.example.com/rest/V1'export TOKEN='token-przekazany-przez-administratora'export WEBSITE_ID=1 COMPANY_ID=10 SKU='B2B-SKU-001' CURRENCY='PLN'# Test dostępu i konfiguracji kanałucurl -sS '$BASE_URL/kowal-b2b/websites/$WEBSITE_ID/config' \ -H 'Authorization: Bearer $TOKEN' -H 'Accept: application/json'# Cena kontraktowa firmy dla konkretnej ilościcurl -sS '$BASE_URL/kowal-b2b/companies/$COMPANY_ID/products/$SKU/price?websiteId=$WEBSITE_ID&currency=$CURRENCY&qty=5' \ -H 'Authorization: Bearer $TOKEN' -H 'Accept: application/json'# Walidacja koszyka po SKUcurl -sS -X POST '$BASE_URL/kowal-b2b/companies/$COMPANY_ID/quick-order/validate' \ -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' \ --data '{'websiteId':1,'currency':'PLN','items':[{'sku':'B2B-SKU-001','qty':5}]}'# Utworzenie RFQcurl -sS -X POST '$BASE_URL/kowal-b2b/quotes' \ -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' \ --data '{'request':{'websiteId':1,'companyId':10,'customerId':25,'title':'Dostawa kwartalna','currency':'PLN','externalId':'ERP-RFQ-2026-001'}}'

7. Scenarii de integrare recomandate

Achiziție după SKU

  1. Citește configurarea website-ului și salvează websiteId, companyId și moneda transmise.
  2. Folosește quick order pentru validarea colectivă a SKU, cantității, vizibilității și disponibilității.
  3. Pentru pozițiile acceptate, preia prețul din price cu qty corespunzător.
  4. Creează RFQ, adaugă pozițiile și trimite-le prin submit, dacă achiziția necesită ofertă.
  5. Urmărește statusul și istoricul RFQ; după acceptare, urmează procesul de comandă Magento convenit, deoarece V1 nu expune endpoint de creare order.

Documente și decontări

  1. Preia lista documentelor companiei, filtrând opțional după documentType.
  2. Pentru documentul selectat, preia metadatele și lista de fișiere; calea fișierului nu este automat un URL public — modul de descărcare a binarului trebuie convenit cu administratorul magazinului.
  3. Citește statusul limitei înaintea procesului de achiziție; doar integrarea cu ACL credit_limits o poate gestiona.

Operații asincrone

  1. Salvează profilul de integrare și mapările identificatorilor.
  2. Publică jobul cu idempotencyKey de business și păstrează jobId.
  3. Citește jobul și logurile/erorile; apelează retry doar după analiza erorii și eliminarea cauzei acesteia.

8. Listă de recepție înainte de producție

  • Tokenul are doar ACL necesare și nu este tokenul administratorului folosit de UI.
  • Integratorul gestionează corect 401, 403, 404, validarea 422, conflictul 409 și timeouturile.
  • Fiecare request în context B2B transmite websiteId corect, iar datele companiei folosesc companyId valid.
  • Prețurile, vizibilitatea și disponibilitatea sunt verificate înainte de crearea procesului de achiziție.
  • Crearea companiei folosește Idempotency-Key; joburile de integrare au un idempotencyKey stabil în body.
  • Logurile nu conțin tokenuri sau date sensibile, iar procedura de suport transmite trace_id.
  • Testele au fost efectuate pe mediul de testare pe o companie care are o relație activă cu website-ul B2B.

9. Compatibilitate

Contractul este versionat prin /V1. Extinderea răspunsului cu câmpuri noi este compatibilă; integratorul ar trebui să tolereze câmpurile necunoscute. O modificare care elimină un câmp, semnificația unui câmp sau un endpoint necesită o nouă versiune API. În caz de diferențe între document și instalarea funcțională, contractul activ webapi.xml al versiunii respective a modulului este cel obligatoriu.

Instrucțiuni de instalare a modulului

Instalarea și configurarea Kowal B2B Suite

Acest manual este destinat persoanei care a cumpărat Kowal B2B Suite și trebuie să îl pornească într-o instalare Magento Open Source existentă. Te ghidează prin două etape:

  1. instalarea tehnică — realizată de un developer sau administrator de server;
  2. configurarea de business — realizată în panoul Magento de administratorul magazinului.

Înainte de a începe, fă o copie a bazei de date și a fișierelor Magento. Recomandăm ca prima pornire să fie efectuată pe un mediu de testare, iar abia apoi implementată în producție.

1. Ce primești și de ce ai nevoie

Kowal B2B Suite este livrat ca pachet Composer kowal/metapackage-b2b-suite. Conține module B2B și tema frontend/Kowal/b2b.

Cerințe

ElementCerință
MagentoMagento Open Source 2.4.9
PHP8.3
ComposerComposer 2
Acces serverSSH și posibilitatea de a rula bin/magento
Magentocatalog, clienți, checkout, Sales, MSI și cron funcționale
PDFposibilitate de scriere în var/ de către procesul PHP

De la Kowal vei primi:

  • adresa repository-ului privat Composer — în continuare REPOSITORY_URL;
  • numele de utilizator sau identificatorul de acces — USERNAME;
  • tokenul de acces — ACCESS_TOKEN;
  • intervalul permis de versiuni ale pachetului.

Nu salva tokenul în repository-ul Git, în tickete sau în istoricul shell-ului partajat cu alte persoane.

2. Instalare tehnică

Execută toate comenzile în directorul rădăcină al instalării Magento existente, ca utilizator care are acces la fișiere și la comanda bin/magento.

2.1. Pregătire

  1. Asigură-te că Magento funcționează corect înainte de modificare.
  2. Salvează starea implementării și fă backup bazei de date și directoarelor app/etc, pub/media și var.
  3. În producție, activează modul maintenance pe durata actualizării:
bin/magento maintenance:enable

2.2. Adăugarea repository-ului privat

Adaugă repository-ul Composer Kowal și configurează datele de acces primite.

Datele de acces la repository-ul Composer (adresa de e-mail a clientului și tokenul de licență) le vei primi prin e-mail după achiziție. Sunt disponibile și în panoul clientului după autentificare pe kowal.store. Înlocuiește TWOJ_EMAIL_KLIENTA cu adresa de e-mail a contului tău, iar TWOJ_TOKEN cu tokenul primit. Execută comenzile în directorul rădăcină Magento.

composer config repositories.kowal composer https://repo.kowal.storecomposer config http-basic.repo.kowal.store 'TWOJ_EMAIL_KLIENTA' 'TWOJ_TOKEN'

Composer salvează de obicei credențialele în fișierul local auth.json; nu adăuga acest fișier în Git.

2.3. Instalarea pachetului

Instalează versiunea transmisă împreună cu licența. Pentru linia curentă a pachetului, comanda exemplu este:

composer require kowal/metapackage-b2b-suite:^0.2 --with-all-dependencies

După descărcarea dependențelor, execută actualizarea schemei și configurării Magento:

bin/magento setup:upgradebin/magento cache:clean

În modul producție, execută suplimentar:

bin/magento setup:di:compilebin/magento setup:static-content:deploy -f pl_PL en_USbin/magento cache:flush

Folosește doar acele locale care sunt active în magazin. Dacă instalarea folosește un alt proces de deployment, include comenzile de mai sus în procedura sa standard.

2.4. Verificarea instalării

bin/magento module:status | grep Kowalbin/magento indexer:status

În panoul de administrare ar trebui să apară meniul B2B și fila Stores > Configuration > Kowal > B2B. Dacă lipsesc, verifică rezultatul setup:upgrade, cache-ul și rolurile ACL ale utilizatorului administrator.

2.5. Permisiuni pentru fișiere PDF

PDF-urile generate de B2B folosesc mPDF și directoare din var/, inclusiv var/tmp/kowal_b2b_mpdf și var/kowal_b2b_documents. Procesul PHP trebuie să le poată crea și scrie. Lipsa acestor permisiuni se manifestă prin eroare la generarea documentului sau PDF-ului.

După finalizarea implementării în producție, dezactivează maintenance:

bin/magento maintenance:disable

3. Configurarea structurii magazinului B2B

3.1. Website și store view

Suite funcționează la nivel de website, nu global. Poți opera B2C și B2B în aceeași instalare Magento, însă B2B ar trebui să funcționeze într-un website separat sau într-un website de vânzare către companii ales în mod conștient.

  1. În Stores > Settings > All Stores creează sau selectează website-ul B2B, store-ul și store view-ul acestuia.
  2. Reține website_id — este folosit de companii, prețuri, documente, API și integrări.
  3. În Content > Design > Configuration atribuie tema frontend/Kowal/b2b doar store view-ului B2B.
  4. Verifică dacă monedele active, taxele, metodele de livrare și metodele de plată sunt configurate pentru același scope.

Nu atribui tema B2B unui store view B2C dacă nu vrei să îi schimbi stratul de prezentare. Simpla instalare a modulelor nu activează logica B2B pentru toate website-urile.

3.2. Activarea B2B

  1. Deschide Stores > Configuration > Kowal > B2B.
  2. În selectorul de scope alege Website-ul corespunzător.
  3. În secțiunea General setează Enable B2B la Yes.
  4. Pe durata implementării poți activa Debug Mode; dezactivează-l după teste.
  5. În scope Default Config setează perioada de retenție a logurilor.
  6. Salvează configurația și curăță cache-ul.

După activare, toate store view-urile care aparțin acelui website sunt tratate ca B2B. O companie fără o relație activă cu acest website nu va obține acces la el.

3.3. Datele vânzătorului

Completează datele companiei vânzătoare în Stores > Configuration > General > Store Information: nume, adresă, telefon și cod fiscal. Sunt folosite în documente și în PDF RFQ. Completează și adresa generală de e-mail a expeditorului în configurarea Sales Emails și logo-ul de e-mail, dacă trebuie să apară în PDF.

4. Configurarea primului client B2B

Folosește ordinea de mai jos pentru fiecare companie. Ajută la evitarea situației în care clientul are cont, dar nu vede oferta sau nu poate trece prin checkout.

4.1. Companie, persoane și adrese

  1. Deschide B2B > Companies și creează compania.
  2. Introdu numele, codul fiscal, identificatorul extern (dacă firma este sincronizată cu ERP), statusul Active și atribuirea la website-ul B2B.
  3. Adaugă utilizatorul companiei sau atribuie un client Magento existent. Acordă-i rolul potrivit și activează atribuirea.
  4. În B2B > Company Addresses adaugă adresele companiei; marchează adresa implicită de facturare și de livrare pentru website-ul B2B.
  5. În B2B > Company Contacts adaugă un contact principal activ, cu e-mail și telefon.

Adresa de facturare și contactul principal sunt folosite și în PDF RFQ. Lipsa datelor nu blochează PDF-ul, dar documentul va fi mai puțin complet.

4.2. Roluri de companie

Acordă utilizatorilor doar permisiunile necesare. O împărțire tipică este:

RolExemple de sarcini
Administrator companieutilizatori, roluri, adrese, documente și istoricul companiei
Cumpărătorcatalog, comandă rapidă, coș, RFQ și comenzi
Aprobatordecizii în workflow-ul de aprobare
Contabilitatedocumente și informații de decontare

Testează contul fiecărui tip, mai ales permisiunea de plasare a comenzilor și de aprobare. Nu folosi un singur cont comun pentru întreaga companie.

5. Oferta, prețuri și checkout

5.1. Catalog și prețuri

  1. Asigură-te că produsele Magento sunt atribuite website-ului B2B, sunt active și au date MSI corecte.
  2. Configurează listele de prețuri sau prețurile contractuale pentru companie în zona B2B > Pricing (Price Lists, Price List Assignments sau Contract Prices).
  3. Configurează regulile de vizibilitate a catalogului pentru companie conform modelului de permisiuni implementat, apoi verifică vizibilitatea în contul clientului.
  4. Testează în contul companiei: căutarea SKU, vizibilitatea produsului și prețul pentru cantitatea 1 și pentru pragul cantitativ.

Prețul B2B depinde de companie, website, monedă și cantitate. Un produs vizibil în B2C nu trebuie neapărat să fie disponibil pentru clientul B2B.

5.2. Livrare și plată

  1. Activează metodele necesare de livrare și plată în configurarea standard Magento pentru B2B store view.
  2. În B2B > Checkout adaugă reguli pentru metodele disponibile pentru companie/website, dacă vrei să limitezi opțiunile.
  3. Efectuează un test de coș pe adresele implicite ale companiei.

Dacă crearea comenzii din RFQ trebuie să funcționeze automat din partea administratorului, compania trebuie să aibă adrese implicite clare, metodă activă de plată și de livrare. În caz contrar, Suite va încărca datele în Backend Order Create nativ, unde administratorul completează elementele lipsă.

5.3. Limite și aprobări

Aceste funcții sunt opționale, dar ar trebui configurate înainte de a fi activate pentru clienți.

  1. În B2B > Credit > Payment Terms adaugă termenele de plată.
  2. În B2B > Credit > Credit Limits atribuie companiei limita, moneda, statusul și termenul de plată.
  3. În B2B > Approvals > Rules creează regula pragului valoric pentru companie și website.
  4. În B2B > Approvals > Approvers atribuie persoanele aprobatoare.
  5. Testează coșul sub și peste prag și verifică dacă decizia aprobatorului schimbă procesul ulterior.

6. Documente, PDF și RFQ

6.1. Documente Magento

În Stores > Configuration > Kowal > B2B > Documents alege sursa documentelor și decide ce documente trebuie generate automat: confirmări de comandă, facturi, avize de livrare și corecții. Setează și statusul țintă al documentului.

În B2B > Documents > PDF Templates:

  1. verifică șablonul activ pentru fiecare tip și website;
  2. fă previzualizarea;
  3. adaptează HTML/CSS doar dacă ai o persoană care cunoaște șabloanele Magento și CSS mPDF;
  4. generează o factură sau o confirmare de test și verifică descărcarea din contul companiei.

6.2. RFQ și ofertă PDF

  1. În B2B > Quotes > RFQ creează un RFQ de test pentru o companie și un utilizator activ.
  2. Adaugă SKU vizibile pentru companie, cantitatea și prețul ofertat.
  3. Setează termenul de valabilitate, trimite oferta clientului și generează PDF.
  4. Verifică varianta pentru client: datele vânzătorului/cumpărătorului, pozițiile, prețul, totalul și termenul de valabilitate.
  5. Verifică varianta administratorului: suplimentar notele comerciale, comentariile, istoricul și informațiile interne despre poziții.

PDF-ul clientului nu poate conține notele agentului de vânzări sau istoricul intern al statusurilor.

7. Comenzi rapide, importuri și integrări

Comenzi rapide

În B2B > Quick Order > Debug SKU verifică lista SKU,qty pentru companie, website și monedă. Apoi creează o listă de cumpărături și testează utilizarea ei de către client pe storefront.

Import și export

În B2B > Import/Export definește profilul numai după stabilirea sursei de date. Configurarea profilului este un obiect JSON și trebuie să conțină căi de fișiere disponibile pe serverul Magento. Mai întâi rulează importul în modul de test și analizează jobul și logurile.

Integrări API

Înainte de a crea tokenul de integrare, stabilește domeniul datelor și proprietarul sincronizării. Folosește o integrare Magento separată pentru fiecare ERP, PIM, WMS sau middleware și acordă-i doar ACL B2B necesare. Lista completă de endpointuri, tokenuri și reguli de securitate se află în documentația API pentru integratori.

8. Checklist de recepție

Înainte de lansarea în producție confirmă:

  • Modulele Kowal sunt active, cron funcționează, iar cache-ul și indecșii sunt corecți.
  • B2B este activat exclusiv pentru website-ul corect.
  • Tema B2B este atribuită exclusiv store view-ului B2B.
  • Compania de test are status Active, utilizator, rol, contact și adrese implicite.
  • Produsul de test este activ, atribuit website-ului, vizibil pentru companie și are preț B2B corect.
  • Clientul se poate autentifica, poate căuta SKU, poate folosi quick order și poate adăuga produsul în coș.
  • Checkout-ul afișează doar metodele de livrare și plată permise.
  • Limita și regula de aprobare funcționează conform politicii companiei, dacă aceste funcții sunt folosite.
  • Documentul și PDF RFQ se generează și sunt disponibile exclusiv pentru compania corectă.
  • RFQ poate fi trimis, acceptat și transmis către procesul de creare a comenzii.
  • Integrările au tokenuri separate și ACL limitate, dacă sunt folosite.

9. Cele mai frecvente probleme

SimptomCe trebuie verificat
Nu există meniul B2Bsetup:upgrade, statusul modulelor, cache-ul și ACL-ul administratorului.
Compania sau clientul nu vede B2BDacă B2B este activ pentru website-ul corect și dacă firma are o relație activă cu acest website.
Produsul nu este vizibil sau nu are prețAtribuirea produsului la website, activitatea SKU, datele MSI, regulile de catalog, prețul companiei, moneda și cantitatea.
Lipsește metoda de livrare sau de platăConfigurarea standard Magento, scope-ul B2B store view și regulile B2B Checkout.
PDF-ul nu se creeazăȘablon PDF activ, pachetul mPDF, permisiuni pentru var/, datele vânzătorului și logurile Magento.
RFQ nu creează comanda automatAdresele implicite ale companiei, plată și livrare clare; în celelalte cazuri folosește Backend Order Create.
API returnează 403Tokenul integrării nu are ACL necesar; nu folosi tokenul administratorului într-o aplicație externă.

La raportarea către suport, furnizează versiunea Magento, versiunea pachetului, pașii de reproducere, ora evenimentului, loguri anonimizate în siguranță și eventualul trace_id. Nu trimite tokenuri sau parole.

10. Actualizarea pachetului

  1. Consultă informațiile despre versiune transmise de Kowal.
  2. Execută actualizarea mai întâi pe mediul de testare.
  3. Fă backup, composer update kowal/metapackage-b2b-suite --with-all-dependencies, bin/magento setup:upgrade, iar în producție și compilarea DI și deployment-ul resurselor statice.
  4. Repetă checklist-ul de recepție, cu accent special pe prețuri, checkout, documente și integrări.

Nu actualiza pachetul prin copiere manuală de fișiere în app/code; acest lucru provoacă probleme cu Composer și îngreunează suportul ulterior.

Apăsați pentru a sări peste carusel

Am găsit alte produse care v-ar putea plăcea!

Magento 2 BaseLinker Stock Export - synchronizacja stanów magazynowych z ERP i Magento do BaseLinker
30,75 EUR
Kowal Analytics pentru Magento 2
30,75 EUR
Scrie o recenzie
Spune-ne parerea ta despre acest produs Sistem B2B profesional pentru Magento 2 Open Source
Rating-ul dumneavoastră:
Preț
Calitate
Asistență
loader
Încărcare...

Ați trimis o recenzie pentru verificare.

Întrebări și răspunsuri

Question
Czy Kowal B2B Suite działa z Magento 2 Open Source?
Answer
Tak. Kowal B2B Suite jest przeznaczony do rozbudowy Magento 2 Open Source o funkcje sprzedaży B2B, dzięki czemu wiele procesów typowych dla handlu hurtowego i kontraktowego można wdrożyć bez przechodzenia na Adobe Commerce.
Question
Czy każdy klient B2B może mieć własne ceny i katalog produktów?
Answer
Tak. System pozwala odwzorować indywidualne warunki handlowe kontrahentów, w tym ceny, katalogi, progi ilościowe i zasady zakupowe. Zakres konfiguracji jest dopasowywany do modelu sprzedaży firmy.
Question
Czy jedna firma może mieć wielu użytkowników z różnymi uprawnieniami?
Answer
Tak. W ramach jednego kontrahenta można obsługiwać wielu użytkowników i różne role zakupowe. Pozwala to rozdzielić między innymi składanie zamówień, ich akceptację oraz dostęp do danych i dokumentów.
Question
Czy system B2B można zintegrować z ERP, PIM, WMS lub CRM?
Answer
Tak. Kowal B2B Suite może wymieniać dane z zewnętrznymi systemami, między innymi ERP, PIM, WMS i CRM. Integracja może obejmować produkty, ceny, klientów, zamówienia, dokumenty, statusy oraz inne dane wymagane przez konkretny proces biznesowy.
Question
Czy wdrożenie platformy B2B można realizować etapami?
Answer
Tak. Wdrożenie może rozpocząć się od podstawowych funkcji, takich jak firmy, użytkownicy, ceny i katalogi, a następnie zostać rozszerzone o szybkie zamówienia, RFQ, limity kupieckie, akceptacje, dokumenty oraz integracje.
Modifică preferințele pentru cookie-uri