Spendint API - POST /sn_spend_intg/spenint/orderack
Atualiza as informações do pedido para quando um usuário compra um produto de um catálogo de terceiros. Quando o usuário faz check-out, uma linha de compra é criada para que as aprovações ou outras tarefas da compra possam ser concluídas.
- Pedido de saída: Contém o cabeçalho do pedido.
- Linha do pedido de saída: Contém as linhas do pedido.
Os fornecedores precisam consultar essas tabelas e buscar os pedidos pendentes em relação a elas. Os fornecedores devem criar um app com escopo para Workflow Studio ações para integração com ServiceNow banco de dados.
sysparm_query_supplier_id_id_<supplier_id> purchase_order.status: 20 para cabeçalhopara o cabeçalho, você deve usar o código "purchase_<supplier_id> order.supplier_id" para o cabeçalho "purchase_order.status" para o cabeçalho "20"
- A ordem de compra e a linha da ordem de compra são enviadas para o Planejamento de recursos empresariais (ERP), se aplicável.
- A ordem de compra e a linha da ordem de compra são transferidas por meio da integração para o terceiro com o ID do cliente, ID do fornecedor, número da ordem de compra, data da ordem, valor da ordem de compra, moeda do valor da ordem de compra e linhas da ordem de compra.
- A ordem de compra e a linha da ordem de compra permanecem no estado Envio pendente até que as mensagens de confirmação sejam recebidas pela integração do catálogo de terceiros e pelo ERP. Depois que a confirmação é recebida, o estado é atualizado para Solicitado. Se não houver integração de ERP envolvida, uma mensagem de confirmação será necessária somente da integração de terceiros.
Tabelas de status
Para saber o status da solicitação de confirmação de pedido, faça uma chamada REST no ServiceNow banco de dados usando Tabela REST API. A resposta da API lista os registros em que a solicitação de confirmação de pedido falhou. Para obter uma resposta de confirmação de pedido, consulte a tabela Erro de confirmação de pedido com o seguinte parâmetro:
se <supplier_id> você estiver usando o comando "outbound_error.supplier_id" "outbound_error.state", "outbound_error.state" é "20"
Os detalhes sobre o ID do cliente, ID do fornecedor, tipo de erro, ID do conjunto de importação exclusivo e estado podem ser encontrados na tabela Status de saída, que é a tabela de erros primária.
Formato de URL
/api/sn_sp_intg/spenint/orderack
Parâmetros de solicitação compatíveis
| Nome | Descrição |
|---|---|
| Nenhum(a) |
| Nome | Descrição |
|---|---|
| modo | Suporte a modos assíncronos e síncronos para integração de terceiros. Tipo de dados: Cadeia de caracteres Valores válidos:
Padrão: Assíncrono |
| Nome | Descrição |
|---|---|
| customer_id | Obrigatório. Identificador do cliente. Tipo de dados: Cadeia de caracteres Comprimento máximo: 100 |
| order_number | Obrigatório. Número da ordem de compra fornecido pelo cliente para este pedido. Tipo de dados: Cadeia de caracteres Comprimento máximo: 40 |
| sales_order_lines | Lista de objetos que definem as linhas de ordem de vendas com atualizações exclusivas para as compras neste pedido. Tipo de dados: Matriz |
| sales_order_lines.estimated_arrival_date | Data de chegada estimada do pedido. Tipo de dados: Cadeia de caracteres Comprimento máximo: 40 FORMATO: AAAA-MM-DD |
| sales_order_lines.line_number | Obrigatório. Número da linha da ordem de compra que foi gerado pelo cliente para uma compra específica. Tipo de dados: Cadeia de caracteres Comprimento máximo: 40 |
| sales_order_lines.sales_order_line_number | Número da linha da ordem de vendas que foi gerado pelo fornecedor. Este número é necessário somente para revisões desta compra. Tipo de dados: Cadeia de caracteres Comprimento máximo: 40 |
| sales_order_number | Número ou valor gerado pelo fornecedor para este pedido. Tipo de dados: Cadeia de caracteres Comprimento máximo: 40 |
| status_code | Obrigatório. Status do pedido enviado que confirma se o pedido foi feito com sucesso. Tipo de dados: Cadeia de caracteres Valores válidos:
|
| status_message | Mensagem anexada a um código de status. Por exemplo, a mensagem pode ser que o pedido foi feito com sucesso e está em pedido pendente. Tipo de dados: Cadeia de caracteres Comprimento máximo: 1000 |
| supplier_id | Obrigatório. Identificador do revendedor ou fornecedor com o qual o cliente pode fazer pedidos. Tipo de dados: Cadeia de caracteres Comprimento máximo: 100 |
| third_party_import_id | Identificador que permite que um terceiro passe um valor de cadeia de caracteres para identificar exclusivamente um conjunto de dados importados. Tipo de dados: Cadeia de caracteres Comprimento máximo: 100 |
Cabeçalhos
Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta.
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis: application/jsonou application/xml. Padrão: application/json |
| Cabeçalho | Descrição |
|---|---|
| Nenhum(a) |
Códigos de status
Os seguintes códigos de status se aplicam a esta ação HTTP.
| Código do status | Descrição |
|---|---|
| êxito | Bem-sucedido. A solicitação foi processada com sucesso. |
| falha | Malsucedido. A solicitação foi processada com erros. |
Parâmetros do corpo da resposta (JSON)
Esses parâmetros do corpo de resposta são recebidos quando consultados no modo síncrono.| Nome | Descrição |
|---|---|
| error_response_body | Descrição dos erros, listados pelo número da ordem de venda, número da linha da ordem de venda e mensagem de erro. Tipo de dados: Matriz |
| error_response_body.error_message | Mensagem de erro detalhada. Tipo de dados: Cadeia de caracteres |
| status_code | Status da resposta, como "Sucesso" ou "Falha". Tipo de dados: Cadeia de caracteres |
Solicitação de curl
curl "https://instance.service-now.com/api/sn_spend_intg/spendint/orderack" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
{"root":[{
"customer_id": "ACME CORP",
"supplier_id": "SUP-123456",
"third_party_import_id": "undefined",
"order_number": "PO08903323",
"sales_order_number": "SO03323212",
"status_code": "CONFIRMED",
"status_message": "BACKORDERED",
"sales_order_lines":[
{
"line_number": "POL6789876",
"sales_order_line_number": "SOL5678909",
"estimated_arrival_date": "YYYY-MM-DD"
}
]
}
]}
Possíveis respostas:
// Success response:
{
"result": {
"response": "success"
}
}
// Error response:
{
"result": {
"response": [
{
"customer_id": "ACME CORP",
"supplier_id": "SUP-123456",
"third_party_import_id": "undefined",
"status_code": "failure",
"error_response_body": [
{
"sales_order_number": "SO03323212",
"sales_order_line_number": "SOL5678909",
"error_message": "Field Value empty/Formatting issue Purchase order number\nField Value empty/Formatting issue Purchase order line number\n"
}
]
}
]
}
}