[{"data":1,"prerenderedAt":438},["ShallowReactive",2],{"/docs/jobs/mechanicjob/features/advanced-billing":3,"/docs/jobs/mechanicjob/features/advanced-billing-surround":427,"/docs/jobs/mechanicjob/features/advanced-billing-implemented-suggestions":437},{"id":4,"title":5,"body":6,"description":417,"extension":418,"head":419,"implementedSuggestions":419,"meta":420,"navigation":421,"path":422,"schemaOrg":419,"seo":423,"sitemap":424,"stem":425,"__hash__":426},"docs/1.docs/0.jobs/2.mechanicjob/3.features/11.advanced-billing.md","Advanced Billing",{"type":7,"value":8,"toc":404},"minimark",[9,13,41,46,49,85,88,92,98,105,124,130,134,137,154,165,169,172,265,271,286,290,300,311,315,322,342,345,349,373,377],[10,11,12],"p",{},"Advanced Billing turns the mechanic tablet into a complete workshop invoicing workflow. Mechanics can invoice completed vehicle work or create their own invoice for a nearby customer without connecting a vehicle.",[10,14,15,16,20,21,20,25,28,29,32,33,36,37,40],{},"Configure the feature per mechanic job under ",[17,18,19],"code",{},"/jobconfig"," → ",[22,23,24],"strong",{},"Mechanic Jobs",[22,26,27],{},"Billing",". The shipped defaults are available in each job's ",[17,30,31],{},"billingSettings"," block in ",[17,34,35],{},"Config.Jobs","; ",[17,38,39],{},"Config.Billing"," remains the fallback when no per-job value is available.",[42,43,45],"h2",{"id":44},"estimates-and-invoices","Estimates and invoices",[10,47,48],{},"Mechanics can choose between two document types:",[50,51,52,65],"table",{},[53,54,55],"thead",{},[56,57,58,62],"tr",{},[59,60,61],"th",{},"Type",[59,63,64],{},"Behavior",[66,67,68,77],"tbody",{},[56,69,70,74],{},[71,72,73],"td",{},"Estimate",[71,75,76],{},"Sent to the customer for acceptance or rejection and expires after the configured lifetime",[56,78,79,82],{},[71,80,81],{},"Invoice",[71,83,84],{},"Immediately payable and assigned the configured due date",[10,86,87],{},"When a customer accepts an estimate, it becomes an invoice, receives its deposit requirement, and starts a new payment term. Declined, expired, or cancelled documents retain their accounting positions without permanently blocking the related workshop work from being invoiced again.",[42,89,91],{"id":90},"deposits-and-partial-payments","Deposits and partial payments",[10,93,94,97],{},[17,95,96],{},"depositPercent"," defines the required first payment. The server prevents a smaller first payment from bypassing that deposit.",[10,99,100,101,104],{},"When ",[17,102,103],{},"allowPartialPayments"," is enabled, customers can make multiple cash or card payments. Every successful payment is stored separately with its amount, payment method, payer, and timestamp. The invoice tracks:",[106,107,108,112,115,118,121],"ul",{},[109,110,111],"li",{},"Total amount",[109,113,114],{},"Amount paid",[109,116,117],{},"Required and remaining deposit",[109,119,120],{},"Outstanding balance",[109,122,123],{},"Final payment status",[10,125,126,129],{},[17,127,128],{},"minimumPartialPayment"," prevents meaningless small installments while still allowing a smaller final balance or exact remaining deposit.",[42,131,133],{"id":132},"detailed-and-custom-invoice-positions","Detailed and custom invoice positions",[10,135,136],{},"Invoices can combine existing unbilled maintenance work, configured custom positions, and mechanic-created positions. An own position contains:",[106,138,139,142,145,148,151],{},[109,140,141],{},"Label",[109,143,144],{},"Category",[109,146,147],{},"Cost type such as part, labor, service, or fee",[109,149,150],{},"Quantity",[109,152,153],{},"Unit price",[10,155,156,157,160,161,164],{},"Set ",[17,158,159],{},"allowManualItems"," and ",[17,162,163],{},"maximumManualItems"," to control whether mechanics may create these positions and how many they may add. A manually selected nearby customer allows a complete invoice to be created without a connected vehicle.",[42,166,168],{"id":167},"limits-and-grade-permissions","Limits and grade permissions",[10,170,171],{},"Global billing settings define the basic boundaries:",[50,173,174,184],{},[53,175,176],{},[56,177,178,181],{},[59,179,180],{},"Setting",[59,182,183],{},"Purpose",[66,185,186,196,206,216,226,236,246,255],{},[56,187,188,193],{},[71,189,190],{},[17,191,192],{},"minimumInvoiceAmount",[71,194,195],{},"Smallest permitted document total",[56,197,198,203],{},[71,199,200],{},[17,201,202],{},"maximumInvoiceAmount",[71,204,205],{},"Global document ceiling",[56,207,208,213],{},[71,209,210],{},[17,211,212],{},"maxDiscountPercent",[71,214,215],{},"Global discount ceiling",[56,217,218,223],{},[71,219,220],{},[17,221,222],{},"taxPercent",[71,224,225],{},"Tax applied after the discount",[56,227,228,233],{},[71,229,230],{},[17,231,232],{},"allowImmediatePayment",[71,234,235],{},"Enables direct invoice payment",[56,237,238,243],{},[71,239,240],{},[17,241,242],{},"allowEstimates",[71,244,245],{},"Enables estimate creation",[56,247,248,252],{},[71,249,250],{},[17,251,103],{},[71,253,254],{},"Enables deposits and installments",[56,256,257,262],{},[71,258,259],{},[17,260,261],{},"allowAnalytics",[71,263,264],{},"Default access to billing reports",[10,266,267,270],{},[17,268,269],{},"gradeRules"," can further restrict each mechanic grade. A rule can set its own invoice and discount maximum and allow or deny estimates, own positions, cancellations, reminders, and accounting analytics.",[10,272,273,274,277,278,281,282,285],{},"The normal ",[17,275,276],{},"CREATE_BILLING",", ",[17,279,280],{},"MANAGE_BILLING",", and ",[17,283,284],{},"CANCEL_BILLING"," job permissions continue to apply. Grade rules narrow those permissions; they do not grant a permission the player does not already have.",[42,287,289],{"id":288},"due-dates-and-reminders","Due dates and reminders",[10,291,292,295,296,299],{},[17,293,294],{},"defaultDueDays"," controls when an invoice becomes overdue. Authorized mechanics can send a reminder only after ",[17,297,298],{},"reminderGraceDays"," have elapsed.",[10,301,302,303,306,307,310],{},"Every reminder can add ",[17,304,305],{},"reminderFee",", is stored on the invoice, and cannot be repeated until the configured grace period has elapsed again. ",[17,308,309],{},"maximumReminders"," limits the complete reminder chain. When the customer is online, the reminder reopens the updated invoice so it can be paid immediately.",[42,312,314],{"id":313},"accounting-and-tablet-analytics","Accounting and tablet analytics",[10,316,317,318,321],{},"The billing ledger stores invoice totals, line categories, tax, discounts, reminder fees, payment state, and every individual payment. Authorized grades can view the configured ",[17,319,320],{},"analyticsPeriodDays"," in the tablet, including:",[106,323,324,327,330,333,336,339],{},[109,325,326],{},"Invoiced revenue",[109,328,329],{},"Paid and outstanding amounts",[109,331,332],{},"Overdue invoice count",[109,334,335],{},"Open estimates",[109,337,338],{},"Discounts, tax, and reminder fees",[109,340,341],{},"Top invoice categories by quantity and revenue",[10,343,344],{},"Advanced Pricing profit analysis remains available separately in the Parts Shop tablet for supplier cost, labor, margin, refunds, and net profit.",[42,346,348],{"id":347},"recommended-rollout","Recommended rollout",[350,351,352,355,358,361,364,367,370],"ol",{},[109,353,354],{},"Configure the billing defaults and grade rules in JobConfig.",[109,356,357],{},"Give the intended grades the billing permissions.",[109,359,360],{},"Create and accept a test estimate.",[109,362,363],{},"Pay the required deposit and complete the balance with a second payment.",[109,365,366],{},"Create an own invoice for a nearby player without a vehicle.",[109,368,369],{},"Test invoice limits, discount limits, expiry, cancellation, overdue status, and reminder spacing.",[109,371,372],{},"Verify the payment ledger and tablet analytics.",[42,374,376],{"id":375},"related-pages","Related pages",[106,378,379,386,392,398],{},[109,380,381],{},[382,383,385],"a",{"href":384},"./advanced-pricing","Advanced Pricing",[109,387,388],{},[382,389,391],{"href":390},"./tuning-and-orders","Tuning and Orders",[109,393,394],{},[382,395,397],{"href":396},"../setup/configuration","Configuration",[109,399,400],{},[382,401,403],{"href":402},"../setup/permissions","Permissions",{"title":405,"searchDepth":406,"depth":407,"links":408},"",1,2,[409,410,411,412,413,414,415,416],{"id":44,"depth":407,"text":45},{"id":90,"depth":407,"text":91},{"id":132,"depth":407,"text":133},{"id":167,"depth":407,"text":168},{"id":288,"depth":407,"text":289},{"id":313,"depth":407,"text":314},{"id":347,"depth":407,"text":348},{"id":375,"depth":407,"text":376},"Configure estimates, deposits, partial payments, detailed invoice positions, limits, due dates, reminders, and workshop accounting.","md",null,{},true,"/docs/jobs/mechanicjob/features/advanced-billing",{"title":5,"description":417},{"loc":422},"1.docs/0.jobs/2.mechanicjob/3.features/11.advanced-billing","BhZKI__MlZM_rh7-cginWIgXoGTV9ZUDEBHEeAnTsF4",[428,432],{"title":385,"path":429,"stem":430,"description":431,"children":-1},"/docs/jobs/mechanicjob/features/advanced-pricing","1.docs/0.jobs/2.mechanicjob/3.features/10.advanced-pricing","Balance Dynasty supplier costs, mechanic margins, labor, discounts, and customer tuning prices across vehicle classes and mechanic grades.",{"title":433,"path":434,"stem":435,"description":436,"children":-1},"Vehicle Systems","/docs/jobs/mechanicjob/features/vehicle-systems","1.docs/0.jobs/2.mechanicjob/3.features/2.vehicle-systems","Configure mileage, diagnostics, wear, vehicle care, wheel damage, history, and electric vehicles.",[],1786289129287]