Verticals
Architecture
Supported
Use Cases
Timeline
Why Kinetic manufacturers add Payment Hub, and what changes when they do
Epicor Kinetic, formerly known as Epicor ERP, rebranded as Kinetic in 2021, is the cloud ERP Epicor built specifically for manufacturers. It targets 10+ specific manufacturing verticals (Industrial Machinery, Fabricated Metals, Electronics &. High Tech, Plastics &. Rubber, Automotive, Aerospace &. Defense, Medical Device, Consumer Products, Furniture &, Fixtures, Measuring &. Controlling Devices), runs on a service-based architecture optimized for Microsoft SQL and Azure, and exposes a modern Open REST API for integration. It's a serious manufacturing platform with deep capabilities in CRM, SCM, APS (Advanced Planning &. Scheduling), PLM, MES (Manufacturing Execution System), BPM (Business Process Management), Production Management, and Project Management.
The gap, the same one we see across most enterprise ERPs, is on the payment-acceptance side. Kinetic includes basic credit-card processing through specific Epicor-partnered processors. It works for simple invoice payment, but it doesn't ship the broader payment infrastructure most modern manufacturers want: a customer self-service portal, real-time cash application, multi-invoice consolidation, automatic Level III enrichment, gateway choice across the full B2B / B2G processor landscape, subscription / recurring billing, and order-to-cash patterns built specifically for manufacturing (deposits on production orders, milestone billing on configured-to-order shops, partial-shipment captures as production completes, multi-plant routing for multi-facility operations).
Payment Hub fills this gap through Kinetic's Open REST API, the same modern service-based API Epicor uses internally to build Kinetic. The integration is clean (no Kinetic Functions installed, no BPM directives, no Service Connect customizations). It respects your existing Kinetic customizations and ISV products, and it works equally well on Kinetic Cloud and Kinetic on-premise deployments. What you gain: customer portal, real-time cash application, gateway choice across 19+ processors, Level III interchange optimization, manufacturing-specific order-to-cash patterns, and multi-company / multi-plant routing.
Kinetic's 10+ manufacturing verticals, all served by Payment Hub
Epicor Kinetic targets ten specific manufacturing verticals with industry-tuned templates, processes, and reporting. Payment Hub works across all of them, but the manufacturing-specific patterns that light up vary by vertical based on the typical order cadence, customer mix, and B2B vs B2C balance.
Machinery
Metals
&, High Tech
&, Rubber
&, Defense
Device
Products
&, Fixtures
&, Controlling
Each vertical has a different typical Payment Hub fit. Industrial Machinery, Fabricated Metals, Plastics, and Furniture tend to be configured-to-order or make-to-order shops where deposits at order entry, milestone billing, and partial-shipment captures matter most. Electronics &, High Tech and Medical Device have substantial B2B commercial-card volume where L3 enrichment delivers the highest savings. Automotive and Aerospace &, Defense often run multi-plant operations where per-plant routing across operations is critical. Consumer Products straddles B2B and B2C, both the customer portal (for B2B) and eCommerce-style checkout (for B2C) come into play.
Payment Hub vs native Kinetic payment, honest side-by-side
Kinetic includes basic credit-card processing through specific partnered gateways. It works for simple invoice-payment scenarios. Payment Hub is the gateway-agnostic alternative for manufacturers who need more, gateway choice, manufacturing patterns, and the broader payment-acceptance picture.
| Capability | Native Kinetic Payment | Payment Hub on Kinetic |
|---|---|---|
| Gateway / processor choice | ✗ Limited to Epicor's payment partners | ✓ 19+ gateways (Worldpay, Adyen, Cybersource, Fortis, PayTrace, Stripe, Braintree, Authorize.Net, etc.) |
| Customer self-service portal | ✗ Not a native feature | ✓ Full branded portal, balance, aging, credits, saved methods, autopay, history |
| Real-time cash application | ~ Partial, manual matching common | ✓ Auto-applies every capture to the correct AR Invoice through standard Kinetic posting |
| Level III interchange auto-enrichment | ✗ Not auto-pulled from line items | ✓ Automatic 20+ field enrichment from Kinetic Sales Order / AR Invoice line data, 0.3–1.0% savings |
| Deposits on production orders | ~ Manual deposit handling | ✓ Embedded deposit capture at order entry. Auto-applied at invoice generation |
| Milestone &, partial-shipment captures | ✗ Not natively orchestrated | ✓ Partial captures triggered by Kinetic shipment events, auth-then-capture-at-ship pattern |
| Multi-invoice consolidation | ✗ One invoice at a time | ✓ Customers pay multiple AR Invoices in one transaction, clean per-invoice posting |
| Subscription / recurring billing | ~ Limited recurring-invoice features | ✓ Native recurring + scheduled installments + event-triggered auto-pay, dunning, Account Updater |
| Multi-company / multi-plant routing | ~ Limited per-company gateway choice | ✓ Per-Company / per-Plant MID, gateway, tax, GL routing, automatic per transaction |
| AR collections automation (dunning) | ~ Basic overdue notifications | ✓ Full dunning engine with configurable cadence, pay-links, DSO reduction tracking |
The verdict: Kinetic's native payment is a fine starting point if you have a single-gateway relationship, no need for a customer portal, and your manufacturing flow is straightforward. For most mid-market and enterprise Kinetic manufacturers, the ones running multi-plant operations, configured-to-order workflows, B2B commercial-card volume worth optimizing for L3, or wanting customer self-service, Payment Hub is the right fit.
The Missing LinkBetween Paymentsand Your ERP
Clarity Payment Hub closes that gap, connecting your orders, invoices, and payment channels into one flow.
Speak to a Platform ArchitectHow Clarity Connect integrates Payment Hub with Epicor Kinetic
The integration is built on Kinetic's Open REST API, the modern service-based API stack Epicor uses to build and extend Kinetic. Eight capabilities make up the integration, all using documented REST endpoints with no Kinetic Functions or BPM customizations installed in your environment.
Open REST API integration
Payment Hub reads and writes through Kinetic's standard REST endpoints, Customer, Sales Order (OrderHed / OrderDtl / OrderRel), AR Invoice (ARInvoice / ARInvoiceDtl), Project Invoice, Cash Receipt (CashHead / CashDtl), and Plant entities. Same service architecture Epicor uses internally to build Kinetic. Built-in interactive REST help available for inspection.
Real-time AR cash application
Every capture posts to Kinetic as a Cash Receipt the moment the gateway authorizes, applied to the correct ARInvoice via Kinetic's CashHead / CashDtl process with the right Plant, currency, dimensions, and posting period preserved. No batch import, no manual matching.
Manufacturing-aware order-to-cash
Deposits captured at OrderHed entry post as customer deposits in Kinetic. Auth-only at order with capture-at-ship triggered by OrderRel shipment events. Partial captures fire as production orders complete partial shipments. Project-billing milestones drive captures on configured-to-order shops.
Level III auto-enrichment
On commercial-card transactions, Payment Hub queries Kinetic's ARInvoiceDtl, OrderDtl, or ProjectInvoiceDtl entities for line-item data, Part description, Quantity, UoM, UnitPrice, Tax, Freight, ShipToAddr, and packages the L3 envelope. 0.3–1.0% savings per qualifying B2B / B2G transaction.
Multi-Company / multi-Plant routing
Kinetic's Company and Plant constructs map to Payment Hub's location routing table. Each Company gets its own merchant ID, gateway, currency, and tax setup. Each Plant within a Company can route per-warehouse for inventory and shipment-triggered payment events. Per-transaction routing is automatic.
Tokenized method vault
Customer card and ACH credentials tokenize at the gateway vault, never stored in Kinetic, on Payment Hub servers, or in Kinetic's SQL database. Tokens link to the Kinetic Customer record via standard REST API customer-extension fields. Raw PAN stays out of your environment.
Subscription scheduler + dunning
Native recurring, scheduled, and automated billing runs against Kinetic AR Invoices. Soft-decline retry ladder, hard-decline customer-portal escalation, Account Updater for card-reissue handling, and customer self-service enrollment in autopay all baked in.
Compatible with Functions / BPM / ISVs
Your existing Epicor Functions (low-code business logic), BPM (Business Process Management directives), Service Connect workflows, and Kinetic ISV products coexist with Payment Hub through the same REST API layer. No conflicts, your custom business rules fire as designed when Payment Hub posts.
The integration workflow, production order with deposit to posted cash receipt
A concrete walk-through: an Epicor Kinetic customer (mid-market industrial machinery manufacturer with three plants) takes a $86,400 configured-to-order machinery order with a 30% deposit at order entry, ships in two phases over 8 weeks, and processes balance captures at each shipment. Payment Hub handles the deposit, partial captures, and final cash application, all through Kinetic's Open REST API.
Sales rep enters configured-to-order machine in Kinetic
Inside-sales rep creates Sales Order SO-50421 in Kinetic for ACME Industrial, $86,400 covering a configured CNC machine + installation services + extended warranty, originating from your Cleveland Plant (CLV-01). Customer requests 30% deposit ($25,920) at order entry with balance on delivery. The OrderHed posts to Kinetic. OrderDtl line items detail the configuration.
Kinetic Order Entry Plant CLV-01Rep captures 30% deposit through Payment Hub
Rep clicks "take deposit" in Payment Hub's embedded interface inside the Kinetic Sales Order. Customer keys their Visa Corporate card (commercial BIN, flagged for L3). Payment Hub queries Kinetic's OrderDtl through REST API for line items, customer code, destination ZIP, and tax breakdown, packages the L3 envelope. Gateway captures $25,920 at L3 interchange, saving roughly $275 vs. L1.
Deposit captured L3 enrichedKinetic posts customer deposit through REST API
Clarity Connect writes the deposit to Kinetic, $25,920 customer deposit on customer ACME-4021 against SO-50421, posted to Cleveland Plant cash GL, with the saved tokenized Visa attached to the customer record for future captures. Production planning sees the deposit. APS schedules the production order. Remaining balance ($60,480) is marked pending-on-shipment.
Deposit posted Token saved4 weeks later: first shipment ships
Production completes the CNC machine and installation services. Shipping creates a partial PackSlip. Kinetic's OrderRel reflects the shipment. Payment Hub is notified of the shipment event via REST polling (or webhook where configured). It generates a partial AR Invoice for $48,000 (machine + install). The deposit applies $25,920, remaining $22,080 auto-captures from the saved token at L3 rates.
Partial shipment Auto-captureARInvoice closes, cash receipt posts
Clarity Connect posts to Kinetic, ARInvoice INV-22104 for $48,000 closes ($25,920 from deposit + $22,080 fresh card capture), CashHead/CashDtl records the cash receipt against the Cleveland Plant cash GL, deposit liability decrements, and customer ACME's account balance shows $38,400 remaining on SO-50421 (the extended warranty + final shipment value).
ARInvoice closed Cash posted4 weeks later: extended warranty + final shipment
The remaining components ship. Kinetic generates the final ARInvoice INV-22189 for $38,400. Payment Hub auto-captures $38,400 from the same saved Visa Corporate card with full L3 enrichment. Roughly $440 of additional L3 savings vs. L1 baseline. Kinetic's ARInvoice closes, SO-50421 marks fully shipped &, paid.
Final invoice Order closedCustomer + AR team see the same picture
ACME's AP manager sees the full payment history in the Payment Hub portal, three transactions ($25,920 + $22,080 + $38,400 = $86,400 total), all linked to SO-50421, with the L3 savings of ~$715 visible in their reporting (or hidden from customer view, depending on configuration). Your AR team sees the matching cash-application records in Kinetic with full audit trail.
Portal &, team view Audit trailMonth-end is routine
At month-end, your controller runs Kinetic's standard AR aging, Bank Reconciliation, and Plant-level GL reports. Every Payment Hub transaction is already posted as a Cash Receipt with full audit detail. Every ARInvoice closed has a linked cash receipt. Every Plant's bank account reconciles. L3 savings across the month total in the tens of thousands for a mid-market manufacturer with multi-plant operations.
Month-end routine Zero CSV importsPayment Hub use cases on Epicor Kinetic
All 11 Payment Hub use cases run on Kinetic. Manufacturing-specific patterns get the highest emphasis on Kinetic, given the platform's manufacturing focus. The patterns most-deployed by Kinetic customers are highlighted.
Deposits on production orders, milestone billing on configured-to-order, partial-shipment captures, project-driven manufacturing billing.
Most common B2B Invoice PaymentsPay-link emails, portal, L3-enriched commercial-card acceptance for every Kinetic-generated AR Invoice.
High ROI on Kinetic Level III InterchangeManufacturing's B2B card volume = highest L3 savings opportunity. $15K–$200K+ annually depending on volume.
Customer experience Self-Service Payment PortalBranded customer portal Kinetic doesn't ship natively. Live AR Invoice data, saved methods, autopay, aging.
Multi-plant Multi-Location PaymentsPer-Company / per-Plant MID, gateway, tax, GL routing across Kinetic's multi-Company / multi-Plant structure.
Cash app ERP Payment ReconciliationReal-time CashHead / CashDtl posting through REST API. End the manual cash-application bottleneck.
Service contracts Subscription BillingFor manufacturers with maintenance contracts, parts subscriptions, equipment-as-a-service. Native recurring billing.
Multi-invoice Consolidated Invoice PaymentCustomers pay multiple Kinetic AR Invoices in one transaction. Payment Hub splits clean per-invoice posting.
Aging reduction AR Collections AutomationDunning cadences with direct pay-links. Kinetic's native collection capabilities get much more effective. DSO −5 to −12 days.
Will-call / parts Counter Sales &, RetailFor Kinetic shops with parts counters or will-call windows, certified terminals + Kinetic Customer lookup.
Online orders eCommerce CheckoutClarity eCommerce architecture pairs with Kinetic for B2B storefront checkout with real-time inventory and pricing.
Technical details, for Kinetic admins &, partners
The engineering reality of how Clarity Connect integrates Payment Hub with Epicor Kinetic, for IT teams, Kinetic admins, Functions / BPM developers, and Epicor Partners evaluating the integration.
- API layer. Kinetic's Open REST API, the modern service-based REST stack Epicor uses to build and extend Kinetic itself. Endpoints span Customer, Sales Order (OrderHed / OrderDtl / OrderRel), AR Invoice (ARInvoice / ARInvoiceDtl), Project Invoice, Cash Receipt (CashHead / CashDtl), Plant, Company, Currency, Dimension, and the broader entity catalog. Built-in interactive REST help available for inspection.
- Authentication. OAuth 2.0 (preferred) or API key authentication, depending on Kinetic version and configuration. Kinetic supports modern auth patterns. Clarity Connect supports both for backward compatibility.
- Deployment model. Works with Kinetic Cloud (Epicor-hosted, the increasingly common deployment) and Kinetic on-premise (customer-hosted, partner-hosted via private cloud, or Azure-hosted by the customer). Same REST API exposed in both. For on-premise, Payment Hub uses outbound-only HTTPS, no inbound firewall changes required on your network.
- Version compatibility. Supported on Kinetic 2021.1 onward (the rebranded Open REST API era). Earlier Epicor ERP versions (Epicor 9, 10.x) had different integration patterns. Clarity supports those legacy patterns through bespoke configuration where necessary, but the modern REST API is the recommended path.
- No Kinetic Functions / BPM customizations installed. The integration runs from Clarity's infrastructure. No Functions deployed to your Kinetic environment, no BPM directives modified, no Service Connect workflows altered. Your custom Functions / BPM business logic stays exactly as designed, and fires as expected when Payment Hub's REST calls land.
- Multi-Company / multi-Plant. Native support for Kinetic's Company and Plant constructs. Routing table maps each Company to its merchant ID, gateway, currency, and tax setup. Each Plant within a Company can route per-warehouse for inventory and shipment-triggered events. Multi-currency captures handle Kinetic's exchange-rate framework correctly.
- ISV compatibility. Coexists with common Kinetic ISV products, DataSelf BI, Insight Works (warehousing, shipping, mobile), Stellar Solutions, Epicor's own marketplace apps, and others. Payment Hub uses the same REST API these products use, no conflicts.
- Webhooks where supported. For Kinetic deployments that expose webhooks, Payment Hub subscribes to relevant events (OrderRel shipment, ARInvoice posted, AR aging change). For environments without webhooks, Payment Hub uses periodic REST polling, same operational outcome with slightly higher latency.
- PCI scope. Raw PAN never touches Payment Hub or Kinetic servers, card data tokenizes at the gateway vault via hosted iframe / JS-tokenization. Typical deployment stays in SAQ A / SAQ A-EP scope on both Kinetic Cloud and Kinetic on-prem.
- SOC 2 Type II. Clarity Ventures operates to SOC 2 Type II standards with annual independent audits. Manufacturing-industry compliance requirements (ITAR for Aerospace &. Defense, FDA 21 CFR Part 11 for Medical Device, etc.) accommodated through Kinetic's existing controls layered with Payment Hub's.
- Rate limits. Respects Kinetic's REST API throttling with automatic backoff. For high-volume manufacturers, Clarity tunes request pacing to stay within tenant limits while delivering real-time customer-facing latency.
Epicor Kinetic + Payment Hub FAQ
The questions Kinetic admins, IT teams, finance leaders, and Epicor Partners ask before adding Payment Hub to their Kinetic deployment.
Does Clarity Payment Hub integrate with Epicor Kinetic?
Yes. Clarity Payment Hub integrates with Epicor Kinetic through Kinetic's Open REST API, the modern service-based API stack Epicor uses to build and extend Kinetic itself. Integration uses standard REST endpoints with OAuth 2.0 / API key authentication. Every transaction (invoice payment, order-entry payment, deposit, capture, refund, credit application) posts to Kinetic in real time.
Customer records, sales orders, AR invoices, project invoices, and cash receipt applications stay as the single source of truth in your Kinetic environment. Works with both Kinetic Cloud (Epicor-hosted) and Kinetic on-premise deployments.
How is this different from Kinetic's native payment processing?
Kinetic includes basic credit-card processing through specific Epicor-partnered processors. Payment Hub is gateway- and processor-agnostic, integrates Kinetic with any of 19+ supported gateways (Worldpay, Adyen, Cybersource, Global Payments, Elavon, Fortis, PayTrace, Nuvei, PNC, Stripe, Braintree, Authorize.Net, NMI, USAePay, Square, PayPal, Apple Pay, Google Pay, Amazon Pay) plus ACH / eCheck.
You keep your existing merchant account, your existing processor, and your negotiated interchange rates. Payment Hub also adds capabilities Kinetic's native payment doesn't ship, full customer self-service portal, multi-invoice consolidation, automatic Level III enrichment, subscription billing, and dunning automation.
Which Kinetic modules and verticals does Payment Hub support?
All of them. Payment Hub integrates with Kinetic's Financial Management (GL, AR, AP, cash management), Sales Management (Sales Orders, Quotes, Invoicing), Production Management (job-based and process manufacturing), Project Management, Service Management, Customer Relationship Management, and Supply Chain modules.
The 10+ manufacturing verticals Kinetic targets, Industrial Machinery, Fabricated Metals, Electronics &. High Tech, Plastics &. Rubber, Automotive, Aerospace &. Defense, Medical Device, Consumer Products, Furniture &, Fixtures, Measuring &. Controlling Devices, all light up with manufacturing-specific patterns: deposits on production orders, milestone billing on configured-to-order shops, partial-shipment captures as goods complete, multi-plant routing across operations.
Does Payment Hub handle Kinetic's multi-company / multi-plant structures?
Yes, and this is one of the core reasons manufacturing customers choose Payment Hub. Kinetic's multi-company and multi-plant constructs map directly into Payment Hub's location routing table. Each Kinetic Company can have its own merchant ID, gateway, bank account / cash GL, tax setup, and currency handling. Each Plant within a Company can route per-warehouse for inventory and shipment-triggered payment events.
Production orders originating at any plant route to the correct Kinetic record with proper intercompany posting where applicable. For multi-national manufacturers, multi-currency captures post correctly with Kinetic's exchange-rate handling.
Does Level III interchange optimization work for Kinetic manufacturers?
Yes, and Kinetic customers often have the highest L3 savings opportunity because their B2B commercial-card volume is concentrated in industrial, manufacturing, and distribution-adjacent transactions where Level III qualifies. Payment Hub automatically pulls line-item data from Kinetic's Sales Order, AR Invoice, and Project Invoice records, item description, quantity, unit of measure, unit price, line total, tax breakdown, customer code, destination ZIP, and packages the 20+ required L3 fields for the gateway.
Typical Kinetic-running manufacturer with $5M in annual B2B card volume recovers $15K–$50K in L3 interchange savings annually. Larger multi-plant manufacturers with $20M+ commercial-card volume can recover $100K–$200K+.
Does it require Kinetic Functions or BPM customizations?
No. The integration uses Kinetic's published Open REST API endpoints exclusively. No Kinetic Functions, no BPM (Business Process Management) directives, no Service Connect customizations are required for the baseline integration. Clarity Connect runs from Clarity's infrastructure and reads / writes through documented Kinetic API endpoints.
This matters because Kinetic customers often have substantial Functions / BPM investments for their own business logic, and adding payment integration shouldn't conflict with that. Where you have existing Functions / BPM that affect AR or order-entry behavior, Payment Hub's integration respects those without modification, the API call goes in, your existing business rules fire as designed.
Does Payment Hub work with Kinetic Cloud and Kinetic on-premise?
Both. Kinetic Cloud (Epicor-hosted, the increasingly common deployment) and Kinetic on-premise (customer-hosted, partner-hosted via private cloud, or Azure-hosted) both expose the same Open REST API. Payment Hub connects through standard outbound HTTPS with appropriate authentication.
For on-premise deployments, no inbound firewall ports need to open on your network, the integration uses outbound-only connectivity with certificate-pinned trust. For multi-environment customers running production in cloud and dev/test on-prem (or vice versa), Payment Hub's environment configuration handles the routing.
Can we keep our existing payment gateway and merchant relationship?
Yes. Payment Hub is gateway- and processor-agnostic, you pick whichever of the 19+ supported gateways fits your manufacturing-merchant relationship. Worldpay, Adyen, Cybersource, Global Payments, Elavon, Fortis, PayTrace, Nuvei, PNC, Stripe, Braintree, Authorize.Net, NMI, USAePay, Square, PayPal, Apple Pay, Google Pay, Amazon Pay, plus ACH / eCheck.
Your existing merchant account, your negotiated pricing, your acquirer relationship all carry forward. Multi-plant manufacturers occasionally run different gateways per plant or per legal entity, Payment Hub's routing handles that automatically.
Does it work with our Kinetic ISV products?
Yes. Kinetic's ISV ecosystem includes products like DataSelf (BI / reporting), Insight Works (warehousing, mobile, shipping), Stellar Solutions, Epicor's own marketplace apps, and many others. Payment Hub coexists with all of them through the same Open REST API layer they use.
No conflicts, no overwriting of records, no broken integrations. Where your ISV product handles specific transaction types (e.g., shipping confirmations), Payment Hub respects those events, for example, triggering capture-at-ship when Insight Works confirms a shipment through Kinetic.
What's the implementation timeline for Kinetic?
A typical Payment Hub + Kinetic integration goes live in 48 hours once Clarity receives Kinetic test environment credentials (REST API access with appropriate scopes), gateway credentials, and your baseline routing configuration (which Kinetic Companies / Plants map to which merchant accounts).
For multi-company multi-plant manufacturers, pilot with one Company / one Plant in the first 48 hours, validate against your business rules including any existing Functions / BPM customizations, then add additional Companies and Plants in subsequent batches. Your existing Kinetic license, Functions, BPM, ISV products, and customizations all stay intact.
How does this work alongside Epicor Prophet 21 (P21) for distribution?
Some Epicor customers run both Kinetic (for manufacturing operations) and Prophet 21 / P21 (for distribution operations) in the same business. Payment Hub supports both, separate integration pages and separate technical implementations, but the same Payment Hub-side infrastructure (customer portal, gateway relationships, L3 logic, dunning automation, reporting). For dual-Epicor businesses, Payment Hub's single deployment serves both ERPs simultaneously, with appropriate routing based on which ERP originated each transaction.
If you're running both, talk to us about the unified-deployment pattern, most dual-Epicor customers benefit from a single Payment Hub layer servicing both Kinetic and P21 rather than two separate payment infrastructures.
Who supports the integration, Clarity or our Epicor Partner?
Clarity supports the integration directly. Your Epicor Partner / VAR / CSI continues to support the Kinetic platform itself (Kinetic Cloud release cadence, on-prem upgrades, Functions / BPM customization, training, business-process consulting). Payment Hub's support covers the integration layer, payment acceptance, gateway issues, Clarity Connect, L3 enrichment, customer portal, and anything that touches Payment Hub infrastructure.
Most Epicor Partners are familiar with Clarity Ventures and work collaboratively on deployments. The integration is designed to be partner-friendly, standard Open REST API, OAuth auth, no Functions or BPM customizations installed in your customer's environment, nothing that disrupts the partner's normal Kinetic delivery model.