question

subodhrai avatar image
subodhrai asked David Marginian Deactivated commented

com.clover.sdk.v1.ClientException: status code: 400 Invalid tax rate IDs

Getting exception Invalid tax rate IDs when adding tax rate on item,

I want to add tax rate programmatically on specific item.


this how i'm doing

inventoryConnector().assignTaxRatesToItem(
    itemId,
    listTaxRates
)


Thank you

InventoryTaxes
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
David Marginian avatar image
David Marginian Deactivated answered David Marginian Deactivated commented

What environment? What is your merchant id? Can you provide the data in the request you are making?

8 comments
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

subodhrai avatar image subodhrai commented ·

Sandbox as environment and the data in the request are making:-

 item.defaultTaxRates = true
 val listTaxRates: ArrayList<String> = ArrayList()
 val taxRate = TaxRate()
 taxRate.isDefault = true
 taxRate.name = "Default"
 taxRate.id = item.taxRates[0].id
 taxRate.rate = 0
 taxRate.taxAmount = 200
listTaxRates.add(taxRate.name)
listTaxRates.add(taxRate.id)
listTaxRates.add(taxRate.rate.toString())
listTaxRates.add(taxRate.taxAmount.toString())
try {

    inventoryConnector().assignTaxRatesToItem(
        itemId,
        listTaxRates
    )
} catch (e: java.lang.Exception) {
    e.printStackTrace()
}
0 Likes 0 ·
David Marginian avatar image David Marginian ♦♦ subodhrai commented ·

That request doesn't make much sense, you are going to end up with an arraylist with the following items:

[taxRate.name, taxRate.id, taxRate.rate, taxRate.amount]

I believe what you want is a arraylist with a single item that is the Clover uuid of the tax rate:

[taxRate.id]


0 Likes 0 ·
subodhrai avatar image subodhrai David Marginian ♦♦ commented ·

yes, so please can you help me how we can achieve this(add tax on item),

I have tried with different approaches.

I have also tried with

 item.defaultTaxRates = true
 val listTaxRates: ArrayList<TaxRate> = ArrayList()
 val taxRate = TaxRate()
 taxRate.isDefault = true
 taxRate.name = "Default"
 taxRate.id = item.taxRates[0].id
 taxRate.rate = 0
 taxRate.taxAmount = 200
 listTaxRates.add(taxRate)
 item.taxRates=listTaxRates

this approach but it also not work.

0 Likes 0 ·
Show more comments

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Welcome to the
Clover Developer Community