Customer Consignment: Fill-Up (631), Issue (633) and Pick-Up (632)
Stock is placed at the customer's site but stays yours. The fill-up (631) moves it to consignment stock at customer without any value posting or invoice. Only when the customer reports a withdrawal does the issue (633) post cost of goods sold and trigger billing. Unsold stock can come back with a pick-up (632).
Educational content. SAP behaviour varies by configuration and release. Spotted something off? Report it.
Digital twin
01Consignment fill-up order
Order 10001100 (type KB) sends 100 EA to Demo Retail — with a net value of ₹0.
Order type KB
VA01 — Consignment Fill-Up
- Material
- FG-2000
- Quantity
- 100 EA
- Item category
- KBN
- Net value
- ₹0
Business scenario
Demo Manufacturing places 100 EA of FG-2000 at Demo Retail Pvt. Ltd. so they can sell from stock on hand. Demo Retail reports 60 EA consumed and is invoiced for those only; the remaining 40 EA are still Demo Manufacturing's inventory, sitting in the customer's warehouse.
All companies, numbers and documents are fictional demo data.
Step-by-step flow
- 01
Consignment fill-up order open in twin
Order 10001100 (type KB) sends 100 EA to Demo Retail — with a net value of ₹0.
Item category KBN is not billing relevant, because ownership is not changing. The customer is being given stock to sell from, not stock they have bought.
- 02
Delivery and loading open in twin
Delivery 80001100 is created, picked and loaded for the customer's site.
Physically identical to a normal sale; what differs is the movement type the item category will post at goods issue.
- 03
Fill-up goods issue (631) open in twin
Unrestricted: 300 → 200 EA. Consignment at customer: 0 → 100 EA. No accounting document.
This is a transfer, not a sale. The goods are still your asset, so there is no cost of goods sold, no revenue, and typically no accounting document at all.
- 04
Goods arrive at the customer open in twin
The 100 EA now sit in Demo Retail's warehouse — on your balance sheet.
The commercial attraction for the customer is stock without working capital; for you it is shelf space and faster sales, at the cost of financing the inventory.
- 05
Customer reports 60 EA consumed open in twin
Demo Retail confirms they have used or sold 60 EA. That is the billable event.
Nothing in SAP knows the customer consumed anything until they tell you. The accuracy of the whole process depends on that reporting, which is why consignment needs reconciliation discipline.
- 06
Consignment issue order open in twin
Order 10001200 (type KE) records the withdrawal of 60 EA at ₹2,000 each.
Item category KEN is billing relevant, so this document is what turns consignment stock into a sale.
- 07
Consignment issue goods movement (633) open in twin
Consignment at customer: 100 → 40 EA. Now cost of goods sold is finally charged.
Ownership transfers at withdrawal, not at delivery. This is the moment that, commercially and in accounting, a sale actually happens.
- 08
Invoice the withdrawal open in twin
Invoice 90001300 bills 60 EA — ₹1,20,000. The 40 EA still at the customer are not billed.
This is the commercial promise of consignment: the customer pays for what they use, when they use it.
- 09
40 EA are still at the customer open in twin
The remaining 40 EA are unsold and still your inventory. Decide what to do with them.
Either way it remains your asset in the meantime, which is the financial cost of the consignment model.
- 10
Consignment pick-up (632) open in twin
Consignment at customer: 40 → 0. Unrestricted: 200 → 240 EA.
Nothing was ever sold, so nothing is billed and nothing is credited. It is a transfer back, the exact mirror of the 631 fill-up.
- 11
Consignment cycle complete open in twin
Fill-up 631 (no value) → withdrawal → issue 633 (cost) → invoice. 40 EA still yours at the customer.
The split between 631 and 633 is what separates physical location from ownership. Stock can be at a customer for months before any of it becomes a sale.
SAP documents
Stock impact
| Step | Plant / SLoc | Stock type | MvT | Change |
|---|---|---|---|---|
| Fill-up goods issue (631) | 1000 / 0001 | Unrestricted use | 631 | −100 EA |
| Fill-up goods issue (631) | 1000 / 0001 | Customer consignment (W) · 200001 | 631 | +100 EA |
| Consignment issue goods movement (633) | 1000 / 0001 | Customer consignment (W) · 200001 | 633 | −60 EA |
| Consignment pick-up (632) | 1000 / 0001 | Customer consignment (W) · 200001 | 632 | −40 EA |
| Consignment pick-up (632) | 1000 / 0001 | Unrestricted use | 632 | +40 EA |
Accounting impact
Consignment issue — customer has consumed the goods
TypicalConsignment issue goods movement (633)
- Dr Cost of goods sold (GBB/VAX)₹72,000
- Cr Inventory — finished goods (consignment at customer) (BSX)₹72,000
This is the real goods issue of the consignment process. The inventory value of the withdrawn quantity leaves your books and becomes cost of goods sold. Accounts come from automatic account determination, as for any sales goods issue.
Customer invoice for consigned goods withdrawn
TypicalInvoice the withdrawal
- Dr Customer receivable (trade debtor)₹1,20,000
- Cr Revenue — domestic sales (ERL)₹1,20,000
Only the withdrawn quantity is invoiced. Revenue account determination works exactly as in a standard sale; the difference is purely which quantity becomes billable and when.
Typical conceptual flow. Actual G/L accounts and posting behaviour depend on material valuation, automatic account determination and system configuration.
Movement type
- 631GI consignment fill-up (own stock → consignment at customer)Reversal: 632
- 632GR consignment pick-up (consignment at customer → own stock)
- 633GI consignment issue (customer withdrawal, billable)Reversal: 634
- 634GR consignment returns (customer returns goods already invoiced)
Places your stock at a customer's premises so they can sell or consume from it immediately, while ownership — and the invoice — only transfers when they actually withdraw it.
Transactions & Fiori apps
- VA01 — Create Consignment Order (KB fill-up, KE issue, KA pick-up, KR returns)
- VL01N — Create Delivery for the consignment order
- VL02N — Post Goods Issue / Receipt
- VF01 — Create Billing Document (issue only)
- MMBE — Stock Overview — shows special stock W per customer
- Create Sales OrdersAvailability depends on release and scope
- Stock — Single MaterialShows consignment stock at customer as special stock
Differences by SAP version
Classic consignment with the KB/KE/KA/KR order types and MSKU special stock.
Unchanged in principle. Special stock reporting is available through Fiori stock apps as well as MMBE.
Supported as a standard scope item through Fiori apps; the four-order-type logic and movement types are the same.
Configuration
Four order types, one process
TypicalKB fill-up, KE issue, KA pick-up, KR returns. Choosing the wrong one is the single most common consignment error, because they look almost identical on screen.
Billing relevance per item category
Configuration dependentKBN (fill-up) is not billing relevant; KEN (issue) is. This is what makes the customer pay only for withdrawals.
Valuation of consignment stock at customer
Configuration dependentTypically remains valuated as your own stock at the material's price, so the fill-up posts no accounting document. Configuration dependent.
Availability check against consignment stock
Configuration dependentWhether the issue order checks the consignment stock the customer actually holds depends on the schedule line category's availability check setting.
Physical inventory at customer sites
Configuration dependentConsignment stock at a customer is still your stock and must be counted. How that count is organised is an operational and configuration decision.
Prerequisites
- Consignment order types configured: KB (fill-up), KE (issue), KA (pick-up), KR (returns)
- Item categories KBN (not billing relevant) and KEN (billing relevant) determined correctly
- Movement types 631/632/633/634 assigned on the delivery item categories
- Pricing condition records so the issue order can price the withdrawal
- A process for the customer to report withdrawals, and a reconciliation routine
Master data
- Customer / business partner
- Consignment stock is tracked per customer; the customer number is the special stock key.
- Material master
- Sales views allow the consignment orders; valuation supplies the value that moves at the 633 issue.
- Pricing condition records
- Price the withdrawal. The fill-up is deliberately unpriced.
Organizational structure
- Company code 1000
- Sales organization 1000, distribution channel 10, division 00
- Plant 1000, storage location 0001 — the stock stays assigned here even while physically at the customer
Tables
| Table | Description |
|---|---|
| MSKU | Special stock with customer — the consignment stock balance per customer and material |
| VBAK / VBAP | Consignment order header / item, with the KB/KE/KA/KR document types |
| LIKP / LIPS | Delivery header / item for each consignment step |
| VBRK / VBRP | Billing document for the consignment issue |
| MATDOC | The 631/632/633 movements (MKPF / MSEG in ECC) |
Integration
- MMSpecial stock W is managed by inventory management and must be included in physical inventory.
- FINo posting at fill-up; cost of goods sold at the issue; receivable and revenue from the invoice.
- COMargin is recognised only on withdrawn quantities, so profitability reflects actual consumption, not shipments.
Common errors
“Customer was invoiced for the fill-up”
Likely causes: Item category KEN used instead of KBN; Wrong order type (KE instead of KB)
Where to look: Order type and item category on the fill-up order · Item category determination
“Consignment issue cannot be posted”
Likely causes: Not enough consignment stock at that customer; Fill-up goods issue never posted; Issue posted against the wrong customer
Where to look: MSKU / MMBE special stock per customer · Fill-up delivery goods issue status
“Inventory value includes stock nobody can find”
Likely causes: Consignment stock sitting at customer sites, correctly still on your balance sheet; Withdrawals not reported by the customer
Where to look: MSKU balances per customer · Consignment reconciliation and customer-site counts
“Pick-up triggered a credit memo”
Likely causes: Consignment returns (KR) used instead of pick-up (KA)
Where to look: Order type used · Item category billing relevance
Troubleshooting
Something went wrong? Work through these checks in order. They are diagnostic questions, not configuration instructions — confirm changes with your system owner.
CHECK 1
Wrong document type used
- Is this a fill-up (KB), issue (KE), pick-up (KA) or return (KR)?
- Does the item category match the intent — KBN not billing relevant, KEN billing relevant?
CHECK 2
Issue will not post
- How much consignment stock does this customer actually hold (MSKU)?
- Was the fill-up goods issue posted?
- Is the issue against the right customer?
CHECK 3
Stock reconciliation
- Compare MSKU balances with the customer's own count
- Are withdrawals being reported on time?
- Is consignment stock included in physical inventory planning?
CHECK 4
Accounting questions
- Confirm no accounting document is expected at fill-up
- Check GBB/VAX account determination for the 633 issue
- Check VKOA for the invoice
Interview questions
Walk through customer consignment and say exactly where ownership and revenue change hands.
A fill-up order (KB) and delivery post movement 631, moving stock from your unrestricted stock to consignment stock at the customer — special stock W. Nothing is invoiced and typically no accounting document is created, because the goods are still yours. When the customer reports a withdrawal, an issue order (KE) and delivery post movement 633, which reduces the consignment stock and posts cost of goods sold; that document is billing relevant, so the invoice follows. Ownership and revenue both transfer at the withdrawal, not at the delivery.
Who owns consignment stock sitting at a customer, and what are the practical consequences?
You do. It is your valuated inventory, tracked per customer in MSKU and visible as special stock W. Practically: it stays on your balance sheet, it must be included in your physical inventory, it ties up working capital, and you depend on the customer reporting withdrawals accurately. That reporting dependency is the main operational risk of the model.
What is the difference between a consignment pick-up and a consignment return?
A pick-up (order type KA, movement 632) brings back goods the customer never withdrew and was never invoiced for — a transfer back into your own stock, with no billing effect. A consignment return (order type KR, movement 634) brings back goods the customer already withdrew and was invoiced for, so it also generates a credit memo. Choosing the wrong one either credits a customer who never paid or fails to credit one who did.
Why does movement 631 typically post no accounting document?
Because it is a transfer between two of your own stock categories, not a sale. The goods move from unrestricted stock to consignment stock at the customer, both valuated as your inventory at the same price, so there is no value change to post. The accounting document comes later, at the 633 issue.
How is customer consignment different from vendor consignment?
They are mirror images. In vendor consignment the supplier's stock sits in your plant as special stock K; you own nothing until you withdraw it, and the withdrawal creates a liability to the vendor. In customer consignment your stock sits at the customer as special stock W; they own nothing until they withdraw it, and the withdrawal creates a receivable from them.
Quiz
References
- SAP SE — SAP Help Portal: Consignment Processing in Sales and Distribution (source)
- SAP SE — SAP Help Portal: Special Stocks (source)
- SAP SE — SAP Help Portal: Consignment Fill-Up and Issue (source)
Explanations are original. They summarize standard behaviour; always validate against your system's release and configuration.
Version history
| Version | Change |
|---|---|
| 1.0.0 | Initial version. |