Chilkat Online Tools

Foxpro / KSeF / Sprawdzenie statusu wysłanej faktury

Back to Collection Items

LOCAL loHttp
LOCAL lnSuccess
LOCAL loSbResponseBody
LOCAL loJResp
LOCAL lnRespStatusCode
LOCAL lcElementReferenceNumber
LOCAL lcAcquisitionTimestamp
LOCAL lcInvoiceNumber
LOCAL lcKsefReferenceNumber
LOCAL lcProcessingCode
LOCAL lcProcessingDescription
LOCAL lcReferenceNumber
LOCAL lcTimestamp

* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.

loHttp = CreateObject('Chilkat_9_5_0.Http')

loHttp.SetRequestHeader("Accept","application/json")
loHttp.SetRequestHeader("SessionToken","{{apiKey}}")

loSbResponseBody = CreateObject('Chilkat_9_5_0.StringBuilder')
lnSuccess = loHttp.QuickGetSb("https://ksef.mf.gov.pl/api/online/Invoice/Status/:InvoiceElementReferenceNumber",loSbResponseBody)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    RELEASE loSbResponseBody
    CANCEL
ENDIF

loJResp = CreateObject('Chilkat_9_5_0.JsonObject')
loJResp.LoadSb(loSbResponseBody)
loJResp.EmitCompact = 0

? "Response Body:"
? loJResp.Emit()

lnRespStatusCode = loHttp.LastStatus
? "Response Status Code = " + STR(lnRespStatusCode)
IF (lnRespStatusCode >= 400) THEN
    ? "Response Header:"
    ? loHttp.LastHeader
    ? "Failed."
    RELEASE loHttp
    RELEASE loSbResponseBody
    RELEASE loJResp
    CANCEL
ENDIF

* Sample JSON response:
* (Sample code for parsing the JSON response is shown below)

* {
*   "elementReferenceNumber": "95961204-GJ-155784EBEF-9AA550C872-EE",
*   "invoiceStatus": {
*     "acquisitionTimestamp": "<dateTime>",
*     "invoiceNumber": "<string>",
*     "ksefReferenceNumber": "1271008157-85200623-1CDDAC41AAD4-A2"
*   },
*   "processingCode": "<integer>",
*   "processingDescription": "<string>",
*   "referenceNumber": "25080330-3K-01CF010ED4-85D5209C2E-D4",
*   "timestamp": "<dateTime>"
* }

* Sample code for parsing the JSON response...
* Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code

lcElementReferenceNumber = loJResp.StringOf("elementReferenceNumber")
lcAcquisitionTimestamp = loJResp.StringOf("invoiceStatus.acquisitionTimestamp")
lcInvoiceNumber = loJResp.StringOf("invoiceStatus.invoiceNumber")
lcKsefReferenceNumber = loJResp.StringOf("invoiceStatus.ksefReferenceNumber")
lcProcessingCode = loJResp.StringOf("processingCode")
lcProcessingDescription = loJResp.StringOf("processingDescription")
lcReferenceNumber = loJResp.StringOf("referenceNumber")
lcTimestamp = loJResp.StringOf("timestamp")

RELEASE loHttp
RELEASE loSbResponseBody
RELEASE loJResp

Curl Command

curl -X GET
	-H "SessionToken: {{apiKey}}"
	-H "Accept: application/json"
https://ksef.mf.gov.pl/api/online/Invoice/Status/:InvoiceElementReferenceNumber

Postman Collection Item JSON

