https://developer.infor.com/apis/

Overview

Infor is a global leader in business cloud software products for companies in industry specific markets.

Connection

  • Client Type: Client web-application.
  • Protocol: OAuth 2.0.

Trigger

Webhook triggers:

  • Infor Receive Purchase Order.
  • Infor Receive Container.

Action

  • Infor Send Inventory.
  • Infor Send Ship Confirmation.

How to

Create a new web application on Infor

  • Enter RedirectURL/CallbackURL (Required)
  • Enter Authorized JavaScript Origins (Required)
  • Download app credentials
    Note:
    • ti: Tenant identifier.
    • cn: Authorized application name.
    • ci: ClientID that must be passed to the Authorization.
    • cs: ServerClient Secret to pass to the Authorization Server.
    • iu: Base URL for calling the ION API Gateway for this tenant/environment.
    • pu: Base URL for calling the authorization server for this tenant/environment.
    • oa: Path to append to "pu" to create the Authorization URL (authorization.oauth2).
    • ot: Path to append to "pu" to create the Access Token URL (token.oauth2).
    • or: Path to append to "pu" to revoke a previously obtained token (revoke_token.oauth2).

Get AccessToken

  • Create new token: OAuth 2.0 Properties: Postman mapping***
    • Grant Type: Authorization Code.
    • CallbackURL:
    • Auth URL: pu + oa.
    • Access Token URL: pu + ot.
    • Client ID: ci.
    • Client Secret: cs.

RefreshToken In Infor, a new refreshToken will be created when the old refreshToken is called for the last time. So, if you take the database back to test locally, please update the new refreshToken into the database after testing.


Get Purchase Order

curl -X 'GET' \

  'https://mingle-ionapi.inforcloudsuite.com/KDHJPPT2M2QUWMPD_TST/M3/m3api-rest/v2/execute/PPS200MI/GetHead?PUNO=1000000006&dateformat=YMD8&excludeempty=false&righttrim=true&format=PRETTY&extendedresult=false' \

  -H 'accept: application/json; charset=UTF-8' \

  -H 'Authorization: Bearer eyJraWQiOiJrZzplMGRlNmFiZC1jY2Nl.............'


Get Purchase Order lines

curl -X 'GET' \

  'https://mingle-ionapi.inforcloudsuite.com/KDHJPPT2M2QUWMPD_TST/M3/m3api-rest/v2/execute/PPS200MI/LstLine?PUNO=1000000006&dateformat=YMD8&excludeempty=false&righttrim=true&format=PRETTY&extendedresult=false' \

  -H 'accept: application/json; charset=UTF-8' \

  -H 'Authorization: Bearer eyJraWQiOiJrZzplMGRlNmFiZC1............'


In Infor OS you can send and receive documents through the Infor Application Connector(IMS).


Business Object Document (BOD) The basic messaging framework is defined by OAGi (Open Applications Group, Inc.). BODs are XML documents used to exchange data between different types of systems. https://docs.infor.com/inforos/2024.x/en-us/useradminlib_cloud/default.html?helpcontent=ccl1519994073494.html


BOD samples:

Send a message from Simplify to Infor(actions) https://docs.infor.com/inforos/2024.x/en-us/useradminlib_cloud/default.html?helpcontent=ccl1519994073494.html


Log in to Infor using the Microsoft account that previously had permission to log in to Infor: https://mingle-portal.inforcloudsuite.com/v2


Create IMS endpoint:


Create a connection point for Simplify:

 Notes:

  • ION API Client ID: Client ID(ci) in credentials of an authorized app.
  • IMS Endpoint: IMS endpoint that created in the API Gateway.
  • Service Account: A service account is a special type of user account used by Authorized apps of a Backend Service type.


Create a data flow to send documents from Infor M3 to Simplify:


