Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Artificial Intelligence
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

Linking payment to Sales order

Subscribe

Get notified when there's activity on this post

This question has been flagged
accountingbank_statementsales.order
3 Replies
1228 Views
Avatar
Hristo Chankov

Hello everyone,

I am wondering how can solve this case, which I think is very common. Customer is making an order, we are sending him proforma invoice. Customer is paying the proforma invoice, accounting team see that payment is into our bank account /bank account is synchonized with ODOO journals and transactions are fetched there/. 

Question is - how sales person can see that a customer has paid upon proforma invoice and payment is received. Right now, accountant is calling us and telling - Hey, we have received payment upon this SO, please give me an invoice. But - imagine that there are 50 proforma invoices paid per day - we can not call all the time with accountant. There should be easy way to link received payment in Accounting module to Saler order.

Have someone solved this?


Regards

Hristo

0
Avatar
Discard
Hristo Chankov
Author

I don't want to create payment. I just somehow sales person to be notified that payment upon sales order is received. 

Chris TRINGHAM

Using the downpayment invoice for payment is the simplest standard solution in Odoo. If the customer makes payment against the proforma it becomes much more manual.

Codesphere Tech

Hello
You’re right from a business flow perspective - but technically in Odoo, payments cannot be linked directly to a Sale Order, only to an invoice. So this exact behavior is not available out-of-the-box.
It required small customization which link payment to SO reference or ID.
Thanks

Hristo Chankov
Author

Dear Chris,

From my point of view - this is not normal. What I mean - We are using invoicing methos after delivery of the goods. Every day we are sending 10-15 proforma invoices to customers. They are paying and comming on the same day to receive the products. Here are the bottlenecks:

  • Only account has access to bank accounts and can see payment
  • Accountant is not creating invoices
  • There is no reason to create invoice for downpayment, when customer will come in 1-2 hour to receive the good and then will have to receive another invoice
  • Nobody in sales office got notification, that payment is received.


My questions are simple:

  • is there a way, when accountant see in bank account that payment is received upon SOXXXX to link this payment to Sales order? Then, when customer arrives in the office to recieve the products, sales team will see that this SO is already paid. Now - we have to call to accountant everytime to check it.
  • Is there a way above to be automated. For example - if in bank is received payment for 120 EUR upon SO01234 and in ODOO there is SO01234 for 120EUR - this sales order to have a flag or something else - PAID.

Regards,

Hristo

Chris TRINGHAM

Hi Hristo,

It might be possible using Automation Rules (Automated Actions) if there was enough information on the payment to identify the sales order. I don't have any direct experience of that in Odoo, so I can't comment on how difficult it would be.

Avatar
Chris TRINGHAM
Best Answer

The problem is that a Proforma Invoice isn't a financial invoice.  Your customer can make a payment to you but it can't be against the proforma.

If you want the customer to pay before delivery, and to be able to record the payment you need a downpayment invoice.  This is linked to the sales order and amount will be deducted from the "final" invoice (so if 100% is prepaid this invoice has zero outstanding).

Down payment invoice:

You could use Automation Rules (Automated Action in older versions) to alert the salesperson when the customer pays.

0
Avatar
Discard
Avatar
Bloopark systems GmbH & Co. KG, Bloopark systems GmbH & Co. KG
Best Answer

Hello Hristo,

Please go to Settings → Technical → Automation → Automated Actions:
Name:           Notify Salesperson on Payment Received

Model:          Account Payment (account.payment)
Trigger:        When a record is updated
Before Update Filter: state != 'posted'
Filter:         state = 'posted'
Action:         Execute Python code

# Python code for the automated actionfor payment in records:# Find related SO via partner and amount    sale_orders = env['sale.order'].search([('partner_id','=', payment.partner_id.id),('state','in',['sale','done']),('invoice_status','!=','invoiced'),])for so in sale_orders:        so.message_post(            body=f"""
                <p>💰 <strong>Payment Received!</strong></p>
                <p>Amount: <strong>{payment.amount}{payment.currency_id.name}</strong></p>
                <p>Payment Reference: {payment.ref or'N/A'}</p>
                <p>Payment Date: {payment.date}</p>
        
            """,            subject=f'Payment received for {so.name}',            message_type='comment',            subtype_xmlid='mail.mt_note',            partner_ids=[so.user_id.partner_id.id],# notify salesperson)
Hope it helps



-1
Avatar
Discard
Avatar
Zehntech Technologies Inc.
Best Answer

Hello Hristo,

This is a common scenario in Odoo.

By default, payments are linked to Invoices, not directly to Sales Orders, and since a proforma invoice is not an accounting document, Odoo cannot automatically track payment against it.

A practical approach would be:

  • Create a draft invoice from the Sales Order instead of relying only on proforma
  • Once the bank transaction is synced, the accountant can reconcile the payment with the invoice
  • The invoice status will update to “Paid”, which is visible from the Sales Order as well

For your requirement (automatic notification to sales team), you can:

  • Use Activities or automated actions to notify the salesperson when an invoice is marked as paid
  • Or implement a small customization to reflect payment status directly on the Sales Order

Hope this works for you! If you need any help implementing this or want a more optimized approach, feel free to reach out for further discussion

Regards,

Zehntech Technologies Inc.

santosh.sekwadia@zehntech.com

-1
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
bank statement correction
accounting bank_statement
Avatar
Avatar
Avatar
2
May 26
742
No Create Statement on Bank
accounting bank_statement
Avatar
Avatar
Avatar
2
Oct 22
5843
Odoo 13 Community Version: Import Bank statement Solved
accounting bank_statement
Avatar
Avatar
2
Nov 20
9505
New Accounting User Group - Access Rights for Bank Reconciliation Models
accounting reconciliation bank_statement
Avatar
Avatar
1
Sep 25
2428
Set Default Journal not working from Sales Order Solved
accounting sales.order journals
Avatar
Avatar
1
Jun 25
2909
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk Slovenščina Español (América Latina) Español Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now