Complete invoice by ID
The Complete invoice by ID method is used for approving the payment linked to an approved postpaid invoice by ID in the platform (see Approve invoice by ID) with a third-party invoice issued to an account of the reseller by a third-party ERP system (see Managing invoices for the Postpay model by a third-party ERP system). This method is used to specify the ID of the required invoice for accounts with several invoices in the platform within the same billing period. If an account has only one invoice in the platform within a billing period, it is possible to use another method without specifying the invoice ID — see Complete invoice.
Optionally, a manager can approve an invoice for the Postpay model and the payment manually in the Operator Control Panel:
- Approving manually an invoice managed by a third-party ERP system
- Processing a payment linked to an invoice issued by a third-party ERP system
The platform matches a third-party invoice and invoice for the Postpay model using the start date of the billing period (billing_date
).
An API token of a manager is required for authorization. To get an API token via the Operator Control Panel, see Viewing and updating manager's information.
The manager's API token specified in an API request determines:
- The role and access level of the manager, which determine the availability of a method.
- The current reseller and downstream resellers accessible within a method.
POST {base_url}/api/v3/resellers/{reseller_id}/invoices/{invoice_id}/complete
Arguments
Name | Parameter Type | Data type | Required/Optional | Description | |
---|---|---|---|---|---|
X-Api-Token | header | string | Required | API token of a manager that performs the operation (see Viewing and updating manager's information) | |
Content-Type | header | string | Required | Media type of the request. Specify the following: application/vnd.api+json | |
Accept | header | string | Required | Supported media types of the answer. Specify the following: application/vnd.api+json | |
base_url | path | string | Required | ActivePlatform URL | |
reseller_id | path | number | Required | ID of the current reseller or any of its downstream resellers (see Viewing and updating reseller general information) | |
invoice_id | path | number | Required | ID of the invoice in the platform to complete | |
document_id | form | string | Required | Third-party invoice name | |
billing_date | form | string | Required | Billing day (YYYY-MM-DD) — the start date of a billing period linked to the invoice |
Response model
The response model is similar to Get invoice.
Errors
Status | Error code | Error text | Comment |
---|---|---|---|
400 | INVOICE-0001 | Required parameters are not provided | Specify all required parameters in the request |
INVOICE-0005 | Incorrect specified billing date for the invoice | The specified billing day billing_date does not match the specified invoice in the platform | |
INVOICE-0006 | Incorrect specified document_id for the invoice | The specified third-party invoice name document_id does not match the specified invoice in the platform | |
INVOICE-0010 | Only postpaid invoice can be completed | The payment model of the specified invoice is not Postpay, so the invoice cannot be completed (see Get invoice) | |
INVOICE-0011 | Only closed invoice can be completed | The status of the specified invoice is not Closed, so the invoice cannot be completed (see Get invoice) | |
INVOICE-0012 | Only non-zero invoice can be completed | The amount of the specified invoice is 0, so the invoice cannot be completed (see Get invoice) | |
INVOICE-0017 | Payment related to this invoice has been cancelled. Invoice completion is not possible | A manager manually cancelled a linked payment (see Managing Invoices for the Postpay model by a third-party ERP system). The invoice cannot be approved or completed | |
422 | INVOICE-0004 | Unable to complete invoice one more time | The invoice is already completed |
Request example
POST /api/v3/resellers/1/invoices/2046/complete
Host: test.activeplatform.com
Content-Type: application/vnd.api+json
X-Api-Token: vY5fwetestK3gJXZH5uHCw
Accept: application/vnd.api+json
{
"document_id": "NS2000015",
"billing_date": "2020-04-01"
}
Response example
{
"data": {
"id": "2046",
"type": "invoices",
"attributes": {
"created_at": "2019-04-18T09:02:01.257560+0300",
"updated_at": "2019-05-02T06:12:41.990713+0300",
"document_id": "NS2000015",
"status": "closed",
"total": "987.65",
"account_id": 505,
"from_date": "2019-04-17",
"to_date": "2019-05-01",
"payment_model": "postpay",
"approved": "true"
},
"relationships": {
"subscriptions": {
"data": [
{
"id": "3009839",
"type": "subscriptions"
}
]
},
"payments": {
"data": [
{
"id": "12201",
"type": "payments"
}
]
},
"charges": {
"data": [
{
"id": "323740",
"type": "charges"
}
]
},
"corrections": {
"data": []
}
}
}
}