{"id":33956,"date":"2025-11-26T11:08:53","date_gmt":"2025-11-26T11:08:53","guid":{"rendered":"https:\/\/tenthplanet.in\/odoo\/?p=33956"},"modified":"2026-07-07T06:12:02","modified_gmt":"2026-07-07T06:12:02","slug":"how-to-b2c-invoice-taxwise-sync-with-sap-in-odoo","status":"publish","type":"post","link":"https:\/\/tenthplanet.in\/odoo\/product\/inventory\/how-to-b2c-invoice-taxwise-sync-with-sap-in-odoo\/","title":{"rendered":"How to B2C Invoice Taxwise Sync with SAP in Odoo"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The B2C Invoice Taxwise sync in Odoo helps send retail POS sales to SAP by grouping all orders based on their tax percentages. This ensures that each tax rate, such as 5%, 12%, or 18%, is posted correctly to the matching GL account in SAP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When the sync runs, Odoo sends all tax-wise totals for the selected date, and SAP parks the invoice. After this, Odoo displays whether the sync was successful or if any errors occurred.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"970\" height=\"235\" src=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Config.png\" alt=\"Odoo-B2C-Config\" class=\"wp-image-33959\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Config.png 970w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Config-300x73.png 300w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Config-768x186.png 768w\" sizes=\"auto, (max-width: 970px) 100vw, 970px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>How to Start the Taxwise Sync Process<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before starting the sync, all POS terminals must be closed because the system allows syncing only when every POS session is completed. Only retail B2C orders are included in this process. To start syncing, go to <strong>Point of Sales \u2192 Configuration \u2192 SAP API \u2192 SAP Sync<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When the SAP Sync button is clicked, a pop-up window named SAP Integration opens. In this window, the user must select the <strong>From Date<\/strong>, choose the <strong>Company<\/strong>, and set the <strong>Type<\/strong> as <em>TaxWise<\/em>. Once the POST button is clicked, Odoo starts sending the tax-wise invoice data to SAP and then updates the status so the user can review the result.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"427\" height=\"452\" src=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Nav.png\" alt=\"Odoo B2C Taxinvoice Nav\" class=\"wp-image-33961\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Nav.png 427w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Nav-283x300.png 283w\" sizes=\"auto, (max-width: 427px) 100vw, 427px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Request Details Sent from Odoo to SAP<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">During the sync, Odoo sends a structured request to SAP that contains all the tax-wise B2C invoice data. This request includes the <strong>Company Code<\/strong>, which shows the company handling the order, and the <strong>Fiscal Year<\/strong>, which indicates the year of the transaction. It also contains the <strong>Document Date<\/strong> and <strong>Posting Date<\/strong>, which tell SAP when the transaction happened and when it must be recorded. The <strong>Document Type<\/strong> is shown as <em>I7<\/em>, which identifies the entry as a B2C invoice. The <strong>Business Place<\/strong> field displays the store location code, such as KA29 for Karnataka or TN33 for Tamil Nadu. The <strong>Customer Number<\/strong> identifies the default retail customer used for B2C invoices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The <strong>Customer Amount<\/strong> is the total value of all POS sales combined based on different tax percentages. Inside the request, every tax rate appears as a separate line under <em>NavCustomerInvPark<\/em>. Each line contains the <strong>GL Account<\/strong> of the tax rate, the <strong>Debit or Credit indicator<\/strong>, the <strong>taxable amount<\/strong> grouped by that tax rate, the <strong>Profit Center<\/strong>, the <strong>Tax Code<\/strong>, and the <strong>Item Text<\/strong>, which shows the tax description like \u201c12% GST S\u201d or \u201c18% GST S.\u201d These details help SAP post each tax category properly.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{\n  \"CompanyCode\": \"PRPL\",                 \/\/ SAP Company Code\n  \"FiscalYear\": \"2025\",                  \/\/ Fiscal year for posting\n  \"DocumentDate\": \"2025-06-24T00:00:00\", \/\/ Invoice document date\n  \"PostingDate\": \"2025-06-24T00:00:00\",  \/\/ Date of posting to SAP\n  \"DocumentType\": \"I7\",                  \/\/ Document type for B2C Invoice TaxWise\n  \"BusinessPlace\": \"TN33\",               \/\/ Business location code (used in GST\/invoicing)\n  \"CustomerNumber\": \"400117\",            \/\/ SAP customer ID (B2C customer)\n  \"CustomerAmount\": \"687.94\",            \/\/ Total invoice amount including all applicable tax rates\n\n  \"NavCustomerInvPark\": &#091;                \/\/ Tax-wise line items in the invoice\n    {\n      \"GLAccount\": \"70010809\",           \/\/ GL account code linked to 12% GST\n      \"DebitCreditInd\": \"-\",             \/\/ '-' for credit posting\n      \"GLAmount\": \"464.09\",              \/\/ Taxable amount for 12% GST\n      \"ProfitCenter\": \"134000112\",       \/\/ Profit center (optional, based on org setup)\n      \"TaxCode\": \"O2\",                   \/\/ Tax code representing 12% GST\n      \"ItemText\": \"12% GST S\"            \/\/ Description showing the applicable tax\n    },\n    {\n      \"GLAccount\": \"70010810\",           \/\/ GL account code linked to 18% GST\n      \"DebitCreditInd\": \"-\",             \/\/ '-' for credit posting\n      \"GLAmount\": \"142.49\",              \/\/ Taxable amount for 18% GST\n      \"ProfitCenter\": \"134000112\",       \/\/ Profit center (same as above)\n      \"TaxCode\": \"O3\",                   \/\/ Tax code representing 18% GST\n      \"ItemText\": \"18% GST S\"            \/\/ Description showing the applicable tax\n    }\n  ]\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"381\" height=\"264\" src=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-request.png\" alt=\"Odoo B2C Tax Invoice Request\" class=\"wp-image-33967\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-request.png 381w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-request-300x208.png 300w\" sizes=\"auto, (max-width: 381px) 100vw, 381px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Response Details Returned from SAP<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After SAP processes the request, it sends a response back to Odoo. This response contains the <strong>Document Date<\/strong> and <strong>Business Place<\/strong> again for reference. The <strong>Status<\/strong> field tells whether the document is successfully parked or if there was an error. When the sync works correctly, the status shows <strong>Parked<\/strong>, and the Message field displays a note such as \u201cDocument 6420000060 Successfully Parked.\u201d The <strong>SAPInvoiceNumber<\/strong> also appears, showing the invoice number generated by SAP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If something goes wrong, the Status appears as <strong>Error<\/strong>, and the Message explains the problem, such as missing configuration or incorrect data. When an error occurs, SAP does not generate any invoice number, and the related field remains empty. The <strong>Customer Number<\/strong> in the response helps identify which B2C customer entry the log belongs to. Odoo also records the <strong>Created Date<\/strong>, which shows when the document was added to the SAP API log.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><br><strong>Example for Successfully Parked Response:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{\n  \"DocumentDate\": \"2025-06-24T00:00:00\",      \/\/ Date of the document\n  \"BusinessPlace\": \"TN33\",                    \/\/ Business location code\n  \"Status\": \"Parked\",                         \/\/ Status of the document sync\n  \"Message\": \"Document 6420000060 Successfully Parked\", \/\/ Status message from SAP\n  \"SAPInvoiceNumber\": \"6420000060\",           \/\/ SAP generated invoice number\n  \"CustomerNumber\": \"400117\"                  \/\/ SAP customer ID\n}\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"333\" height=\"215\" src=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Response.png\" alt=\"Odoo B2C Response\" class=\"wp-image-33973\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Response.png 333w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-Response-300x194.png 300w\" sizes=\"auto, (max-width: 333px) 100vw, 333px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Example for Error Response:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{\n  \"DocumentDate\": \"2025-05-18T00:00:00\",  \/\/ Date of the document\n  \"BusinessPlace\": \"TN33\",                \/\/ Business location code\n  \"Status\": \"Error\",                      \/\/ Status indicating sync failure\n  \"Message\": \"Error in document           \/\/ Error message from SAP\n  \"SAPDebitMemoNumber\": null,             \/\/ SAP debit memo number (not generated due to error)\n  \"CustomerNumber\": \"400117\"              \/\/ SAP customer ID\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"380\" height=\"215\" src=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-error-response.png\" alt=\"Odoo-B2C-error response\" class=\"wp-image-33981\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-error-response.png 380w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-error-response-300x170.png 300w\" sizes=\"auto, (max-width: 380px) 100vw, 380px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"210\" src=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-requestresponse-1024x210.png\" alt=\"Odoo B2C request&amp;response.\" class=\"wp-image-33982\" title=\"\" srcset=\"https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-requestresponse-1024x210.png 1024w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-requestresponse-300x62.png 300w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-requestresponse-768x158.png 768w, https:\/\/tenthplanet.in\/odoo\/wp-content\/uploads\/sites\/8\/2025\/11\/Tenthplanet-Odoo-B2C-requestresponse.png 1304w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>The B2C Invoice Taxwise sync in Odoo helps send retail POS sales to SAP by grouping all orders based on [&hellip;]<\/p>\n","protected":false},"author":21,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[635,382],"tags":[624,99,627],"class_list":["post-33956","post","type-post","status-publish","format-standard","hentry","category-integration","category-inventory","tag-b2c-invoice-taxwise-sync-with-sap","tag-inventory","tag-sap-sync"],"acf":[],"_links":{"self":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts\/33956","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/comments?post=33956"}],"version-history":[{"count":1,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts\/33956\/revisions"}],"predecessor-version":[{"id":36986,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/posts\/33956\/revisions\/36986"}],"wp:attachment":[{"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/media?parent=33956"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/categories?post=33956"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tenthplanet.in\/odoo\/wp-json\/wp\/v2\/tags?post=33956"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}