Testing the integration using Postman:

  1. Gateway Health Check A basic check of whether there is connectivity with API Gateway.
  2. ping A successful ping returns HTTP status code 200 and body: {"status": "OK", "code": 200}.
  3. versions A successful response returns HTTP status code 200 returns HTTP status code 200 and body: {"supportedVersions": ["v1", "v2", "v3"]}.
  4. AcceptedDocuments An inactive connection point returns HTTP status code 412. A successful acceptedDocuments returns HTTP status code 200 and a body such as: {"logicalId": "lid://infor.ims.cp_myapp", "acceptedDocuments": ["Confirm.BOD", "Sync.SalesOrder"]}.
  5. multipartMessage An inactive connection point returns HTTP status code 412. A successful method call returns HTTP status code 202 and body: {"status": "OK", "code": 202, "message": "The request was processed successfully"}.


Receive a message from Infor M3 to Simplify(trigger events): https://docs.infor.com/inforos/2024.x/en-us/useradminlib_cloud/default.html?helpcontent=ccl1519994073494.html

Notes: In Infor M3, you can send messages of BODs that have the verb "Sync" from M3 to your applications.


API collections:


More informations: Infor_IMS.zip


API (Info ION):

  • Trigger a exist BOD with API Go to OS -> API Gateway -> Available APIs -> Infor M3 -> InforM3MIv2 (M3/m3api-rest/v2/execute) -> MNS260MI

    We only need to use 2 APIs to trigger a BOD
    • Step 1: Run AddMBMInit
      Parameters are
      • DONR = MBM
      • PRF1 = EDI-850-OU
      • PRTF = EDI850_OUT
      • OBJC = PUNO
      • DONO = PO # you want to generate a BOD for
      • ARSD = 0Response
    • Step 2: Run PrcMBMInit MBIN = Message # from response of step 1.
    • Step 3: Go to OS -> ION -> OneView to check.

Business (Info M3):

  1. Company:
    • Infor M3 can have many companies, each company has many divisions, can change between companies and divisions.
    • How to change the company? CTRL+S => type CMP100 => enter.
    • How to change the company and division? CTRL+S => type CMP100201 => enter 100: CompanyId 201: DivisionId.
  2. Purchase Order (PPS200):
    • Create a new purchase order (status is 15), to trigger Simplify, we can change the status to 20, then change to status 35.
    • How to change status to 20 Go to Purchase Order. Print Document (PPS600).
    • Go back to Purchase Order. Open (PPS200) to check the status of PO.
    • After changing to status 20, continue to adjust to status 35.
      • How to change status to 35 Go to Purchase Order. Display Lines (PPS220).
      • In Lowest Status, right-click -> Related -> Confirm Order.
    • Go back to Purchase Order. Open (PPS200) to check the status of PO.
  3. Customer Order View list in Customer Order. Open Toolbox (OIS300).
    • Create a new customer order (status is 20), to trigger Simplify, we need to change the status to 33 - Allocated, then change to status 44 - Picking list print.
    • How to create a new order Go to Customer Order. Open (OIS100), enter CO no, choose Customer, Req delivery dt, Facility -> click "+" -> click "Next".
      Choose warehouse (R0E, R0B) -> click "Next" -> a new order is created with status 20 - Registered.
    • How to copy an order to a new order Right click -> Copy.
      Enter the new CO no -> Next On the References tab, you can need to change the Customer's ord if occurring an error.
    • How to change status to 33 To change status to 33, we need to choose item in Balance Identity. Open Toolbox (MWS068) that correspond to the order's warehouse Go to Balance Identity. Open Toolbox (MWS068) to find available items.
      Go to back Customer Order. Open Line to add item.
      After add item, check the order status again.
    • How to change status to 44 In Customer Order. Open Toolbox (OIS300) -> find order number -> in this number -> right click -> Related -> Delivery toolbox.
      In Delivery. Open toolbox (MWS410), click Related -> choose Release for picking.
      The order has moved to status 44.
    • How to change status to 66 - Delivered Find CO with the status 44 -> right click -> Related -> Delivery toolbox.
      In the row -> right click -> Related -> Confirm Issues