Back to Collection Items
func chilkatTest() {
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let http = CkoHttp()!
var success: Bool
// 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>
//
let xml = CkoXml()!
xml.tag = "submission"
xml.updateChildContent("documents|document|issuer|type", value: "B")
xml.updateChildContentInt("documents|document|issuer|id", value: 674859545)
xml.updateChildContent("documents|document|issuer|name", value: "الشركة المصدرة")
xml.updateChildContent("documents|document|issuer|address|buildingNumber", value: "عمارة 40")
xml.updateChildContentInt("documents|document|issuer|address|room", value: 123)
xml.updateChildContentInt("documents|document|issuer|address|floor", value: 16)
xml.updateChildContent("documents|document|issuer|address|street", value: "15 احمد فخرى")
xml.updateChildContent("documents|document|issuer|address|landmark", value: "مستشفى حسبو")
xml.updateChildContent("documents|document|issuer|address|additionalInformation", value: "بجانب مستشفى حسبو")
xml.updateChildContent("documents|document|issuer|address|governate", value: "القاهرة")
xml.updateChildContent("documents|document|issuer|address|regionCity", value: "مدينة نصر")
xml.updateChildContentInt("documents|document|issuer|address|postalCode", value: 098607)
xml.updateChildContent("documents|document|issuer|address|country", value: "EG")
xml.updateChildContentInt("documents|document|issuer|address|branchID", value: 0)
xml.updateChildContent("documents|document|receiver|type", value: "B")
xml.updateChildContentInt("documents|document|receiver|id", value: 200000640)
xml.updateChildContent("documents|document|receiver|name", value: "receiver")
xml.updateChildContent("documents|document|receiver|address|buildingNumber", value: "عمارة 15")
xml.updateChildContentInt("documents|document|receiver|address|room", value: 110)
xml.updateChildContentInt("documents|document|receiver|address|floor", value: 8)
xml.updateChildContent("documents|document|receiver|address|street", value: "16 حوش عيسى")
xml.updateChildContent("documents|document|receiver|address|landmark", value: "جامع الرحمة")
xml.updateChildContent("documents|document|receiver|address|additionalInformation", value: "بجانب جامع الرحمة")
xml.updateChildContent("documents|document|receiver|address|governate", value: "البحيرة")
xml.updateChildContent("documents|document|receiver|address|regionCity", value: "دمنهور")
xml.updateChildContentInt("documents|document|receiver|address|postalCode", value: 098661)
xml.updateChildContent("documents|document|receiver|address|country", value: "EG")
xml.updateChildContent("documents|document|documentType", value: "I")
xml.updateChildContent("documents|document|documentTypeVersion", value: "0.9")
xml.updateChildContent("documents|document|dateTimeIssued", value: "2021-02-01T00:30:22")
xml.updateChildContentInt("documents|document|taxpayerActivityCode", value: 4620)
xml.updateChildContent("documents|document|internalID", value: "ID1")
xml.updateChildContentInt("documents|document|purchaseOrderReference", value: 1230)
xml.updateChildContent("documents|document|purchaseOrderDescription", value: "وصف طلب الدفع")
xml.updateChildContentInt("documents|document|salesOrderReference", value: 1452)
xml.updateChildContent("documents|document|salesOrderDescription", value: "وصف بيع الطلب")
xml.updateChildContentInt("documents|document|proformaInvoiceNumber", value: 1485)
xml.updateChildContent("documents|document|payment|bankName", value: "البنك الاهلى")
xml.updateChildContent("documents|document|payment|bankAddress", value: "15 شارع النصر")
xml.updateChildContentInt("documents|document|payment|bankAccountNo", value: 1234567)
xml.updateChildContent("documents|document|payment|bankAccountIBAN", value: "")
xml.updateChildContent("documents|document|payment|swiftCode", value: "")
xml.updateChildContent("documents|document|payment|terms", value: "لا يمكن التزوير")
xml.updateChildContent("documents|document|delivery|approach", value: "جوى")
xml.updateChildContent("documents|document|delivery|packaging", value: "تغليف")
xml.updateChildContent("documents|document|delivery|dateValidity", value: "2020-06-29T17:30:22Z")
xml.updateChildContent("documents|document|delivery|exportPort", value: "ميناء اسكندرية")
xml.updateChildContent("documents|document|delivery|countryOfOrigin", value: "LS")
xml.updateChildContent("documents|document|delivery|grossWeight", value: "123.45")
xml.updateChildContent("documents|document|delivery|netWeight", value: "122.87")
xml.updateChildContent("documents|document|delivery|terms", value: "لا يمكن الفتح")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|description", value: "حاسب الى")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|itemType", value: "GS1")
xml.updateChildContentInt("documents|document|invoiceLines|invoiceLine|itemCode", value: 10003752)
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|unitType", value: "EA")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|quantity", value: "100.12134")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|unitValue|currencySold", value: "EGP")
xml.updateChildContentInt("documents|document|invoiceLines|invoiceLine|unitValue|amountEGP", value: 100)
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|salesTotal", value: "10012.134")
xml.updateChildContentInt("documents|document|invoiceLines|invoiceLine|discount|rate", value: 0)
xml.updateChildContentInt("documents|document|invoiceLines|invoiceLine|discount|amount", value: 0)
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|taxType", value: "T1")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|amount", value: "0.0")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|subType", value: "V001")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|taxableItems|taxableItem|rate", value: "0.00")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|internalCode", value: "IC0")
xml.updateChildContentInt("documents|document|invoiceLines|invoiceLine|itemsDiscount", value: 0)
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|netTotal", value: "10012.134")
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|totalTaxableFees", value: "0.00")
xml.updateChildContentInt("documents|document|invoiceLines|invoiceLine|valueDifference", value: 0)
xml.updateChildContent("documents|document|invoiceLines|invoiceLine|total", value: "10012.134")
xml.updateChildContent("documents|document|totalSalesAmount", value: "10012.134")
xml.updateChildContent("documents|document|totalDiscountAmount", value: "0.0")
xml.updateChildContent("documents|document|netAmount", value: "10012.134")
xml.updateChildContent("documents|document|taxTotals|taxTotal|taxType", value: "T1")
xml.updateChildContent("documents|document|taxTotals|taxTotal|amount", value: "0.00")
xml.updateChildContent("documents|document|totalAmount", value: "10012.134")
xml.updateChildContent("documents|document|totalItemsDiscountAmount", value: "0.00")
xml.updateChildContent("documents|document|extraDiscountAmount", value: "0.00")
xml.updateChildContent("documents|document|signatures|signature|signatureType", value: "I")
xml.updateChildContent("documents|document|signatures|signature|value", value: "")
// Adds the "Authorization: Bearer <access_token>" header.
http.authToken = "<access_token>"
http.setRequestHeader("Content-Type", value: "application/xml")
let sbRequestBody = CkoStringBuilder()!
xml.getSb(sbRequestBody)
var resp: CkoHttpResponse? = http.pTextSb("POST", url: "https://domain.com/api/v1/documentsubmissions", textData: sbRequestBody, charset: "utf-8", contentType: "application/xml", md5: false, gzip: false)
if http.lastMethodSuccess == false {
print("\(http.lastErrorText!)")
return
}
print("\(resp!.statusCode.intValue)")
print("\(resp!.bodyStr!)")
resp = nil
}
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": [
]
}