{
  "name": "Sprawdzenie statusu wysłanej faktury",
  "request": {
    "auth": {
      "type": "apikey",
      "apikey": [
        {
          "key": "key",
          "value": "SessionToken",
          "type": "string"
        },
        {
          "key": "value",
          "value": "{{apiKey}}",
          "type": "string"
        },
        {
          "key": "in",
          "value": "header",
          "type": "string"
        }
      ]
    },
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/online/Invoice/Status/:InvoiceElementReferenceNumber",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "online",
        "Invoice",
        "Status",
        ":InvoiceElementReferenceNumber"
      ],
      "variable": [
        {
          "key": "InvoiceElementReferenceNumber",
          "value": "56810128-EL-96284D87EE-8DDB16145F-B3"
        }
      ]
    },
    "description": "Sprawdzenie statusu wysłanej faktury"
  },
  "response": [
    {
      "name": "OK",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "description": "Added as a part of security scheme: apikey",
            "key": "SessionToken",
            "value": "<API Key>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/online/Invoice/Status/:InvoiceElementReferenceNumber",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "online",
            "Invoice",
            "Status",
            ":InvoiceElementReferenceNumber"
          ],
          "variable": [
            {
              "key": "InvoiceElementReferenceNumber"
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"elementReferenceNumber\": \"95961204-GJ-155784EBEF-9AA550C872-EE\",\n  \"invoiceStatus\": {\n    \"acquisitionTimestamp\": \"<dateTime>\",\n    \"invoiceNumber\": \"<string>\",\n    \"ksefReferenceNumber\": \"1271008157-85200623-1CDDAC41AAD4-A2\"\n  },\n  \"processingCode\": \"<integer>\",\n  \"processingDescription\": \"<string>\",\n  \"referenceNumber\": \"25080330-3K-01CF010ED4-85D5209C2E-D4\",\n  \"timestamp\": \"<dateTime>\"\n}"
    },
    {
      "name": "Nieprawidłowe wywołanie",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "description": "Added as a part of security scheme: apikey",
            "key": "SessionToken",
            "value": "<API Key>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/online/Invoice/Status/:InvoiceElementReferenceNumber",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "online",
            "Invoice",
            "Status",
            ":InvoiceElementReferenceNumber"
          ],
          "variable": [
            {
              "key": "InvoiceElementReferenceNumber"
            }
          ]
        }
      },
      "status": "Bad Request",
      "code": 400,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"exception\": {\n    \"exceptionDetailList\": [\n      {\n        \"exceptionCode\": \"<integer>\",\n        \"exceptionDescription\": \"<string>\"\n      }\n    ],\n    \"serviceCode\": \"<string>\",\n    \"serviceCtx\": \"<string>\",\n    \"serviceName\": \"<string>\",\n    \"timestamp\": \"<dateTime>\",\n    \"referenceNumber\": \"20560508-TX-BC1107E227-31DE9417C0-CE\"\n  }\n}"
    },
    {
      "name": "Nieautoryzowany dostęp",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "description": "Added as a part of security scheme: apikey",
            "key": "SessionToken",
            "value": "<API Key>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/online/Invoice/Status/:InvoiceElementReferenceNumber",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "online",
            "Invoice",
            "Status",
            ":InvoiceElementReferenceNumber"
          ],
          "variable": [
            {
              "key": "InvoiceElementReferenceNumber"
            }
          ]
        }
      },
      "status": "Unauthorized",
      "code": 401,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"exception\": {\n    \"exceptionDetailList\": [\n      {\n        \"exceptionCode\": \"<integer>\",\n        \"exceptionDescription\": \"<string>\"\n      }\n    ],\n    \"serviceCode\": \"<string>\",\n    \"serviceCtx\": \"<string>\",\n    \"serviceName\": \"<string>\",\n    \"timestamp\": \"<dateTime>\",\n    \"referenceNumber\": \"20560508-TX-BC1107E227-31DE9417C0-CE\"\n  }\n}"
    },
    {
      "name": "Nie znaleziono wyszukiwanej treści",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "description": "Added as a part of security scheme: apikey",
            "key": "SessionToken",
            "value": "<API Key>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/online/Invoice/Status/:InvoiceElementReferenceNumber",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "online",
            "Invoice",
            "Status",
            ":InvoiceElementReferenceNumber"
          ],
          "variable": [
            {
              "key": "InvoiceElementReferenceNumber"
            }
          ]
        }
      },
      "status": "Not Found",
      "code": 404,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}