Back to Collection Items
#include <CkHttpW.h>
#include <CkXmlW.h>
#include <CkStringBuilderW.h>
#include <CkHttpResponseW.h>
void ChilkatSample(void)
{
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkHttpW http;
bool success;
// Use this online tool to generate code from sample XML: Generate Code to Create XML
// The following XML is sent in the request body.
// <?xml version="1.0" encoding="utf-8"?>
// <submission>
// <documents>
// <document>
// <issuer>
// <type>B</type>
// <id>674859545</id>
// <name>الشركة المصدرة</name>
// <address>
// <buildingNumber>عمارة 40</buildingNumber>
// <room>123</room>
// <floor>16</floor>
// <street>15 احمد فخرى</street>
// <landmark>مستشفى حسبو</landmark>
// <additionalInformation>بجانب مستشفى حسبو</additionalInformation>
// <governate>القاهرة</governate>
// <regionCity>مدينة نصر</regionCity>
// <postalCode>098607</postalCode>
// <country>EG</country>
// <branchID>0</branchID>
// </address>
// </issuer>
// <receiver>
// <type>B</type>
// <id>200000640</id>
// <name>receiver</name>
// <address>
// <buildingNumber>عمارة 15</buildingNumber>
// <room>110</room>
// <floor>8</floor>
// <street>16 حوش عيسى</street>
// <landmark>جامع الرحمة</landmark>
// <additionalInformation>بجانب جامع الرحمة</additionalInformation>
// <governate>البحيرة</governate>
// <regionCity>دمنهور</regionCity>
// <postalCode>098661</postalCode>
// <country>EG</country>
// </address>
// </receiver>
// <documentType>I</documentType>
// <documentTypeVersion>0.9</documentTypeVersion>
// <dateTimeIssued>2021-02-01T00:30:22</dateTimeIssued>
// <taxpayerActivityCode>4620</taxpayerActivityCode>
// <internalID>ID1</internalID>
// <purchaseOrderReference>1230</purchaseOrderReference>
// <purchaseOrderDescription>وصف طلب الدفع</purchaseOrderDescription>
// <salesOrderReference>1452</salesOrderReference>
// <salesOrderDescription>وصف بيع الطلب</salesOrderDescription>
// <proformaInvoiceNumber>1485</proformaInvoiceNumber>
// <payment>
// <bankName>البنك الاهلى</bankName>
// <bankAddress>15 شارع النصر</bankAddress>
// <bankAccountNo>1234567</bankAccountNo>
// <bankAccountIBAN/>
// <swiftCode/>
// <terms>لا يمكن التزوير</terms>
// </payment>
// <delivery>
// <approach>جوى</approach>
// <packaging>تغليف</packaging>
// <dateValidity>2020-06-29T17:30:22Z</dateValidity>
// <exportPort>ميناء اسكندرية</exportPort>
// <countryOfOrigin>LS</countryOfOrigin>
// <grossWeight>123.45</grossWeight>
// <netWeight>122.87</netWeight>
// <terms>لا يمكن الفتح</terms>
// </delivery>
// <invoiceLines>
// <invoiceLine>
// <description>حاسب الى</description>
// <itemType>GS1</itemType>
// <itemCode>10003752</itemCode>
// <unitType>EA</unitType>
// <quantity>100.12134</quantity>
// <unitValue>
// <currencySold>EGP</currencySold>
// <amountEGP>100</amountEGP>
// </unitValue>
// <salesTotal>10012.134</salesTotal>
// <discount>
// <rate>0</rate>
// <amount>0</amount>
// </discount>
// <taxableItems>
// <taxableItem>
// <taxType>T1</taxType>
// <amount>0.0</amount>
// <subType>V001</subType>
// <rate>0.00</rate>
// </taxableItem>
// </taxableItems>
// <internalCode>IC0</internalCode>
// <itemsDiscount>0</itemsDiscount>
// <netTotal>10012.134</netTotal>
// <totalTaxableFees>0.00</totalTaxableFees>
// <valueDifference>0</valueDifference>
// <total>10012.134</total>
// </invoiceLine>
// </invoiceLines>
// <totalSalesAmount>10012.134</totalSalesAmount>
// <totalDiscountAmount>0.0</totalDiscountAmount>
// <netAmount>10012.134</netAmount>
// <taxTotals>
// <taxTotal>
// <taxType>T1</taxType>
// <amount>0.00</amount>
// </taxTotal>
// </taxTotals>
// <totalAmount>10012.134</totalAmount>
// <totalItemsDiscountAmount>0.00</totalItemsDiscountAmount>
// <extraDiscountAmount>0.00</extraDiscountAmount>
// <signatures>
// <signature>
// <signatureType>I</signatureType>
// <value/>
// </signature>
// </signatures>
// </document>
// </documents>
// </submission>
//
CkXmlW xml;
xml.put_Tag(L"submission");
xml.UpdateChildContent(L"documents|document|issuer|type",L"B");
xml.UpdateChildContentInt(L"documents|document|issuer|id",674859545);
xml.UpdateChildContent(L"documents|document|issuer|name",L"الشركة المصدرة");
xml.UpdateChildContent(L"documents|document|issuer|address|buildingNumber",L"عمارة 40");
xml.UpdateChildContentInt(L"documents|document|issuer|address|room",123);
xml.UpdateChildContentInt(L"documents|document|issuer|address|floor",16);
xml.UpdateChildContent(L"documents|document|issuer|address|street",L"15 احمد فخرى");
xml.UpdateChildContent(L"documents|document|issuer|address|landmark",L"مستشفى حسبو");
xml.UpdateChildContent(L"documents|document|issuer|address|additionalInformation",L"بجانب مستشفى حسبو");
xml.UpdateChildContent(L"documents|document|issuer|address|governate",L"القاهرة");
xml.UpdateChildContent(L"documents|document|issuer|address|regionCity",L"مدينة نصر");
xml.UpdateChildContentInt(L"documents|document|issuer|address|postalCode",098607);
xml.UpdateChildContent(L"documents|document|issuer|address|country",L"EG");
xml.UpdateChildContentInt(L"documents|document|issuer|address|branchID",0);
xml.UpdateChildContent(L"documents|document|receiver|type",L"B");
xml.UpdateChildContentInt(L"documents|document|receiver|id",200000640);
xml.UpdateChildContent(L"documents|document|receiver|name",L"receiver");
xml.UpdateChildContent(L"documents|document|receiver|address|buildingNumber",L"عمارة 15");
xml.UpdateChildContentInt(L"documents|document|receiver|address|room",110);
xml.UpdateChildContentInt(L"documents|document|receiver|address|floor",8);
xml.UpdateChildContent(L"documents|document|receiver|address|street",L"16 حوش عيسى");
xml.UpdateChildContent(L"documents|document|receiver|address|landmark",L"جامع الرحمة");
xml.UpdateChildContent(L"documents|document|receiver|address|additionalInformation",L"بجانب جامع الرحمة");
xml.UpdateChildContent(L"documents|document|receiver|address|governate",L"البحيرة");
xml.UpdateChildContent(L"documents|document|receiver|address|regionCity",L"دمنهور");
xml.UpdateChildContentInt(L"documents|document|receiver|address|postalCode",098661);
xml.UpdateChildContent(L"documents|document|receiver|address|country",L"EG");
xml.UpdateChildContent(L"documents|document|documentType",L"I");
xml.UpdateChildContent(L"documents|document|documentTypeVersion",L"0.9");
xml.UpdateChildContent(L"documents|document|dateTimeIssued",L"2021-02-01T00:30:22");
xml.UpdateChildContentInt(L"documents|document|taxpayerActivityCode",4620);
xml.UpdateChildContent(L"documents|document|internalID",L"ID1");
xml.UpdateChildContentInt(L"documents|document|purchaseOrderReference",1230);
xml.UpdateChildContent(L"documents|document|purchaseOrderDescription",L"وصف طلب الدفع");
xml.UpdateChildContentInt(L"documents|document|salesOrderReference",1452);
xml.UpdateChildContent(L"documents|document|salesOrderDescription",L"وصف بيع الطلب");
xml.UpdateChildContentInt(L"documents|document|proformaInvoiceNumber",1485);
xml.UpdateChildContent(L"documents|document|payment|bankName",L"البنك الاهلى");
xml.UpdateChildContent(L"documents|document|payment|bankAddress",L"15 شارع النصر");
xml.UpdateChildContentInt(L"documents|document|payment|bankAccountNo",1234567);
xml.UpdateChildContent(L"documents|document|payment|bankAccountIBAN",L"");
xml.UpdateChildContent(L"documents|document|payment|swiftCode",L"");
xml.UpdateChildContent(L"documents|document|payment|terms",L"لا يمكن التزوير");
xml.UpdateChildContent(L"documents|document|delivery|approach",L"جوى");
xml.UpdateChildContent(L"documents|document|delivery|packaging",L"تغليف");
xml.UpdateChildContent(L"documents|document|delivery|dateValidity",L"2020-06-29T17:30:22Z");
xml.UpdateChildContent(L"documents|document|delivery|exportPort",L"ميناء اسكندرية");
xml.UpdateChildContent(L"documents|document|delivery|countryOfOrigin",L"LS");
xml.UpdateChildContent(L"documents|document|delivery|grossWeight",L"123.45");
xml.UpdateChildContent(L"documents|document|delivery|netWeight",L"122.87");
xml.UpdateChildContent(L"documents|document|delivery|terms",L"لا يمكن الفتح");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|description",L"حاسب الى");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|itemType",L"GS1");
xml.UpdateChildContentInt(L"documents|document|invoiceLines|invoiceLine|itemCode",10003752);
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|unitType",L"EA");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|quantity",L"100.12134");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|unitValue|currencySold",L"EGP");
xml.UpdateChildContentInt(L"documents|document|invoiceLines|invoiceLine|unitValue|amountEGP",100);
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|salesTotal",L"10012.134");
xml.UpdateChildContentInt(L"documents|document|invoiceLines|invoiceLine|discount|rate",0);
xml.UpdateChildContentInt(L"documents|document|invoiceLines|invoiceLine|discount|amount",0);
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|taxType",L"T1");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|amount",L"0.0");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|subType",L"V001");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|rate",L"0.00");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|internalCode",L"IC0");
xml.UpdateChildContentInt(L"documents|document|invoiceLines|invoiceLine|itemsDiscount",0);
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|netTotal",L"10012.134");
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|totalTaxableFees",L"0.00");
xml.UpdateChildContentInt(L"documents|document|invoiceLines|invoiceLine|valueDifference",0);
xml.UpdateChildContent(L"documents|document|invoiceLines|invoiceLine|total",L"10012.134");
xml.UpdateChildContent(L"documents|document|totalSalesAmount",L"10012.134");
xml.UpdateChildContent(L"documents|document|totalDiscountAmount",L"0.0");
xml.UpdateChildContent(L"documents|document|netAmount",L"10012.134");
xml.UpdateChildContent(L"documents|document|taxTotals|taxTotal|taxType",L"T1");
xml.UpdateChildContent(L"documents|document|taxTotals|taxTotal|amount",L"0.00");
xml.UpdateChildContent(L"documents|document|totalAmount",L"10012.134");
xml.UpdateChildContent(L"documents|document|totalItemsDiscountAmount",L"0.00");
xml.UpdateChildContent(L"documents|document|extraDiscountAmount",L"0.00");
xml.UpdateChildContent(L"documents|document|signatures|signature|signatureType",L"I");
xml.UpdateChildContent(L"documents|document|signatures|signature|value",L"");
// Adds the "Authorization: Bearer <access_token>" header.
http.put_AuthToken(L"<access_token>");
http.SetRequestHeader(L"Content-Type",L"application/xml");
CkStringBuilderW sbRequestBody;
xml.GetXmlSb(sbRequestBody);
CkHttpResponseW *resp = http.PTextSb(L"POST",L"https://domain.com/api/v1/documentsubmissions",sbRequestBody,L"utf-8",L"application/xml",false,false);
if (http.get_LastMethodSuccess() == false) {
wprintf(L"%s\n",http.lastErrorText());
return;
}
wprintf(L"%d\n",resp->get_StatusCode());
wprintf(L"%s\n",resp->bodyStr());
delete resp;
}
Curl Command
curl -X POST
-H "Authorization: Bearer <access_token>"
-H "Content-Type: application/xml"
-d '<submission>
<documents>
<document>
<issuer>
<type>B</type>
<id>674859545</id>
<name>الشركة المصدرة</name>
<address>
<buildingNumber>عمارة 40</buildingNumber>
<room>123</room>
<floor>16</floor>
<street>15 احمد فخرى</street>
<landmark>مستشفى حسبو</landmark>
<additionalInformation>بجانب مستشفى حسبو</additionalInformation>
<governate>القاهرة</governate>
<regionCity>مدينة نصر</regionCity>
<postalCode>098607</postalCode>
<country>EG</country>
<branchID>0</branchID>
</address>
</issuer>
<receiver>
<type>B</type>
<id>200000640</id>
<name>receiver</name>
<address>
<buildingNumber>عمارة 15</buildingNumber>
<room>110</room>
<floor>8</floor>
<street>16 حوش عيسى</street>
<landmark>جامع الرحمة</landmark>
<additionalInformation>بجانب جامع الرحمة</additionalInformation>
<governate>البحيرة</governate>
<regionCity>دمنهور</regionCity>
<postalCode>098661</postalCode>
<country>EG</country>
</address>
</receiver>
<documentType>I</documentType>
<documentTypeVersion>0.9</documentTypeVersion>
<dateTimeIssued>2021-02-01T00:30:22</dateTimeIssued>
<taxpayerActivityCode>4620</taxpayerActivityCode>
<internalID>ID1</internalID>
<purchaseOrderReference>1230</purchaseOrderReference>
<purchaseOrderDescription>وصف طلب الدفع</purchaseOrderDescription>
<salesOrderReference>1452</salesOrderReference>
<salesOrderDescription>وصف بيع الطلب</salesOrderDescription>
<proformaInvoiceNumber>1485</proformaInvoiceNumber>
<payment>
<bankName>البنك الاهلى</bankName>
<bankAddress>15 شارع النصر</bankAddress>
<bankAccountNo>1234567</bankAccountNo>
<bankAccountIBAN></bankAccountIBAN>
<swiftCode></swiftCode>
<terms>لا يمكن التزوير</terms>
</payment>
<delivery>
<approach>جوى</approach>
<packaging>تغليف</packaging>
<dateValidity>2020-06-29T17:30:22Z</dateValidity>
<exportPort>ميناء اسكندرية</exportPort>
<countryOfOrigin>LS</countryOfOrigin>
<grossWeight>123.45</grossWeight>
<netWeight>122.87</netWeight>
<terms>لا يمكن الفتح</terms>
</delivery>
<invoiceLines>
<invoiceLine>
<description>حاسب الى</description>
<itemType>GS1</itemType>
<itemCode>10003752</itemCode>
<unitType>EA</unitType>
<quantity>100.12134</quantity>
<unitValue>
<currencySold>EGP</currencySold>
<amountEGP>100</amountEGP>
</unitValue>
<salesTotal>10012.134</salesTotal>
<discount>
<rate>0</rate>
<amount>0</amount>
</discount>
<taxableItems>
<taxableItem>
<taxType>T1</taxType>
<amount>0.0</amount>
<subType>V001</subType>
<rate>0.00</rate>
</taxableItem>
</taxableItems>
<internalCode>IC0</internalCode>
<itemsDiscount>0</itemsDiscount>
<netTotal>10012.134</netTotal>
<totalTaxableFees>0.00</totalTaxableFees>
<valueDifference>0</valueDifference>
<total>10012.134</total>
</invoiceLine>
</invoiceLines>
<totalSalesAmount>10012.134</totalSalesAmount>
<totalDiscountAmount>0.0</totalDiscountAmount>
<netAmount>10012.134</netAmount>
<taxTotals>
<taxTotal>
<taxType>T1</taxType>
<amount>0.00</amount>
</taxTotal>
</taxTotals>
<totalAmount>10012.134</totalAmount>
<totalItemsDiscountAmount>0.00</totalItemsDiscountAmount>
<extraDiscountAmount>0.00</extraDiscountAmount>
<signatures>
<signature>
<signatureType>I</signatureType>
<value></value>
</signature>
</signatures>
</document>
</documents>
</submission>'
https://domain.com/api/v1/documentsubmissions
Postman Collection Item JSON
{
"name": "1.2 Submit Documents (XML)",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{generatedAccessToken}}",
"type": "string"
}
]
},
"method": "POST",
"header": [
{
"key": "Content-Type",
"value": "application/xml"
}
],
"body": {
"mode": "raw",
"raw": "<submission>\r\n <documents>\r\n <document>\r\n <issuer>\r\n <type>B</type>\r\n <id>674859545</id>\r\n <name>الشركة المصدرة</name>\r\n <address>\r\n <buildingNumber>عمارة 40</buildingNumber>\r\n <room>123</room>\r\n <floor>16</floor>\r\n <street>15 احمد فخرى</street>\r\n <landmark>مستشفى حسبو</landmark>\r\n <additionalInformation>بجانب مستشفى حسبو</additionalInformation>\r\n <governate>القاهرة</governate>\r\n <regionCity>مدينة نصر</regionCity>\r\n <postalCode>098607</postalCode>\r\n <country>EG</country>\r\n <branchID>0</branchID>\r\n </address>\r\n </issuer>\r\n <receiver>\r\n <type>B</type>\r\n <id>200000640</id>\r\n <name>receiver</name>\r\n <address>\r\n <buildingNumber>عمارة 15</buildingNumber>\r\n <room>110</room>\r\n <floor>8</floor>\r\n <street>16 حوش عيسى</street>\r\n <landmark>جامع الرحمة</landmark>\r\n <additionalInformation>بجانب جامع الرحمة</additionalInformation>\r\n <governate>البحيرة</governate>\r\n <regionCity>دمنهور</regionCity>\r\n <postalCode>098661</postalCode>\r\n <country>EG</country>\r\n </address>\r\n </receiver>\r\n <documentType>I</documentType>\r\n <documentTypeVersion>0.9</documentTypeVersion>\r\n <dateTimeIssued>2021-02-01T00:30:22</dateTimeIssued>\r\n <taxpayerActivityCode>4620</taxpayerActivityCode>\r\n <internalID>ID1</internalID>\r\n <purchaseOrderReference>1230</purchaseOrderReference>\r\n <purchaseOrderDescription>وصف طلب الدفع</purchaseOrderDescription>\r\n <salesOrderReference>1452</salesOrderReference>\r\n <salesOrderDescription>وصف بيع الطلب</salesOrderDescription>\r\n <proformaInvoiceNumber>1485</proformaInvoiceNumber>\r\n \r\n <payment>\r\n <bankName>البنك الاهلى</bankName>\r\n <bankAddress>15 شارع النصر</bankAddress>\r\n <bankAccountNo>1234567</bankAccountNo>\r\n <bankAccountIBAN></bankAccountIBAN>\r\n <swiftCode></swiftCode>\r\n <terms>لا يمكن التزوير</terms>\r\n </payment>\r\n <delivery>\r\n <approach>جوى</approach>\r\n <packaging>تغليف</packaging>\r\n <dateValidity>2020-06-29T17:30:22Z</dateValidity>\r\n <exportPort>ميناء اسكندرية</exportPort>\r\n <countryOfOrigin>LS</countryOfOrigin>\r\n <grossWeight>123.45</grossWeight>\r\n <netWeight>122.87</netWeight>\r\n <terms>لا يمكن الفتح</terms>\r\n </delivery>\r\n <invoiceLines>\r\n <invoiceLine>\r\n <description>حاسب الى</description>\r\n <itemType>GS1</itemType>\r\n <itemCode>10003752</itemCode>\r\n <unitType>EA</unitType>\r\n <quantity>100.12134</quantity>\r\n <unitValue>\r\n <currencySold>EGP</currencySold>\r\n <amountEGP>100</amountEGP>\r\n </unitValue>\r\n \r\n <salesTotal>10012.134</salesTotal>\r\n <discount>\r\n <rate>0</rate>\r\n <amount>0</amount>\r\n </discount>\r\n <taxableItems>\r\n <taxableItem>\r\n <taxType>T1</taxType>\r\n <amount>0.0</amount>\r\n <subType>V001</subType>\r\n <rate>0.00</rate>\r\n </taxableItem>\r\n \r\n </taxableItems>\r\n <internalCode>IC0</internalCode>\r\n <itemsDiscount>0</itemsDiscount>\r\n <netTotal>10012.134</netTotal>\r\n <totalTaxableFees>0.00</totalTaxableFees>\r\n <valueDifference>0</valueDifference>\r\n <total>10012.134</total>\r\n </invoiceLine>\r\n </invoiceLines>\r\n <totalSalesAmount>10012.134</totalSalesAmount>\r\n <totalDiscountAmount>0.0</totalDiscountAmount>\r\n <netAmount>10012.134</netAmount>\r\n <taxTotals>\r\n <taxTotal>\r\n <taxType>T1</taxType>\r\n <amount>0.00</amount>\r\n </taxTotal>\r\n </taxTotals>\r\n <totalAmount>10012.134</totalAmount>\r\n <totalItemsDiscountAmount>0.00</totalItemsDiscountAmount>\r\n <extraDiscountAmount>0.00</extraDiscountAmount>\r\n <signatures>\r\n <signature>\r\n <signatureType>I</signatureType>\r\n <value></value>\r\n </signature>\r\n </signatures>\r\n \r\n </document>\r\n </documents>\r\n</submission>\r\n"
},
"url": {
"raw": "{{apiBaseUrl}}/api/v1/documentsubmissions",
"host": [
"{{apiBaseUrl}}"
],
"path": [
"api",
"v1",
"documentsubmissions"
]
},
"description": "Remember that you can include multiple documents within the same submission."
},
"response": [
]
}