From cce5da0335eb5d9574ac2cca497ac4c49296660e Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 16 Jun 2025 10:33:17 -0700 Subject: [PATCH 1/8] AIS-12465: - Update the public Concur API documentation for v4 tax data APIs --- .../v4.accountingintegration-schema.markdown | 45 +- .../v4.accountingintegration-taxData.markdown | 581 ++++++++++++++++++ 2 files changed, 625 insertions(+), 1 deletion(-) create mode 100644 src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index 9a1cf8133e..3f9e849e01 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -129,6 +129,49 @@ Please note that if no additional configuration is needed the list of configurat `name`|`string`|-| **Required** List name in the ERP. | `isDeleted`|`boolean`|`true`/`false`| **PATCH method** If `true`, this record is marked for deletion.| +### Update ERP Tax Data Request + +|Name|Type|Format|Description| +|---|---|---|---| +`data`|`array`|[`ERP Tax Data`](#erp-taxData)|List of the ERP Tax Data.| +`links`|`array`|[`Links`](#links)|**GET method** The array of `href`s to retrieve the next page.| +`deleteAll`|`boolean`|`true`/`false`|**PUT method** If `true`, delete all data for the given object type before processing the new data.| + +### ERP Tax Data + +|Name|Type|Format|Description| +|---|---|---|---| +`countryCode`|`string`|ISO 3166-1 alpha-2|**Required** Two-letter country code for the tax data as specified in ISO 3166-1 alpha-2.| +`countryName`|`string`|-|Country name for the tax data.| +`stateEntries`|`array`|[`State Entries`](#state-entries)|**Required** List of state/province specific tax data. If the data is not state specific, this field will hold the country tax data.| +`isDeleted`|`boolean`|`true`/`false`|**PUT method** If `true`, this record is marked for deletion.| + +### State Entries + +|Name|Type|Format|Description| +|---|---|---|---| +`stateCode`|`string`|-|ERP state/province code for the state/province specific tax data. If the data is not state specific, this field will be null.| +`stateDesc`|`string`|-|Description for the ERP state/province specific tax data. If the data is not state specific, this field will be null.| +`reclaimEntries`|`array`|[`Reclaim Entries`](#reclaim-entries) |**Required** List of ERP reclaim data for the state/province specific tax data or country tax data if not state/province specific.| + +### Reclaim Entries + +|Name|Type|Format|Description| +|---|---|---|---| +`reclaimCode`|`string`|-|**Required** ERP reclaim code.| +`reclaimDesc`|`string`|-|Description for the ERP reclaim rate.| +`reclaimDetails`|`array`|[`Reclaim Details`](#reclaim-details)|**Required* Details of the ERP reclaim rate.| + +### Reclaim Details + +|Name|Type|Format|Description| +|---|---|---|---| +`taxCode`|`string`|-|**Required** ERP tax code.| +`taxRateDesc`|`string`|-|Description for the ERP tax rate.| +`percentage`|`number`|-|The percentage of the ERP tax rate.| +`validFrom`|`string`|-|**Required** The start date of the ERP tax rate in ISO-8601 simple date format(YYYY-MM-dd).| +`validTo`|`string`|-|The end date of the ERP tax rate in ISO-8601 simple date format(YYYY-MM-dd).| + ### Update ERP Vendors Request |Name|Type|Format|Description| @@ -349,4 +392,4 @@ Please note that if no additional configuration is needed the list of configurat |Name|Type|Format|Description| |---|---|---|---| `STANDARD`|`string`|-| Entity is in Standard Edition. | -`PROFESSIONAL`|`string`|-| Entity is in Professional Edition. | \ No newline at end of file +`PROFESSIONAL`|`string`|-| Entity is in Professional Edition. | diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown new file mode 100644 index 0000000000..f0dec8a94f --- /dev/null +++ b/src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown @@ -0,0 +1,581 @@ +--- +title: Managing ERP Tax Data in SAP Concur +layout: reference +--- + +# Accounting Integration v4 - Manage ERP Tax Data + +{% include prerelease.html %} + +Return to [Accounting Integration v4 - Getting Started](/api-reference/accounting-integration/v4.accountingintegration-get-started.html) + +## Add Tax Data + +This endpoint allows users to add ERP Tax data that is cached in the SAP Concur system. Upon +receiving the data, the server will return immediately with a response payload containing the request current status and +a link to check the request status progress, then process the request asynchronously. + +In addition, events will be published to notify the API consumers of important updates. For more information, please +see [Accounting Integration Events](/event-topics/event-subscription-topic-accountingintegration.html). + +### Limitations + +* Access to this documentation does not provide access to the API. +* Adding Tax Data through this API will not automatically import those tax data into the SAP Concur system, it only caches the ERP + data. Customers will need to add the tax data in the SAP Concur system via the provided UI screens. +* The total request payload size should not exceed 4 MB. +* Any given ERP record size should not exceed 200 KB. +* This endpoint can be called once per second. + +### Scopes + +`spend.accountingintegration.write` - Refer to [Scope Usage](./v4.accountingintegration-get-started.html#scope-usage) for full details. + +### URI + +```shell +POST /accountingintegration/v4/companies/{companyId}/erps/{erpId}/taxData +``` + +### Parameters + +Name|Type|Format|Description +---|---|---|--- +`companyId`|`string`|`UUID`|**Required** Universally unique identifier of the company. +`erpId`|`string`|`UUID`|**Required** Universally unique identifier of the ERP for the integration. + +### Payloads + +* Request: [Add ERP Tax Data Request](./v4.accountingintegration-schema.html#list-of-taxData) +* Request: [RequestStatus](./v4.accountingintegration-schema.html#request-status), [ErrorMessage](./v4.accountingintegration-schema.html#errorMessage) + +### Examples + +#### Request: add tax data + +```shell +POST /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/taxData +``` + +```json +{ + "data": [ + { + "countryCode": "DE", + "countryDesc": "Germany", + "stateEntries": [ + { + "stateCode": null, + "stateDesc": null, + "reclaimEntries": [ + { + "reclaimCode": "V0", + "reclaimDesc": "No tax procedure", + "reclaimDetails": [ + { + "taxCode": "V0T", + "taxRateDesc": null, + "percentage": 0, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "V2", + "reclaimDesc": "7% domestic input tax", + "reclaimDetails": [ + { + "taxCode": "V2T", + "taxRateDesc": null, + "percentage": 7, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "V1", + "reclaimDesc": "19% domestic input tax", + "reclaimDetails": [ + { + "taxCode": "V1T", + "taxRateDesc": null, + "percentage": 19, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "Z4", + "reclaimDesc": "Partly deductible tax, 70% VAT 30% NVV", + "reclaimDetails": [ + { + "taxCode": "MWVS", + "taxRateDesc": "Input tax", + "percentage": 13.3, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + }, + { + "taxCode": "MWVZ", + "taxRateDesc": "Non-deduct.Input Tax", + "percentage": 5.7, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + }, + { + "taxCode": "MWNS", + "taxRateDesc": "Input tax", + "percentage": 14.7, + "validFrom": "2025-01-01", + "validTo": "9999-12-31" + }, + { + "taxCode": "MWVZ", + "taxRateDesc": "Non-deduct.Input Tax", + "percentage": 6.3, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + } + ] + } + ] + } + ] + }, + { + "countryCode": "CA", + "countryDesc": "Canada", + "stateEntries": [ + { + "stateCode": "CA-ON", + "stateDesc": "Ontario", + "reclaimEntries": [ + { + "reclaimCode": "S9", + "reclaimDesc": "GST 50% Deductible + PST Non-Deductable (NVV)", + "reclaimDetails": [ + { + "taxCode": "JC1E", + "taxRateDesc": "A/P GST Recoverable", + "percentage": 2.5, + "validFrom": "2020-08-01", + "validTo": "9999-12-31" + }, + { + "taxCode": "JC2E", + "taxRateDesc": "A/P GST Distributed", + "percentage": 2.5, + "validFrom": "2025-08-01", + "validTo": "9999-12-31" + } + ] + } + ] + } + ] + } + ] +} +``` + +#### Response + +```shell +202 Accepted +``` + +```json +{ + "status": "PROCESSING", + "requestId": "3f1508be-9b55-400f-8bac-475015567a52", + "links": { + "errors": { + "href": "/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/requests/3f1508be-9b55-400f-8bac-475015567a52/errors" + }, + "self": { + "href": "/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/requests/3f1508be-9b55-400f-8bac-475015567a52" + } + } +} +``` + +## Update Tax Data + +This endpoint allows users to replace ERP Tax data that is cached in the SAP Concur system. Upon +receiving the data, the server will return immediately with a response payload containing the request current status and +a link to check the request status progress, then process the request asynchronously. + +In addition, events will be published to notify the API consumers of important updates. For more information, please +see [Accounting Integration Events](/event-topics/event-subscription-topic-accountingintegration.html). + +### Limitations + + +* Access to this documentation does not provide access to the API. +* Updating Tax Data through this API will not automatically import those tax data into the SAP Concur system, it only caches the ERP + data. Customers will need to add the tax data in the SAP Concur system via the provided UI screens. +* The total request payload size should not exceed 4 MB. +* Any given ERP record size should not exceed 200 KB. +* This endpoint can be called once per second. + +### Scopes + +`spend.accountingintegration.write` - Refer to [Scope Usage](./v4.accountingintegration-get-started.html#scope-usage) for full details. + +### URI + +```shell +PUT /accountingintegration/v4/companies/{companyId}/erps/{erpId}/taxData +``` + +### Parameters + +Name|Type|Format|Description +---|---|---|--- +`companyId`|`string`|`UUID`|**Required** Universally unique identifier of the company. +`erpId`|`string`|`UUID`|**Required** Universally unique identifier of the ERP for the integration. + +### Payloads + +* Request: [Update ERP Tax Data Request](./v4.accountingintegration-schema.html#list-of-taxData) +* Request: [RequestStatus](./v4.accountingintegration-schema.html#request-status), [ErrorMessage](./v4.accountingintegration-schema.html#errorMessage) + +### Examples + +#### Request: delete all the cached tax data in the SAP Concur system + +```shell +PUT /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/taxData +``` + +```json +{ + "deleteAll": true +} +``` +#### Request: replace tax data + +```shell +PUT /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/taxData +``` + +```json +{ + "data": [ + { + "countryCode": "DE", + "countryDesc": "Germany", + "stateEntries": [ + { + "stateCode": null, + "stateDesc": null, + "reclaimEntries": [ + { + "reclaimCode": "V0", + "reclaimDesc": "No tax procedure", + "reclaimDetails": [ + { + "taxCode": "V0T", + "taxRateDesc": null, + "percentage": 0, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "V2", + "reclaimDesc": "7% domestic input tax", + "reclaimDetails": [ + { + "taxCode": "V2T", + "taxRateDesc": null, + "percentage": 7, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "V1", + "reclaimDesc": "19% domestic input tax", + "reclaimDetails": [ + { + "taxCode": "V1T", + "taxRateDesc": null, + "percentage": 19, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "Z4", + "reclaimDesc": "Partly deductible tax, 70% VAT 30% NVV", + "reclaimDetails": [ + { + "taxCode": "MWVS", + "taxRateDesc": "Input tax", + "percentage": 13.3, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + }, + { + "taxCode": "MWVZ", + "taxRateDesc": "Non-deduct.Input Tax", + "percentage": 5.7, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + }, + { + "taxCode": "MWNS", + "taxRateDesc": "Input tax", + "percentage": 14.7, + "validFrom": "2025-01-01", + "validTo": "9999-12-31" + }, + { + "taxCode": "MWVZ", + "taxRateDesc": "Non-deduct.Input Tax", + "percentage": 6.3, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + } + ] + } + ] + } + ] + }, + { + "countryCode": "CA", + "countryDesc": "Canada", + "stateEntries": [ + { + "stateCode": "CA-ON", + "stateDesc": "Ontario", + "reclaimEntries": [ + { + "reclaimCode": "S9", + "reclaimDesc": "GST 50% Deductible + PST Non-Deductable (NVV)", + "reclaimDetails": [ + { + "taxCode": "JC1E", + "taxRateDesc": "A/P GST Recoverable", + "percentage": 2.5, + "validFrom": "2020-08-01", + "validTo": "9999-12-31" + }, + { + "taxCode": "JC2E", + "taxRateDesc": "A/P GST Distributed", + "percentage": 2.5, + "validFrom": "2025-08-01", + "validTo": "9999-12-31" + } + ] + } + ] + } + ] + } + ] +} +``` + +#### Response + +```shell +202 Accepted +``` + +```json +{ + "status": "PROCESSING", + "requestId": "3f1508be-9b55-400f-8bac-475015567a52", + "links": { + "errors": { + "href": "/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/requests/3f1508be-9b55-400f-8bac-475015567a52/errors" + }, + "self": { + "href": "/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/requests/3f1508be-9b55-400f-8bac-475015567a52" + } + } +} +``` + +## Retrieve Tax Data + +This endpoint's purpose is to retrieve the ERP tax data that is cached in the SAP Concur system. + +### Limitations + +* Navigate via the `links` attribute in the response payload to retrieve the next page, if the page size exceeds 1 MB. + +### Scopes + +`spend.accountingintegration.read` - Refer to [Scope Usage](./v4.accountingintegration-get-started.html#scope-usage) for full details. + +### URI + +```shell +GET /accountingintegration/v4/companies/{companyId}/erps/{erpId}/taxData +``` + +### Parameters + +Name|Type|Format|Description +---|---|---|--- +`companyId`|`string`|`UUID`|**Required** Universally unique identifier of the company. +`erpId`|`string`|`UUID`|**Required** Universally unique identifier of the ERP for the integration. + +### Payloads + +* Request: None +* Response: [List of Tax Data](./v4.accountingintegration-schema.html#list-of-taxData), [ErrorMessage](./v4.accountingintegration-schema.html#errorMessage) + +### Examples + +#### Request + +```shell +GET /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/taxData +``` + +#### Response + +```shell +200 OK +``` + +```json +{ + "data": [ + { + "countryCode": "DE", + "countryDesc": "Germany", + "stateEntries": [ + { + "stateCode": null, + "stateDesc": null, + "reclaimEntries": [ + { + "reclaimCode": "V0", + "reclaimDesc": "No tax procedure", + "reclaimDetails": [ + { + "taxCode": "V0T", + "taxRateDesc": null, + "percentage": 0, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "V2", + "reclaimDesc": "7% domestic input tax", + "reclaimDetails": [ + { + "taxCode": "V2T", + "taxRateDesc": null, + "percentage": 7, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "V1", + "reclaimDesc": "19% domestic input tax", + "reclaimDetails": [ + { + "taxCode": "V1T", + "taxRateDesc": null, + "percentage": 19, + "validFrom": "2019-01-01", + "validTo": "9999-12-31" + } + ] + }, + { + "reclaimCode": "Z4", + "reclaimDesc": "Partly deductible tax, 70% VAT 30% NVV", + "reclaimDetails": [ + { + "taxCode": "MWVS", + "taxRateDesc": "Input tax", + "percentage": 13.3, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + }, + { + "taxCode": "MWVZ", + "taxRateDesc": "Non-deduct.Input Tax", + "percentage": 5.7, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + }, + { + "taxCode": "MWNS", + "taxRateDesc": "Input tax", + "percentage": 14.7, + "validFrom": "2025-01-01", + "validTo": "9999-12-31" + }, + { + "taxCode": "MWVZ", + "taxRateDesc": "Non-deduct.Input Tax", + "percentage": 6.3, + "validFrom": "2020-08-01", + "validTo": "2024-12-31" + } + ] + } + ] + } + ] + }, + { + "countryCode": "CA", + "countryDesc": "Canada", + "stateEntries": [ + { + "stateCode": "CA-ON", + "stateDesc": "Ontario", + "reclaimEntries": [ + { + "reclaimCode": "S9", + "reclaimDesc": "GST 50% Deductible + PST Non-Deductable (NVV)", + "reclaimDetails": [ + { + "taxCode": "JC1E", + "taxRateDesc": "A/P GST Recoverable", + "percentage": 2.5, + "validFrom": "2020-08-01", + "validTo": "9999-12-31" + }, + { + "taxCode": "JC2E", + "taxRateDesc": "A/P GST Distributed", + "percentage": 2.5, + "validFrom": "2025-08-01", + "validTo": "9999-12-31" + } + ] + } + ] + } + ] + } + ], + "links": { + "next": { + "href": "/accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/taxData?next=string" + } + } +} +``` From 116596e3b822e24755f8a2bcdfe72c38a4b1a4a6 Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 16 Jun 2025 11:06:24 -0700 Subject: [PATCH 2/8] AIS-12465: - update documentation for additional Feature flags --- .../v4.accountingintegration-schema.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index 3f9e849e01..abfd665f24 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -33,6 +33,8 @@ Return to [Accounting Integration v4 - Getting Started](/api-reference/accountin |---|---|---|---| `SUPPORTS_RECEIPT_POSTING`|`string`|-|Pass this flag if ERP supports Expense receipts and Invoice images.| `SUPPORTS_LIABILITY_ACCOUNT`|`string`|-|Pass this flag if ERP supports Liability account.| +`DISABLE_INVOICE_INTEGRATION`|`string`|-|Pass this flag if ERP does not supports Invoice Integration.| +`ENABLE_TAX_INTEGRATION`|`string`|-|Pass this flag if ERP supports mapping Tax Codes and Reclaim Codes.| ### Feature From e3367481ce149449a19f51435d81aecee7925e56 Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 16 Jun 2025 11:17:18 -0700 Subject: [PATCH 3/8] AIS-12465: - Add country code to MappingsResponse->FileMapping->PaymentType schema --- .../v4.accountingintegration-schema.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index abfd665f24..7efd587020 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -253,6 +253,7 @@ Please note that if no additional configuration is needed the list of configurat `name`| `string` | - | Payment type name.| `creditCardVendorId`| `string` | - | Credit card vendor ID. | `currencyCode`| `string` | `ISO 4217` | 3-letter currency code.| +`countryCode`|`string`|`ISO 3166`|2-letter country code.| ### ListMapping From dfc43cb12a3250243fcfd2bf2ab2000e034db8c1 Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 16 Jun 2025 13:09:08 -0700 Subject: [PATCH 4/8] AIS-12465: - Add missing schema and update to Mappings markdown --- .../v4.accountingintegration-mappings.markdown | 2 +- .../v4.accountingintegration-schema.markdown | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-mappings.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-mappings.markdown index 7ae15e698e..9f0b1d5688 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-mappings.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-mappings.markdown @@ -94,7 +94,7 @@ GET /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erp "name": "string", "creditCardVendorId": "string", "currencyCode": "string", - "cashAccountCode": "string", + "countryCode": "string", "erpCreditCardAccount": "string" } ], diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index 7efd587020..4b13ee68be 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -244,7 +244,7 @@ Please note that if no additional configuration is needed the list of configurat ### PaymentType |Name|Type|Format|Description| -|---|---|---|---| +|---|---|--|---| `patKey`| `string` | - | Payment type key.| `transactionType`| `string` | - | Transaction type. Supported values: `BILL` for Bill posting, `CREDIT CARD` for Credit Card posting, `GENERAL JOURNAL` for General Journal posting | `liabilityAccountCode` | `string` | - | Liability account code.| @@ -254,6 +254,7 @@ Please note that if no additional configuration is needed the list of configurat `creditCardVendorId`| `string` | - | Credit card vendor ID. | `currencyCode`| `string` | `ISO 4217` | 3-letter currency code.| `countryCode`|`string`|`ISO 3166`|2-letter country code.| +`erpCreditCardAccount`|`string`|-|ERP Credit Card Account.| ### ListMapping From ba884606b78852c4793e35b46ef157b62944e677 Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 16 Jun 2025 13:18:49 -0700 Subject: [PATCH 5/8] AIS-12465: - fixing formatting --- .../v4.accountingintegration-schema.markdown | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index 4b13ee68be..80a39f1666 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -243,18 +243,18 @@ Please note that if no additional configuration is needed the list of configurat ### PaymentType -|Name|Type|Format|Description| -|---|---|--|---| -`patKey`| `string` | - | Payment type key.| -`transactionType`| `string` | - | Transaction type. Supported values: `BILL` for Bill posting, `CREDIT CARD` for Credit Card posting, `GENERAL JOURNAL` for General Journal posting | -`liabilityAccountCode` | `string` | - | Liability account code.| -`postingDate` | `string` | - | Posting date: `REPORTCREATE` for report created date, `REPORTSUBMIT` for report submitted date, or `PROCESSORAPPROVAL` for processor approval date. | -`clearingAccountCode` | `string` | - | Clearing account code.| -`name`| `string` | - | Payment type name.| -`creditCardVendorId`| `string` | - | Credit card vendor ID. | +|Name|Type| Format |Description| +|---|---|---|---| +`patKey`| `string` | - | Payment type key.| +`transactionType`| `string` | - | Transaction type. Supported values: `BILL` for Bill posting, `CREDIT CARD` for Credit Card posting, `GENERAL JOURNAL` for General Journal posting | +`liabilityAccountCode` | `string` | - | Liability account code.| +`postingDate` | `string` | - | Posting date: `REPORTCREATE` for report created date, `REPORTSUBMIT` for report submitted date, or `PROCESSORAPPROVAL` for processor approval date. | +`clearingAccountCode` | `string` | - | Clearing account code.| +`name`| `string` | - | Payment type name.| +`creditCardVendorId`| `string` | - | Credit card vendor ID. | `currencyCode`| `string` | `ISO 4217` | 3-letter currency code.| -`countryCode`|`string`|`ISO 3166`|2-letter country code.| -`erpCreditCardAccount`|`string`|-|ERP Credit Card Account.| +`countryCode`|`string`| `ISO 3166` |2-letter country code.| +`erpCreditCardAccount`|`string`| - |ERP Credit Card Account.| ### ListMapping From 0d40d560740c752669cbbe2facc4f2aeb6345339 Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 16 Jun 2025 13:19:26 -0700 Subject: [PATCH 6/8] AIS-12465: - fixing formatting --- .../v4.accountingintegration-schema.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index 80a39f1666..a52137e63e 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -243,7 +243,7 @@ Please note that if no additional configuration is needed the list of configurat ### PaymentType -|Name|Type| Format |Description| +|Name|Type|Format|Description| |---|---|---|---| `patKey`| `string` | - | Payment type key.| `transactionType`| `string` | - | Transaction type. Supported values: `BILL` for Bill posting, `CREDIT CARD` for Credit Card posting, `GENERAL JOURNAL` for General Journal posting | From 5180c1b194bc5ce9cdef357f98198c9fbd7bd6b9 Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 16 Jun 2025 13:20:13 -0700 Subject: [PATCH 7/8] AIS-12465: - fixing formatting --- .../v4.accountingintegration-schema.markdown | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index a52137e63e..3d972319de 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -245,16 +245,16 @@ Please note that if no additional configuration is needed the list of configurat |Name|Type|Format|Description| |---|---|---|---| -`patKey`| `string` | - | Payment type key.| -`transactionType`| `string` | - | Transaction type. Supported values: `BILL` for Bill posting, `CREDIT CARD` for Credit Card posting, `GENERAL JOURNAL` for General Journal posting | -`liabilityAccountCode` | `string` | - | Liability account code.| -`postingDate` | `string` | - | Posting date: `REPORTCREATE` for report created date, `REPORTSUBMIT` for report submitted date, or `PROCESSORAPPROVAL` for processor approval date. | -`clearingAccountCode` | `string` | - | Clearing account code.| -`name`| `string` | - | Payment type name.| -`creditCardVendorId`| `string` | - | Credit card vendor ID. | +`patKey`| `string` | - | Payment type key.| +`transactionType`| `string` | - | Transaction type. Supported values: `BILL` for Bill posting, `CREDIT CARD` for Credit Card posting, `GENERAL JOURNAL` for General Journal posting | +`liabilityAccountCode` | `string` | - | Liability account code.| +`postingDate` | `string` | - | Posting date: `REPORTCREATE` for report created date, `REPORTSUBMIT` for report submitted date, or `PROCESSORAPPROVAL` for processor approval date. | +`clearingAccountCode` | `string` | - | Clearing account code.| +`name`| `string` | - | Payment type name.| +`creditCardVendorId`| `string` | - | Credit card vendor ID. | `currencyCode`| `string` | `ISO 4217` | 3-letter currency code.| -`countryCode`|`string`| `ISO 3166` |2-letter country code.| -`erpCreditCardAccount`|`string`| - |ERP Credit Card Account.| +`countryCode`|`string`|`ISO 3166`|2-letter country code.| +`erpCreditCardAccount`|`string`|-|ERP Credit Card Account.| ### ListMapping From a24f9d3ed90af670cae3910d4bd08b61e809f580 Mon Sep 17 00:00:00 2001 From: Pravin Sahu Date: Mon, 23 Jun 2025 13:05:44 -0700 Subject: [PATCH 8/8] AIS-12465: - update schema markdown and taxData markdown to clarify API behavior --- .../v4.accountingintegration-schema.markdown | 4 +- .../v4.accountingintegration-taxData.markdown | 396 +++++++----------- 2 files changed, 151 insertions(+), 249 deletions(-) diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown index 3d972319de..253697c534 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-schema.markdown @@ -137,7 +137,7 @@ Please note that if no additional configuration is needed the list of configurat |---|---|---|---| `data`|`array`|[`ERP Tax Data`](#erp-taxData)|List of the ERP Tax Data.| `links`|`array`|[`Links`](#links)|**GET method** The array of `href`s to retrieve the next page.| -`deleteAll`|`boolean`|`true`/`false`|**PUT method** If `true`, delete all data for the given object type before processing the new data.| +`deleteAll`|`boolean`|`true`/`false`|**PUT method** For PUT method, this field is always considered to be true and all data is replaced with the data provided.| ### ERP Tax Data @@ -146,7 +146,7 @@ Please note that if no additional configuration is needed the list of configurat `countryCode`|`string`|ISO 3166-1 alpha-2|**Required** Two-letter country code for the tax data as specified in ISO 3166-1 alpha-2.| `countryName`|`string`|-|Country name for the tax data.| `stateEntries`|`array`|[`State Entries`](#state-entries)|**Required** List of state/province specific tax data. If the data is not state specific, this field will hold the country tax data.| -`isDeleted`|`boolean`|`true`/`false`|**PUT method** If `true`, this record is marked for deletion.| + ### State Entries diff --git a/src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown b/src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown index f0dec8a94f..bc393debd3 100644 --- a/src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown +++ b/src/api-reference/accounting-integration/v4.accountingintegration-taxData.markdown @@ -61,83 +61,36 @@ POST /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/er { "data": [ { - "countryCode": "DE", - "countryDesc": "Germany", + "countryCode": "FR", + "countryDesc": "France", "stateEntries": [ { - "stateCode": null, - "stateDesc": null, + "stateCode": "FR-IDF", + "stateDesc": "Île-de-France", "reclaimEntries": [ { - "reclaimCode": "V0", - "reclaimDesc": "No tax procedure", + "reclaimCode": "10%", + "reclaimDesc": "10% VAT", "reclaimDetails": [ { - "taxCode": "V0T", - "taxRateDesc": null, - "percentage": 0, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" + "taxCode": "F10R", + "taxRateDesc": "Reduced VAT", + "percentage": 10, + "validFrom": "2022-01-01", + "validTo": "2025-12-31" } ] }, { - "reclaimCode": "V2", - "reclaimDesc": "7% domestic input tax", + "reclaimCode": "5.5%", + "reclaimDesc": "Super Reduced VAT", "reclaimDetails": [ { - "taxCode": "V2T", - "taxRateDesc": null, - "percentage": 7, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" - } - ] - }, - { - "reclaimCode": "V1", - "reclaimDesc": "19% domestic input tax", - "reclaimDetails": [ - { - "taxCode": "V1T", - "taxRateDesc": null, - "percentage": 19, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" - } - ] - }, - { - "reclaimCode": "Z4", - "reclaimDesc": "Partly deductible tax, 70% VAT 30% NVV", - "reclaimDetails": [ - { - "taxCode": "MWVS", - "taxRateDesc": "Input tax", - "percentage": 13.3, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" - }, - { - "taxCode": "MWVZ", - "taxRateDesc": "Non-deduct.Input Tax", - "percentage": 5.7, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" - }, - { - "taxCode": "MWNS", - "taxRateDesc": "Input tax", - "percentage": 14.7, - "validFrom": "2025-01-01", - "validTo": "9999-12-31" - }, - { - "taxCode": "MWVZ", - "taxRateDesc": "Non-deduct.Input Tax", - "percentage": 6.3, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" + "taxCode": "F5R", + "taxRateDesc": "Super Reduced VAT", + "percentage": 5.5, + "validFrom": "2021-06-01", + "validTo": "2024-06-30" } ] } @@ -146,30 +99,42 @@ POST /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/er ] }, { - "countryCode": "CA", - "countryDesc": "Canada", + "countryCode": "US", + "countryDesc": "United States", "stateEntries": [ { - "stateCode": "CA-ON", - "stateDesc": "Ontario", + "stateCode": "US-CA", + "stateDesc": "California", "reclaimEntries": [ { - "reclaimCode": "S9", - "reclaimDesc": "GST 50% Deductible + PST Non-Deductable (NVV)", + "reclaimCode": "7.25%", + "reclaimDesc": "State Sales Tax", "reclaimDetails": [ { - "taxCode": "JC1E", - "taxRateDesc": "A/P GST Recoverable", - "percentage": 2.5, - "validFrom": "2020-08-01", - "validTo": "9999-12-31" - }, + "taxCode": "CA7R", + "taxRateDesc": "CA State Tax", + "percentage": 7.25, + "validFrom": "2020-01-01", + "validTo": "2023-12-31" + } + ] + } + ] + }, + { + "stateCode": "US-NY", + "stateDesc": "New York", + "reclaimEntries": [ + { + "reclaimCode": "8.875%", + "reclaimDesc": "NYC Sales Tax", + "reclaimDetails": [ { - "taxCode": "JC2E", - "taxRateDesc": "A/P GST Distributed", - "percentage": 2.5, - "validFrom": "2025-08-01", - "validTo": "9999-12-31" + "taxCode": "NY8R", + "taxRateDesc": "NYC Tax", + "percentage": 8.875, + "validFrom": "2019-07-01", + "validTo": "2024-07-01" } ] } @@ -208,6 +173,13 @@ This endpoint allows users to replace ERP Tax data that is cached in the SAP Con receiving the data, the server will return immediately with a response payload containing the request current status and a link to check the request status progress, then process the request asynchronously. +**Important Note:** + +```text +This endpoint will always replace all the data in the cached SAP Concur system with the data provided in the request payload. +The isDeleted flag is always ignored +``` + In addition, events will be published to notify the API consumers of important updates. For more information, please see [Accounting Integration Events](/event-topics/event-subscription-topic-accountingintegration.html). @@ -266,83 +238,36 @@ PUT /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erp { "data": [ { - "countryCode": "DE", - "countryDesc": "Germany", + "countryCode": "FR", + "countryDesc": "France", "stateEntries": [ { - "stateCode": null, - "stateDesc": null, + "stateCode": "FR-IDF", + "stateDesc": "Île-de-France", "reclaimEntries": [ { - "reclaimCode": "V0", - "reclaimDesc": "No tax procedure", - "reclaimDetails": [ - { - "taxCode": "V0T", - "taxRateDesc": null, - "percentage": 0, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" - } - ] - }, - { - "reclaimCode": "V2", - "reclaimDesc": "7% domestic input tax", + "reclaimCode": "10%", + "reclaimDesc": "10% VAT", "reclaimDetails": [ { - "taxCode": "V2T", - "taxRateDesc": null, - "percentage": 7, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" + "taxCode": "F10R", + "taxRateDesc": "Reduced VAT", + "percentage": 10, + "validFrom": "2022-01-01", + "validTo": "2025-12-31" } ] }, { - "reclaimCode": "V1", - "reclaimDesc": "19% domestic input tax", + "reclaimCode": "5.5%", + "reclaimDesc": "Super Reduced VAT", "reclaimDetails": [ { - "taxCode": "V1T", - "taxRateDesc": null, - "percentage": 19, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" - } - ] - }, - { - "reclaimCode": "Z4", - "reclaimDesc": "Partly deductible tax, 70% VAT 30% NVV", - "reclaimDetails": [ - { - "taxCode": "MWVS", - "taxRateDesc": "Input tax", - "percentage": 13.3, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" - }, - { - "taxCode": "MWVZ", - "taxRateDesc": "Non-deduct.Input Tax", - "percentage": 5.7, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" - }, - { - "taxCode": "MWNS", - "taxRateDesc": "Input tax", - "percentage": 14.7, - "validFrom": "2025-01-01", - "validTo": "9999-12-31" - }, - { - "taxCode": "MWVZ", - "taxRateDesc": "Non-deduct.Input Tax", - "percentage": 6.3, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" + "taxCode": "F5R", + "taxRateDesc": "Super Reduced VAT", + "percentage": 5.5, + "validFrom": "2021-06-01", + "validTo": "2024-06-30" } ] } @@ -351,30 +276,42 @@ PUT /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erp ] }, { - "countryCode": "CA", - "countryDesc": "Canada", + "countryCode": "US", + "countryDesc": "United States", "stateEntries": [ { - "stateCode": "CA-ON", - "stateDesc": "Ontario", + "stateCode": "US-CA", + "stateDesc": "California", "reclaimEntries": [ { - "reclaimCode": "S9", - "reclaimDesc": "GST 50% Deductible + PST Non-Deductable (NVV)", + "reclaimCode": "7.25%", + "reclaimDesc": "State Sales Tax", "reclaimDetails": [ { - "taxCode": "JC1E", - "taxRateDesc": "A/P GST Recoverable", - "percentage": 2.5, - "validFrom": "2020-08-01", - "validTo": "9999-12-31" - }, + "taxCode": "CA7R", + "taxRateDesc": "CA State Tax", + "percentage": 7.25, + "validFrom": "2020-01-01", + "validTo": "2023-12-31" + } + ] + } + ] + }, + { + "stateCode": "US-NY", + "stateDesc": "New York", + "reclaimEntries": [ + { + "reclaimCode": "8.875%", + "reclaimDesc": "NYC Sales Tax", + "reclaimDetails": [ { - "taxCode": "JC2E", - "taxRateDesc": "A/P GST Distributed", - "percentage": 2.5, - "validFrom": "2025-08-01", - "validTo": "9999-12-31" + "taxCode": "NY8R", + "taxRateDesc": "NYC Tax", + "percentage": 8.875, + "validFrom": "2019-07-01", + "validTo": "2024-07-01" } ] } @@ -455,83 +392,36 @@ GET /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erp { "data": [ { - "countryCode": "DE", - "countryDesc": "Germany", + "countryCode": "FR", + "countryDesc": "France", "stateEntries": [ { - "stateCode": null, - "stateDesc": null, + "stateCode": "FR-IDF", + "stateDesc": "Île-de-France", "reclaimEntries": [ { - "reclaimCode": "V0", - "reclaimDesc": "No tax procedure", - "reclaimDetails": [ - { - "taxCode": "V0T", - "taxRateDesc": null, - "percentage": 0, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" - } - ] - }, - { - "reclaimCode": "V2", - "reclaimDesc": "7% domestic input tax", + "reclaimCode": "10%", + "reclaimDesc": "10% VAT", "reclaimDetails": [ { - "taxCode": "V2T", - "taxRateDesc": null, - "percentage": 7, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" + "taxCode": "F10R", + "taxRateDesc": "Reduced VAT", + "percentage": 10, + "validFrom": "2022-01-01", + "validTo": "2025-12-31" } ] }, { - "reclaimCode": "V1", - "reclaimDesc": "19% domestic input tax", + "reclaimCode": "5.5%", + "reclaimDesc": "Super Reduced VAT", "reclaimDetails": [ { - "taxCode": "V1T", - "taxRateDesc": null, - "percentage": 19, - "validFrom": "2019-01-01", - "validTo": "9999-12-31" - } - ] - }, - { - "reclaimCode": "Z4", - "reclaimDesc": "Partly deductible tax, 70% VAT 30% NVV", - "reclaimDetails": [ - { - "taxCode": "MWVS", - "taxRateDesc": "Input tax", - "percentage": 13.3, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" - }, - { - "taxCode": "MWVZ", - "taxRateDesc": "Non-deduct.Input Tax", - "percentage": 5.7, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" - }, - { - "taxCode": "MWNS", - "taxRateDesc": "Input tax", - "percentage": 14.7, - "validFrom": "2025-01-01", - "validTo": "9999-12-31" - }, - { - "taxCode": "MWVZ", - "taxRateDesc": "Non-deduct.Input Tax", - "percentage": 6.3, - "validFrom": "2020-08-01", - "validTo": "2024-12-31" + "taxCode": "F5R", + "taxRateDesc": "Super Reduced VAT", + "percentage": 5.5, + "validFrom": "2021-06-01", + "validTo": "2024-06-30" } ] } @@ -540,30 +430,42 @@ GET /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erp ] }, { - "countryCode": "CA", - "countryDesc": "Canada", + "countryCode": "US", + "countryDesc": "United States", "stateEntries": [ { - "stateCode": "CA-ON", - "stateDesc": "Ontario", + "stateCode": "US-CA", + "stateDesc": "California", "reclaimEntries": [ { - "reclaimCode": "S9", - "reclaimDesc": "GST 50% Deductible + PST Non-Deductable (NVV)", + "reclaimCode": "7.25%", + "reclaimDesc": "State Sales Tax", "reclaimDetails": [ { - "taxCode": "JC1E", - "taxRateDesc": "A/P GST Recoverable", - "percentage": 2.5, - "validFrom": "2020-08-01", - "validTo": "9999-12-31" - }, + "taxCode": "CA7R", + "taxRateDesc": "CA State Tax", + "percentage": 7.25, + "validFrom": "2020-01-01", + "validTo": "2023-12-31" + } + ] + } + ] + }, + { + "stateCode": "US-NY", + "stateDesc": "New York", + "reclaimEntries": [ + { + "reclaimCode": "8.875%", + "reclaimDesc": "NYC Sales Tax", + "reclaimDetails": [ { - "taxCode": "JC2E", - "taxRateDesc": "A/P GST Distributed", - "percentage": 2.5, - "validFrom": "2025-08-01", - "validTo": "9999-12-31" + "taxCode": "NY8R", + "taxRateDesc": "NYC Tax", + "percentage": 8.875, + "validFrom": "2019-07-01", + "validTo": "2024-07-01" } ] } @@ -576,6 +478,6 @@ GET /accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erp "next": { "href": "/accountingintegration/v4/companies/09ac834c-46d6-49ff-9653-551d69072d56/erps/2fcffbce-a381-4169-a954-c0395eefd6f6/taxData?next=string" } - } + } } ```