For the complete documentation index, see llms.txt. This page is also available as Markdown.

Pagamentos

Criação de pagamentos

Tal como no caso dos recibos, as compras são constituídas por:

  1. Um cabeçalho

  2. Umas ou mais linhas

1. Criação do cabeçalho

De modo a criar uma compra, deverá inicialmente criar o cabeçalho do documento. Para este efeito, deverá realizar o seguinte pedido:

curl -v -X POST -H 'Content-Type: application/vnd.api+json' -H 'Accept: application/json' -H 'Authorization: Bearer <access_token>' -d '<payload JSON>' '<API_URL>/commercial_purchases_payments'
post
Body
Responses
200

OK

application/json
post/commercial_purchases_payments
POST /commercial_purchases_payments HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 861

{
  "data": {
    "type": "commercial_purchases_payments",
    "attributes": {
      "id": 1,
      "date": "text",
      "document_no": "text",
      "document_series_id": 1,
      "payment_mechanism": "text",
      "gross_total": 1,
      "net_total": 1,
      "third_party_type": "text",
      "third_party_id": 1
    },
    "relationships": {
      "bank_accounts": {
        "data": {
          "resource": "bank_accounts"
        }
      },
      "cash_accounts": {
        "data": {
          "resource": "cash_accounts"
        }
      },
      "company": {
        "data": {
          "resource": "current_company"
        }
      },
      "commercial_document_series": {
        "data": {
          "resource": "commercial_document_series"
        }
      },
      "country": {
        "data": {
          "resource": "countries"
        }
      },
      "supplier": {
        "data": {
          "table": "payments",
          "resource": "suppliers"
        }
      },
      "employee": {
        "data": {
          "table": "payments",
          "resource": "current_company_users"
        }
      },
      "currency": {
        "data": {
          "resource": "currencies"
        }
      },
      "user": {
        "data": {
          "resource": "current_company_users"
        }
      },
      "lines": {
        "data": {
          "table": "payment_lines",
          "resource": "commercial_purchases_payment_lines"
        }
      }
    }
  }
}
200

OK

{
  "data": {
    "type": "commercial_purchases_payments",
    "id": null,
    "attributes": {
      "id": 1,
      "date": "text",
      "document_no": "text",
      "document_series_id": 1,
      "payment_mechanism": "text",
      "gross_total": 1,
      "net_total": 1,
      "third_party_type": "text",
      "third_party_id": 1
    },
    "relationships": {
      "bank_accounts": {
        "data": {
          "resource": "bank_accounts"
        }
      },
      "cash_accounts": {
        "data": {
          "resource": "cash_accounts"
        }
      },
      "company": {
        "data": {
          "resource": "current_company"
        }
      },
      "commercial_document_series": {
        "data": {
          "resource": "commercial_document_series"
        }
      },
      "country": {
        "data": {
          "resource": "countries"
        }
      },
      "supplier": {
        "data": {
          "table": "payments",
          "resource": "suppliers"
        }
      },
      "employee": {
        "data": {
          "table": "payments",
          "resource": "current_company_users"
        }
      },
      "currency": {
        "data": {
          "resource": "currencies"
        }
      },
      "user": {
        "data": {
          "resource": "current_company_users"
        }
      },
      "lines": {
        "data": {
          "table": "payment_lines",
          "resource": "commercial_purchases_payment_lines"
        }
      }
    }
  }
}

No pedido acima, o <access_token> corresponde ao token de acesso válido devolvido pelo serviço de OAuth

O <payload JSON> deverá vir no seguinte formato

Após criar o cabeçalho, a resposta TEM QUE ser consultada para obtenção do identificador interno ("id") da compra criada. Este identificador será necessário para a criação de todas as linhas.

2. Criação de linhas

Em todos os pedidos seguintes, é necessário saber qual o id do documento de compra. Este id pode ser guardado a partir da resposta (JSON) ao pedido de criação anterior, ou pode ser consultado via API. Via API, o id do documento pode ser obtido por um

De modo a inserir linhas na compra criada, deverá realizar o seguinte pedido

post
Body
Responses
200

OK

application/json
post/commercial_purchases_payment_lines
POST /commercial_purchases_payment_lines HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 476

{
  "data": {
    "type": "commercial_purchases_payment_lines",
    "attributes": {
      "payment_id": 1,
      "payable_type": "text",
      "payable_id": 1,
      "paid_value": 1,
      "settlement_percentage": 1
    },
    "relationships": {
      "payment": {
        "data": {
          "resource": "commercial_purchases_payments"
        }
      },
      "commercial_purchases_document": {
        "data": {
          "table": "payment_lines",
          "resource": "commercial_purchases_documents"
        }
      },
      "commercial_purchases_document_line": {
        "data": {
          "table": "payment_lines",
          "resource": "commercial_purchases_document_lines"
        }
      }
    }
  }
}
200

OK

{
  "data": {
    "type": "commercial_purchases_payment_lines",
    "id": null,
    "attributes": {
      "payment_id": 1,
      "payable_type": "text",
      "payable_id": 1,
      "paid_value": 1,
      "settlement_percentage": 1
    },
    "relationships": {
      "payment": {
        "data": {
          "resource": "commercial_purchases_payments"
        }
      },
      "commercial_purchases_document": {
        "data": {
          "table": "payment_lines",
          "resource": "commercial_purchases_documents"
        }
      },
      "commercial_purchases_document_line": {
        "data": {
          "table": "payment_lines",
          "resource": "commercial_purchases_document_lines"
        }
      }
    }
  }
}

No pedido acima, o <access_token> corresponde ao token de acesso válido devolvido pelo serviço de OAuth. O payload JSON deverá vir no seguinte formato, dependendo se se trata de um produto, ou categoria de despesa

NOTA: É na linha que se indica qual o documento de compra (FC ou DSP) a pagar. Se necessário, podem criar-se mais do que uma linha (e nesse caso o pagamento é feito de uma só vez para todos os documentos)

Linha de pagamento

3. Finalização do documento

Não é necessária, os pagamentos são sempre fechados

Last updated