appUsageRecordCreate idempotency userErrors

Hello!

I’m trying create an appUsageRecord via the GraphQL API. I can successfully create the usage record with the following mutation:

            mutation appUsageRecordCreate(
                $description: String!
                $price: MoneyInput!
                $subscriptionLineItemId: ID!
                $idempotencyKey: String
            ) {
                appUsageRecordCreate(
                    description: $description
                    price: $price
                    subscriptionLineItemId: $subscriptionLineItemId
                    idempotencyKey: $idempotencyKey
                ) {
                    appUsageRecord {
                        id
                        description
                        price {
                            amount
                            currencyCode
                        }
                        createdAt
                        idempotencyKey
                    }
                    userErrors {
                        field
                        message
                    }
                }
            }

When I make another request with the same idempotencyKey I get a response to the mutation with no userErrors and when I query the list of subscriptionLineItem I see multiple entries with the idempotency key on them.

I’m confused because I don’t want to charge the second time.

Should I be getting back an error on the 2nd attempt via that idempotency key? How do I know the customer won’t be charged multiple times?