왓츠앱¶
WhatsApp is an instant messaging and voice-over-IP app that allows users to send messages, make calls, and share content. Businesses can use WhatsApp Business to communicate with their customers by text, send documents, and provide support. This documentation covers the integration of a WhatsApp Business Account (WABA) with Odoo.
경고
WhatsApp is an Odoo Enterprise-only application that does not work in Odoo Community edition. To use the Odoo WhatsApp app, sign up for Odoo Enterprise edition.
Connecting a WhatsApp Business Account (WABA) to an Odoo database enables the following in Odoo’s WhatsApp app:
Send and receive WhatsApp messages directly from an Odoo database.
Create and send pre-approved templates with dynamic placeholders/variables, such as:
Quotations from the Sales app.
Receipts and invoices from the Point of Sale app.
Tickets from the Events app.
더 보기
The WhatsApp integration supports two flows: company-initiated and customer-initiated. A company can start a discussion by sending a template to one or more customers. If the customer answers within 15 days, a Discuss chat window pops up to begin the conversation.
If a customer initiates by sending a message to the company’s public WhatsApp number, Odoo opens a group chat with all operators responsible for the WhatsApp channel.
팁
Consider setting up separate WhatsApp accounts for each department, to better manage communications.
WhatsApp configuration in Meta¶
WhatsApp is operated by Meta, the parent company of Facebook. Odoo’s WhatsApp integration uses a standard API connection configured in Meta:
Create a Meta business account.
Create a Meta developer account.
Set up an app and WhatsApp product in Meta’s developer console.
API 연결을 테스트합니다.
Once the WhatsApp API is connected, Odoo users can send and receive messages through Odoo’s Discuss application.
Meta 비즈니스 계정 만들기¶
중요
In order to create a Meta business account, the user must have a personal Facebook account that has existed for a minimum of one hour prior to setting up the Facebook Business account. Trying to create the business account prior to this time results in an error.
To create a business account with Meta, navigate to Meta Business Suite. Click Create account and then enter the business name, the administrator’s name, and a work email address. Click Next, and confirm the email address in the pop-up window that appears. After confirming, click Done to close the window.
그런 다음, Facebook에서 발송된 이메일 안내에 따라서 비즈니스 계정이 만들어진 것을 확인하고 설정 프로세스를 완료하세요.
중요
If the business account is linked to a personal Facebook account, the administrator must switch between their personal account and the business account for the remainder of the configuration.
To switch to the business account, navigate to the Meta Developer Dashboard and click the account name in the top-right corner. Under Business Accounts, select the business to be configured.
Create a Meta developer app for Odoo¶
On the Meta Developer Dashboard dashboard, sign in with the Meta developer account. If no account is configured yet, link a Facebook account to create a Meta developer account.
참고
A Facebook developer account is different than a Facebook business account. While developer accounts are tied to personal Facebook accounts, business accounts are not as they represent a business and manage all of the business’s assets in Meta, such as apps.
After signing in to the Meta developer account, click My Apps in the top-right corner. This redirects the administrator to all the apps the developer has configured in the specific developer account. Click Create App to configure a new Meta application.
Add app details¶
The first step of the Create an app process is to fill out the App details
section. Enter Odoo in the App name field.
참고
The app name can be changed in the settings afterward.
경고
Trademarks and branded elements may not be used in this text section. This includes the Meta
group of companies. Do not include the word WhatsApp or the system flags this as an error.
Next, enter the developer email address in the App contact email field, then click Next.
Select the app type¶
The next step in app creation is the :Use cases section. Under , select Others, select Others, then click Next. The page redirects to Select an app type.
Select Business. This selection allows for the creation and management of the WhatsApp API. Click Next to configure the app as desired.
Select the business portfolio¶
The last step of the app creation process is to connect a business portfolio.
Under Business portfolio - Optional, click the drop-down menu and select the Meta business account profile. Review the Meta Platform Terms and Developer Policies agreements, then click Create app to accept and create the app.
To accept the agreements and create the app, enter the Facebook account password and click Submit. The browser then redirects to the Meta for Developers dashboard.
경고
If the Meta business account is prohibited from advertising, the app can’t be claimed. To resolve this issue, navigate to Meta Business Suite for assistance.
자세한 내용은 광고 제한에 대한 Meta 문서 를 참조하세요.
WhatsApp 품목을 앱에 추가하기¶
Now that the basic structure of the app has been created, a product needs to be added to the app. Navigate to the Meta Developer Dashboard, and click on the app that is being configured. The page redirects to the app’s dashboard.
Under Add products to your app, go to WhatsApp near the bottom of the page and click Set up.
The browser then redirects to the configuration page for the WhatsApp Business Platform API.
Under Select a Meta Business Account option, select the Meta business to be configured, then click Continue to confirm the selection and agree to Meta’s terms and conditions as linked on the Meta App Dashboard.
Once the WhatsApp product is added to the app, Meta provides a WhatsApp test phone number. This test phone number can send unlimited messages to a maximum of five recipients.
Under Send and receive messages, select the To field and choose Manage phone number list. Add up to five valid WhatsApp number as recipients, then enter the confirmation codes sent to those phone numbers in WhatsApp to verify.
WhatsApp API quickstart¶
Once the Meta accounts and app have been configured, click Continue to proceed to the WhatsApp Quickstart page. This page provides a starting point for configuring the WhatsApp API by adding a phone number and sending an initial test message.
참고
If the browser doesn’t automatically redirect to the WhatsApp Quickstart page,
navigate to the Meta Developer Dashboard and select
the Odoo app.
In the menu on the left-hand side of the page, click the (down chevron) icon next to the WhatsApp section heading. A small menu opens, containing the following options:
Quickstart
APi 설정
환경 설정
빠른 시작 옵션을 클릭한 다음 API 사용 시작 을 클릭합니다.
APi 설정¶
After clicking on Start using the API, the page navigates to the API Setup. Now that the test number has been created, a test message can be sent to confirm that WhatsApp is working properly. Navigate to the Send and receive messages section. Under Step 1 Select phone numbers, click the drop-down menu next to To.
Next, select the only option available: Manage phone number list. Follow the steps and add up to five phone numbers to send the free test messages to. Enter the appropriate country code and phone number, then click Next.
중요
Adding a phone number to send to in this step allows for a successful test to be sent by the terminal. This is critical to ensure the WhatsApp API is working.
On the next page, enter the verification code sent to the phone numbers, and click Next to verify the numbers.
단말기를 통해 테스트 메시지 보내기¶
Once the phone number has been verified, send a test message via the terminal. Under Step 2 Send messages with the API, click Send Message. This should send a test message to the phone numbers that were added.
Upon successfully receiving the message to the numbers, move onto the next section to produce and configure webhooks.
Odoo에서 WhatsApp 설정하기¶
To create a Callback URL and Webhook Verify Token, the phone number, token, app ID, and account ID need to be configured in Odoo; these values are used to set up webhooks, which make it possible to receive messages in the database. The configuration steps in this section are all performed in the Odoo database.
In Odoo, navigate to , then click New to configure the WhatsApp business account in Odoo.
In another browser tab, navigate to Meta Developer Dashboard. Select , and then copy the following values from the Meta developer console into the corresponding fields in Odoo:
이름 |
메타 콘솔 |
Odoo 인터페이스 |
|---|---|---|
전화번호 |
전화번호 ID |
전화번호 ID |
토큰 |
임시 액세스 토큰 |
액세스 토큰 |
앱 ID |
앱 ID |
앱 ID |
계정 ID |
WhatsApp 비즈니스 계정 ID |
계정 ID |
To retrieve the App Secret, navigate to the Meta Developer Dashboard, and select the Odoo app. In the left-hand side menu,
under App settings, select Basic.
Next, click Show next to App secret, and enter the account password. Copy the App secret and then paste it into the App Secret field on the Odoo WhatsApp Business Account configuration dashboard.
To complete the setup of the WhatsApp business account in Odoo, click Test Connection. If the configuration is set correctly, a successful message in green populates the upper-right corner of the dashboard.
Configure webhooks¶
To configure the webhooks for the Odoo WhatsApp app, navigate to the Meta Developer Dashboard, and select the Odoo app. In the left-hand side menu,
click . Go to Step 3: Configure webhooks to
receive messages and click Configure webhooks.
팁
Webhook configuration settings can also be accessed by navigating to the Meta Developer
Dashboard, selecting the Odoo app, and then selecting
Webhooks in the left hand menu.
On the page, click Edit. This is where the Callback URL and Webhook Verify Token values from Odoo are added.
참고
The Callback URL and Webhook Verify Token values are both automatically populated after clicking on Test Connection in the previous step.
In a separate browser window, retrieve the necessary values in Odoo by navigating to and then selecting the account that is being configured. The values are located under Receiving Messages.
Copy and paste the Callback URL from Odoo into the Callback URL field in Meta, then copy and paste the Webhook Verify Token into the Verify Token field on the Meta developer console. Click Verify and save.
Add webhook fields¶
Now that the Odoo database and WhatsApp have been configured to communicate with each other, the next step is to add webhook fields to specify the information that should be sent between the two. To add individual webhook fields in Meta’s developer console, go to the Webhook fields section and click Manage. In the pop-up window that loads, check the boxes in the Subscribe column for the following field names:
account_update
message_template_quality_update
message_template_status_update
messages
template_category_update
선택한 후 완료 를 클릭합니다.
If the Webhooks configuration is successful, the buttons in the Subscribe column should change from Subscribe to Unsubscribe:
중요
Webhook fields only appear once the subscription is confirmed using the Callback URL and Webhook Verify Token.
Add a phone number¶
To configure the business phone number to use for WhatsApp in Odoo, navigate back to the Meta
Developer Dashboard and select the Odoo app. Under
WhatsApp in the left-hand side menu, click API Setup. Go to Step
5: Add a phone number, and click Add phone number.
Enter a Business name and Business website or profile page.
팁
The Business website or profile page field can be a link to a social media page.
Select the country that the company does business in from the Country drop-down menu; a business address is optional. After adding the business location, click Next.
On the next page, fill out the following WhatsApp Business profile details:
WhatsApp 비즈니스 프로필 표시 이름
시간대
카테고리
비즈니스 설명 (선택 사항)
Once these sections are complete, click Next. The page refreshes and then prompts the administrator to Add a phone number for WhatsApp in the respective field. Enter the business phone number to be used with WhatsApp.
Select Text message or Phone call for the phone number verification method, and then click Next to proceed.
The business phone number receives a WhatsApp code through the chosen verification method. Enter the verification code into the Verification code field and click Next to verify the business phone number.
경고
A payment method must be added to proceed. This is part of Meta’s fraud detection system. In order to ensure that the account/company is real, a payment method is required to proceed. See Meta’s documentation on how to add a payment method in Meta Business Suite.
Create a permanent token¶
After configuration and testing are complete, create a permanent token to replace the Temporary token.
Navigate to Meta Business Suite and then go to . Select an existing system user or create a new system user by clicking Add.
To generate a permanent token, assets must be added to the system user. Click Add
assets, and a pop-up window appears. Select Apps under Select asset type,
then select the Odoo app and toggle the permissions to On under the Full
control option, then click Save Changes. Click Done in the confirmation
window that appears.
Click Generate new token, and a pop-up window appears asking which app this token should
be generated for. Select the Odoo app, then set the expiration date to either 60 days
or Never.
Meta asks which permissions the system user allows. Add both of the following permissions:
WhatsApp_business_messaging
WhatsApp_business_management
권한 설정이 완료되면, :guilabel:`토큰 생성`을 클릭합니다. 다음 화면에 표시되는 토큰 값을 복사하세요.
해당 토큰 값을 사용하여 필드를 업데이트하세요.
Meta 앱을 이용한 실시간 스트리밍¶
Finally, to launch the app, the Meta app must be set to Live in the Meta Developer Dashboard. Click the app that is being configured, then toggle the App Mode field from Development to Live.
중요
If the app status is not set to live, then the database is only able to contact the test numbers specified in the developer console.
경고
A privacy policy URL must be set in order for the app to be set to live. Go to the Meta
Developer Dashboard and select the Odoo app. Then, in
the left-hand side menu, go to . Enter the privacy policy
hyperlink address under the Privacy Policy URL field of the form. Click
Save changes to apply the privacy policy to the app.
앱이 Meta 개발자 콘솔로 발행되면 관리자에게 확인 이메일이 전송됩니다.
WhatsApp 서식¶
WhatsApp templates allow users to store messages that are frequently sent. By creating templates tailored to specific situations, users can easily send pre-approved messages, without having to compromise on quality or compose the same text repeatedly. This ensures quick turnaround and consistent customer service messaging, and increases the overall engagement rate with the customer.
WhatsApp templates can be created on both the Odoo and Meta consoles.
중요
WhatsApp has an approval process that must be completed before the template can be used. See Meta 서식 승인.
To access WhatsApp templates, navigate to the dashboard.
Each template has three tabs:
Body: stores the message body. The message body may contain placeholders for dynamic content which is populated when the message is sent.
Buttons: adds clickable buttons/hyperlinks at the bottom of the WhatsApp template. Currently, there are three button types: Quick Reply, Visit Website, and Call Number. Visit Website supports static, dynamic, and tracked URLs.
Variables: lists all of the placeholders in the template, as well as the variables that should be populated. For example, messages can contain placeholders for a recipient’s name, purchased products, or sales order number.
Create WhatsApp templates in Odoo¶
To create a WhatsApp template, go to the dashboard and click New. Enter a Name for the template, and select a Language.
중요
In order to complete this next task, administrator access rights are needed to edit the Applies to field.
In the Account drop-down menu, select the WhatsApp business account in Odoo that this template should link to. Next, under the Applies to field, select the model the server action should apply to this template.
팁
These models can also be accessed in developer mode. In a contact form (or similar relevant form in Odoo), navigate to the model to be referenced, and hover over a field name. This displays backend information, including the specific Odoo Model name in the backend. Search for the model’s frontend name in the WhatsApp template, under the Applies to drop-down menu.
경고
The Phone Field may produce an error when changing the model or Applies
to field. The Phone Field should always be set to the Phone or Mobile model.
To search available fields, type the frontend name in the Search… box. This displays results from all of the available fields for the model (Applies to) that the template is created for.
참고
To find specific fields, multiple levels may need to be navigated in the search results box. Use the (right chevron) and :icon:`fa-arrow-left (left arrow) icon icons to navigate between the menu levels.
Change the Category to one of the following:
- Marketing: Promotions or information about your business, products or services. Or any
message that isn’t utility or authentication.
Utility: Messages about a specific transaction, account, order or customer request.
- Authentication: One-time passwords your customers use to authenticate a transaction or
login.
중요
카테고리를 잘못 지정할 경우 승인 프로세스 중에 Meta에서 플래그/거부 상태가 발생할 수 있습니다.
이 템플릿을 사용할 수 있는 사용자 를 추가합니다. 오른쪽 열에서 헤더 유형 을 헤더 메시지 와 함께 환경설정할 수도 있습니다.
사용할 수 있는 머리글 유형 은 다음과 같습니다.
문자
이미지
동영상
문서
위치(변수 설정 필요)
템플릿에 기본 메시지를 설정하려면 본문 탭으로 이동합니다.
When all the necessary changes are made to the template, click the Submit for approval button in the upper-left corner, and the status of the template changes to Pending.
The status remains Pending until a decision has been made by Meta, whereby a confirmation email is sent indicating that the template has been approved or rejected. Next, sync the templates from the Odoo database.
팁
Odoo에는 미리 설정되어 있는 데모 데이터 템플릿이 준비되어 있으며 직접 사용하거나 수정할 수 있습니다. 템플릿은 그대로 사용하거나 비즈니스 요구 사항에 맞게 수정할 수 있습니다.
To use these templates, navigate to and select a pre-configured template. Click Submit for Approval to start the approval process. An email is sent to the administrator of the Meta account when the template has been approved.
Placeholders and variables¶
동적 변수는 Odoo 데이터베이스 내에 있는 특정 필드를 참조하여, 서식을 사용할 경우 WhatsApp 메시지에 고유한 데이터를 생성합니다. 동적 변수는 모델 내의 필드를 참조하여 데이터베이스 내의 필드를 표시하도록 인코딩됩니다.
Example
관심을 끌기 위해서 많은 기업에서 맞춤형 고객 정보로 WhatsApp 메시지를 맞춤 설정하는 것을 선호합니다. 이는 Odoo에서 동적 변수를 설정하여 모델 내의 필드를 참조하여 수행될 수 있습니다. 예를 들어, 고객의 이름은 이메일에서 판매주문서 모델의 고객 필드에서 참조할 수 있습니다.
*텍스트*에 자리표지자`를 추가하여 :guilabel:`본문`에 동적 변수를 추가할 수 있습니다. *메시지 본문*에 자리표시자를 추가하려면 `{{1}} 텍스트를 입력하세요. 두 번째 자리 표시자에는 `{{2}}`를 입력하고 자리 표시자가 텍스트에 더 추가됨에 따라 숫자가 점차적으로 커집니다.
Example
다음은 결제 영수증 서식 본문 텍스트입니다.
안녕하세요 {{1}} 님,
감사합니다.
더 보기
These placeholders must be configured on the Variables tab of the template before submitting for approval from Meta. To edit the dynamic variables on a template, first change the Type to Field of Model. This allows Odoo to reference a field within a model to produce unique data in the message being sent.
다음으로, 동적 변수 필드`를 수정하세요. 모델과 필드가 바르게 참조되는지 확인하기 전에 서식의 :guilabel:`적용 대상 필드를 수정해야 합니다.
To search the available fields, type in the front-end name of the field in the search box. This finds a result from all of the available fields for the model (Applies to) that the template is created for. There may be multiple levels that need to be configured.
Example
다음은 위에서 설명한 결제 영수증의 위쪽 자리표시자 설정 변수의 예시입니다.
이름 |
샘플값 |
유형 |
필드 |
|---|---|---|---|
본문 - {{1}} |
Azure Interior |
모델 필드 |
|
본문 - {{2}} |
INV/2022/00001 |
모델 필드 |
|
본문 - {{3}} |
내 회사 |
모델 필드 |
|
본문 - {{4}} |
$ |
모델 필드 |
|
본문 - {{5}} |
4000 |
모델 필드 |
|
본문 - {{6}} |
https://.. |
포털 링크 |
Example
예를 들어, 본문 탭에 “안녕하세요 {{1}} 님”을 입력한 경우 {{1}}`를 :guilabel:`변수 탭에 설정해야 합니다. 이와 같은 특정 사례의 경우에 메시지에서 고객의 이름을 지칭해야 하므로 {{1}}`는 `{{1}} 필드`를 :guilabel:`고객 이름으로 채우도록 설정해야 합니다.
경고
WhatsApp 서식을 커스터마이징하는 것은 Odoo 지원 범위를 벗어납니다.
Meta 서식 승인¶
After updating the dynamic variables on the template, the template needs to be resubmitted to Meta for approval. Click Submit for Approval to start the approval process. An email is sent to the administrator of the Meta account when the template has been approved.
Meta의 승인을 받은 후에는 Odoo 데이터베이스에서 서식을 다시 동기화합니다. 다음의 문서를 참조하세요: 서식 동기화하기.
팁
To see the status, go to Meta Business Suite and select .
서식 동기화하기¶
Templates must be synced on the Odoo database once they are approved by the Meta team. To do so, begin by navigating to and select the configuration that should be synced. Under the section marked , towards the bottom, click Sync Templates. Meta updates the templates that are approved so that they can be utilized with various apps in the database.
초록색으로 성공했다는 메시지가 서식 업데이트 수와 함께 오른쪽 상단에 나타납니다.
팁
Templates can also be synced individually from the template itself. Navigate to the dashboard and select the template to sync. Then, click the Sync Template button located in the top menu of the template’s form.
Create WhatsApp templates in Meta¶
First, navigate to Meta Business Suite, and then go to .
To create a WhatsApp template, click the blue Create template button, and then select the Category from one of the following:
- Marketing: Promotions or information about your business, products or services. Or any
message that isn’t utility or authentication.
Utility: Messages about a specific transaction, account, order or customer request.
- Authentication: One-time passwords your customers use to authenticate a transaction or
login.
서식 :guilabel:`이름`을 입력한 다음 서식 :guilabel:`언어`를 선택하세요.
참고
Multiple languages can be selected by typing the language names, then selecting the other languages as needed.
After making the appropriate selections, click Continue in the top-right corner. The browser redirects to the Edit template page where the Header, Body, Footer, and Buttons are configured. To the right of the template is a preview of what the template looks like in production.
When all necessary changes are made to the template, click Submit button in the top-right corner, and a window populates to confirm the language. Click Confirm to approve and then another window states that the template has been submitted to Meta for review and approval.
The Status of the template remains In review until a decision is made by Meta. Once an email confirmation approving the template is received, the templates need to be synced from within the Odoo database.
알림¶
WhatsApp에서의 알림은 Odoo의 메시지 대화와 유사하게 처리됩니다. 고객으로부터 받은 대화 내용이 팝업창으로 표시됩니다. 기본적으로 알림은 Odoo의 WhatsApp 비즈니스 계정 구성에 설정되어 있습니다.
Notification settings can be adjusted by navigating to . From there, select the account and scroll down to the section where notifications are handled. Under the Notify users heading, type in the field which users should be notified for this particular WhatsApp channel.
참고
Once a conversation is initiated between a user and a customer, notifications to all the users specified in the WhatsApp business account configuration won’t occur. Only notifications to the users in the conversation occur. Should the user not respond within 15 days, the customer’s reply after the 15 days populates once again to all the users specified in the WhatsApp configuration.
Add users to a chat¶
Users can be added to a WhatsApp chat by expanding the WhatsApp pop-up window. WhatsApp conversations are located in the Discuss app. Select a conversation, then click the (Add User) icon in the top-right, and a window appears to invite users to the conversation.
WhatsApp API FAQ¶
승인¶
As of February 1, 2023, if the Meta app requires advanced level access to permissions, a complete business verification may need to be completed. This includes submitting office business documents to Meta. See this documentation.
서식 오류¶
Editing templates can cause tracebacks and errors unless the exact process is followed.
중복 유효성 검사 오류¶
When syncing the templates there may be an instance when there are multiple templates with the same
name on Meta’s business manager and in Odoo. This causes a duplicate validation error. Odoo displays
Validation Error: The operation cannot be completed: Duplicate template is not allowed for one Meta
account. To correct this issue, rename the duplicate template name on Odoo and sync the
templates once again.
토큰 오류¶
User error 190¶
If the temporary token is not replaced with a permanent token, Odoo displays User Error 190: Error
validating access token: Session has expired. To correct this issue, add a permanent token.
User error 100¶
If an Employee attempts to set up the permanent token, Odoo displays User Error 100:
Unsupported get request.
To correct this error, create an Admin system user.
Other¶
WhatsApp template can’t be sent to multiple contacts¶
Make sure the Multi-Template feature is enabled on the template.
Check why a WhatsApp message failed to send¶
Enable the Failure Type and Failure Reason columns under WhatsApp —> Messages.
Other error codes¶
For other errors, see Meta’s Developer Suite for WhatsApp Error Codes.