如何通过知行之桥EDI系统连接Salesforce?

近期我们帮助零售行业的企业对接其交易伙伴,用户需要将通过EDI系统接收到的EDI 850采购订单数据集成到其Salesforce系统中。

通过知行之桥EDI系统连接Salesforce,需要使用到REST端口。只需在可视化界面中进行配置即可实现连接,步骤如下:

创建一个REST端口

edi-Salesforce1.png

进入知行之桥EDI系统,在左侧 端口 列表的 基础(core) 列表 中,找到REST端口,点击并拖拽至右侧空白工作区中,即可创建一个 REST 端口。也可以在端口列表下的搜索框中搜索 REST,快速创建端口。

配置基本信息

点击 REST 端口,在弹框页面中的 设置 选项卡下配置连接 Salesforce 的基本信息。

认证类型可以选择None,Basic,NTLM,Digest,OAuth 2.0,Bearer Token,AWS Signature。

如果要将接收到的采购订单数据提供给Salesforce,这里的 方法 需要设置为POST,认证类型 需要选择 OAuth2.0。

edi-Salesforce2.png

关于OAuth2.0的配置可以参考文章:知行之桥如何支持微软邮箱OAuth2.0认证

授权类型 可以选择 Authorization Code,Client Credentials以及Password。如果选择 Password,需要补充访问令牌URL、用户名、密码、客户端Id以及客户端密码等信息,如下所示:

edi-Salesforce3.png

通过以上配置是能够正常连接到Salesforce的,但会出现这样的挑战:

出现报错:HTTP protocol error. 401 Unauthorized. 需要手动点击刷新令牌。

这个报错是由于使用了password的授权类型,但令牌有时效性,无法自动刷新访问令牌。

由于通过客户端ID和密码获取到的令牌具有时效性,过期需要手动刷新,要想顺利实现连接,需要人工点击上图右下角的 获取新的访问令牌

EDI系统需要保证全天候的自动化数据传输,从而确保能够及时收到客户发来的订单,因此这种授权类型并不符合当前我们的连接需求,需要将 授权类型 修改为 Authorization Code。如下所示,配置界面中需要的内容:

edi-Salesforce4.png

1.回调URL

这里的回调URL是OAuth2.0连接到的服务返回令牌以提供访问的URL。服务通常要去将允许的URL列入白名单,因此这是在服务中配置应用程序注册时要使用的值。用户需要将这里的回调URL配置到自己的Salesforce系统接口上。这里的回调URL,EDI系统会自动生成,用户不可做修改。

edi-Salesforce5.png

注:回调URL是以知行之桥系统的访问url为准。如果用户的系统实际访问的是https(自己配置了SSL证书),只需要在Salesforce上配置带https的URL即可。

用户可以在知行之桥EDI系统右上角点击齿轮图标,找到 高级设置 页面,在这个页面下的 高级设置 中配置 https:// 开头的主机地址即可。

edi-Salesforce6.png

2.认证 URL以及访问令牌URL

认证URL:OAuth2.0服务的授权URL,这是在单击“连接”按钮登录并授予应用程序权限时定向的URL。

edi-Salesforce7.png

访问令牌URL:OAuth 2.0访问令牌的URL。

用户需要根据自己Salesforce的信息提供以上两个URL并配置到知行之桥EDI系统中。

3.客户端Id和密码

这里的客户端Id和密码即为注册OAuth时分配的客户端Id和密码。

4.获取新的访问令牌

成功登录一次之后会获取到两个token:access token 以及 refresh token。access token具有时效性,过期之后将会借助refresh token来刷新access token,从而实现自动获取访问令牌。

其他问题

1.令牌刷新策略

Salesforce系统中的令牌刷新策略包括:

  • Refresh token is valid until revoked
  • Immediately expire refresh token
  • Expire refresh token if not used for ** Days
  • Expire refresh token after ** Days

这里选择Refresh token is valid until revoked或者Immediately expire refresh token都可以。

2.刷新令牌,将会弹出登录界面,需要输入密码登录,但推送文件失败

弹出登录界面属于正常的Oauth流程,但推送文件的时候出现401认证失败的报错,这是因为用户的服务器设置或者salesforce的认证有问题,没有给这个token足够的权限,导致获取的token没有权限访问REST API,需要在salesforce上检查。

了解更多 EDI 信息,请参阅: EDI 是什么?

了解更多EDI信息,请您通过邮件 sales@kasoftware.cn 联系我们。点击下方蓝色按钮,即可免费试用EDI软件。
标签: , , , , ,
文章分类 帮助文档, 知识库