openapi: 3.2.0 info: title: Pagopa Transaction API version: '1.0' description: 'Operations tagged transaction across 2 of this provider''s published API definitions: pari-merchants-ecommerce.yml, pagopa-pari-ecommerce-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true security: - Bearer: [] tags: - name: Transaction description: Operazioni relative alle transazioni paths: /transactions/bar-code/{trxCode}/capture: put: tags: - Transaction summary: Cattura la transazione operationId: capturePaymentBonusElettrodomestici deprecated: true parameters: - name: trxCode in: path description: Codice della transazione required: true schema: type: string maxLength: 24 pattern: ^[a-zA-Z0-9]+$ responses: '200': description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionBarCodeResponse' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionCode [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' Retry-After: $ref: '#/components/headers/Retry-After' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/bar-code/{trxCode}/capture: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ put: tags: - Transaction summary: Cattura la transazione operationId: capturePayment parameters: - name: trxCode in: path description: Codice della transazione required: true schema: type: string maxLength: 24 pattern: ^[a-zA-Z0-9]+$ responses: '200': description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionBarCodeResponse' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionCode [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' Retry-After: $ref: '#/components/headers/Retry-After' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/bar-code/{trxCode}/preview: put: tags: - Transaction summary: Anteprima pagamento description: 'Anteprima pagamento con payload V2. - schema request: `PreviewPaymentRequestV2DTO` - schema response: `PreviewPaymentResponseV2DTO`' operationId: previewPaymentBonusElettrodomestici deprecated: true parameters: - name: trxCode in: path description: Codice della transazione required: true schema: type: string maxLength: 24 pattern: ^[a-zA-Z0-9]+$ requestBody: description: Request anteprima pagamento (V2) required: true content: application/json: schema: $ref: '#/components/schemas/PreviewPaymentRequestV2DTO' examples: v2: summary: Anteprima pagamento V2 value: amountCents: 123400 additionalProperties: customField: customValue responses: '200': description: Risposta anteprima pagamento (V2) headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/PreviewPaymentResponseV2DTO' examples: v2: summary: Risposta anteprima pagamento V2 value: trxCode: cmhszi7u trxDate: '2025-10-24T12:36:00.725+00:00' status: AUTHORIZED originalAmountCents: 133400 rewardCents: 10000 residualAmountCents: 123400 userId: RSSMRA85M01H501U additionalProperties: customField: validatedCustomValue extendedAuthorization: true '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_AMOUNT_NOT_VALID message: Cannot preview transaction with invalid amount [%s] '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_FOR_TRX_STATUS message: Transaction with trxCode [%s] is not allowed for this operation '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with trxCode [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests on the ms reward calculator '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: A generic error occurred servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/bar-code/{trxCode}/preview: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ put: tags: - Transaction summary: Anteprima pagamento description: 'Anteprima pagamento con payload V2. - schema request: `PreviewPaymentRequestV2DTO` - schema response: `PreviewPaymentResponseV2DTO`' operationId: previewPayment parameters: - name: trxCode in: path description: Codice della transazione required: true schema: type: string maxLength: 24 pattern: ^[a-zA-Z0-9]+$ requestBody: description: Request anteprima pagamento (V2) required: true content: application/json: schema: $ref: '#/components/schemas/PreviewPaymentRequestV2DTO' examples: v2: summary: Anteprima pagamento V2 value: amountCents: 123400 additionalProperties: customField: customValue responses: '200': description: Risposta anteprima pagamento (V2) headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/PreviewPaymentResponseV2DTO' examples: v2: summary: Risposta anteprima pagamento V2 value: trxCode: cmhszi7u trxDate: '2025-10-24T12:36:00.725+00:00' status: AUTHORIZED originalAmountCents: 133400 rewardCents: 10000 residualAmountCents: 123400 userId: RSSMRA85M01H501U additionalProperties: customField: validatedCustomValue extendedAuthorization: true '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_AMOUNT_NOT_VALID message: Cannot preview transaction with invalid amount [%s] '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_FOR_TRX_STATUS message: Transaction with trxCode [%s] is not allowed for this operation '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with trxCode [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests on the ms reward calculator '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: A generic error occurred servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/bar-code/{trxCode}/authorize: put: tags: - Transaction summary: Autorizzazione pagamento operationId: authPaymentBarCodeBonusElettrodomestici deprecated: true parameters: - name: trxCode in: path description: Codice della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9]+$ example: cmhszi7u requestBody: description: Request about auth bar-code trx content: application/json: schema: $ref: '#/components/schemas/AuthBarCodePaymentDTO' responses: '200': description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/AuthPaymentResponseDTO' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' examples: invalidAmount: summary: Amount not valid value: code: PAYMENT_AMOUNT_NOT_VALID message: Cannot authorize transaction with invalid amount [%s] missingAdditionalProperties: summary: Additional properties not exist value: code: TRX_ADDITIONAL_PROPERTIES_NOT_EXIST message: Cannot authorize transaction with invalid AdditionalProperties '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_ALREADY_AUTHORIZED message: Transaction with trxCode [trxCode] is already authorized '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' examples: transactionNotFound: summary: Transaction not found value: code: PAYMENT_NOT_FOUND_EXPIRED message: Cannot find transaction with trxCode [trxCode] productNotFound: summary: Product not found value: code: PRODUCT_NOT_FOUND message: The product with gtin [gtin] is not found or not approved '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many request on the ms reward calculator '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: A generic error occured servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/bar-code/{trxCode}/authorize: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ put: tags: - Transaction summary: Autorizzazione pagamento operationId: authPaymentBarCode parameters: - name: trxCode in: path description: Codice della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9]+$ example: cmhszi7u requestBody: description: Request about auth bar-code trx content: application/json: schema: $ref: '#/components/schemas/AuthBarCodePaymentDTO' responses: '200': description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/AuthPaymentResponseDTO' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' examples: invalidAmount: summary: Amount not valid value: code: PAYMENT_AMOUNT_NOT_VALID message: Cannot authorize transaction with invalid amount [%s] missingAdditionalProperties: summary: Additional properties not exist value: code: TRX_ADDITIONAL_PROPERTIES_NOT_EXIST message: Cannot authorize transaction with invalid AdditionalProperties '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_ALREADY_AUTHORIZED message: Transaction with trxCode [trxCode] is already authorized '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' examples: transactionNotFound: summary: Transaction not found value: code: PAYMENT_NOT_FOUND_EXPIRED message: Cannot find transaction with trxCode [trxCode] productNotFound: summary: Product not found value: code: PRODUCT_NOT_FOUND message: The product with gtin [gtin] is not found or not approved '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many request on the ms reward calculator '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: A generic error occured servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/processed: get: tags: - Transaction summary: Ritorna la lista delle transazioni processate associate ad un punto vendita operationId: getPointOfSaleTransactionsProcessedBonusElettrodomestici deprecated: true parameters: - $ref: '#/components/parameters/page_query' - $ref: '#/components/parameters/size_query' - $ref: '#/components/parameters/sort_trx_processed_query' - $ref: '#/components/parameters/fiscalCode_query' - $ref: '#/components/parameters/status_trx_processed_query' - $ref: '#/components/parameters/productGtin_query' responses: '200': $ref: '#/components/responses/GET_transactions_processed_200_Response' '400': $ref: '#/components/responses/GET_transactions_processed_400_Response' '401': $ref: '#/components/responses/GET_transactions_processed_401_Response' '404': $ref: '#/components/responses/GET_transactions_processed_404_Response' '429': $ref: '#/components/responses/GET_transactions_processed_429_Response' '500': $ref: '#/components/responses/GET_transactions_processed_500_Response' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/processed: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ get: tags: - Transaction summary: Ritorna la lista delle transazioni processate associate ad un punto vendita operationId: getPointOfSaleTransactionsProcessed parameters: - $ref: '#/components/parameters/page_query' - $ref: '#/components/parameters/size_query' - $ref: '#/components/parameters/sort_trx_processed_query' - $ref: '#/components/parameters/fiscalCode_query' - $ref: '#/components/parameters/status_trx_processed_query' - $ref: '#/components/parameters/productGtin_query' responses: '200': $ref: '#/components/responses/GET_transactions_processed_200_Response' '400': $ref: '#/components/responses/GET_transactions_processed_400_Response' '401': $ref: '#/components/responses/GET_transactions_processed_401_Response' '404': $ref: '#/components/responses/GET_transactions_processed_404_Response' '429': $ref: '#/components/responses/GET_transactions_processed_429_Response' '500': $ref: '#/components/responses/GET_transactions_processed_500_Response' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions: get: tags: - Transaction summary: Ritorna la lista delle transazioni in corso associate ad un punto vendita operationId: getPointOfSaleTransactionsBonusElettrodomestici deprecated: true parameters: - $ref: '#/components/parameters/page_query' - $ref: '#/components/parameters/size_query' - $ref: '#/components/parameters/sort_trx_in_progress_query' - $ref: '#/components/parameters/fiscalCode_query' - $ref: '#/components/parameters/status_trx_in_progress_query' - $ref: '#/components/parameters/productGtin_query' responses: '200': $ref: '#/components/responses/GET_transactions_in_progress_200_Response' '400': $ref: '#/components/responses/GET_transactions_in_progress_400_Response' '401': $ref: '#/components/responses/GET_transactions_in_progress_401_Response' '404': $ref: '#/components/responses/GET_transactions_in_progress_404_Response' '429': $ref: '#/components/responses/GET_transactions_in_progress_429_Response' '500': $ref: '#/components/responses/GET_transactions_in_progress_500_Response' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ get: tags: - Transaction summary: Ritorna la lista delle transazioni in corso associate ad un punto vendita operationId: getPointOfSaleTransactions parameters: - $ref: '#/components/parameters/page_query' - $ref: '#/components/parameters/size_query' - $ref: '#/components/parameters/sort_trx_in_progress_query' - $ref: '#/components/parameters/fiscalCode_query' - $ref: '#/components/parameters/status_trx_in_progress_query' - $ref: '#/components/parameters/productGtin_query' responses: '200': $ref: '#/components/responses/GET_transactions_in_progress_200_Response' '400': $ref: '#/components/responses/GET_transactions_in_progress_400_Response' '401': $ref: '#/components/responses/GET_transactions_in_progress_401_Response' '404': $ref: '#/components/responses/GET_transactions_in_progress_404_Response' '429': $ref: '#/components/responses/GET_transactions_in_progress_429_Response' '500': $ref: '#/components/responses/GET_transactions_in_progress_500_Response' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/{transactionId}/download: get: tags: - Transaction summary: Scarica il file della fattura della transazione operationId: downloadInvoiceFileBonusElettrodomestici deprecated: true parameters: - $ref: '#/components/parameters/transactionId_path' responses: '200': $ref: '#/components/responses/GET_download_invoice_file_200_Response' '400': $ref: '#/components/responses/GET_download_invoice_file_400_Response' '401': $ref: '#/components/responses/GET_download_invoice_file_401_Response' '429': $ref: '#/components/responses/GET_download_invoice_file_429_Response' '500': $ref: '#/components/responses/GET_download_invoice_file_500_Response' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/{transactionId}/download: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ get: tags: - Transaction summary: Scarica il file della fattura della transazione operationId: downloadInvoiceFile parameters: - $ref: '#/components/parameters/transactionId_path' responses: '200': $ref: '#/components/responses/GET_download_invoice_file_200_Response' '400': $ref: '#/components/responses/GET_download_invoice_file_400_Response' '401': $ref: '#/components/responses/GET_download_invoice_file_401_Response' '429': $ref: '#/components/responses/GET_download_invoice_file_429_Response' '500': $ref: '#/components/responses/GET_download_invoice_file_500_Response' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/{transactionId}: delete: tags: - Transaction summary: Elimina una transazione associata ad un punto vendita operationId: deleteTransactionBonusElettrodomestici deprecated: true parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9\-\_]+$ example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 responses: '200': description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/{transactionId}: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ delete: tags: - Transaction summary: Elimina una transazione associata ad un punto vendita operationId: deleteTransaction parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9\-\_]+$ example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 responses: '200': description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/{transactionId}/reversal: post: tags: - Transaction summary: Storno di una transazione da parte di un Punto Vendita operationId: reversalTransactionBonusElettrodomestici deprecated: true parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9\-\_]+$ example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/ReversalInvoiceDTO' responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/{transactionId}/reversal: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ post: tags: - Transaction summary: Storno di una transazione da parte di un Punto Vendita operationId: reversalTransaction parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9\-\_]+$ example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/ReversalInvoiceDTO' responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/{transactionId}/reversal-invoiced: post: tags: - Transaction summary: Reverse an invoiced transaction description: Allows the merchant to refound a transaction from a batch. operationId: reversalTransactionInvoicedBonusElettrodomestici deprecated: true parameters: - name: transactionId in: path required: true schema: type: string maxLength: 50 pattern: ^[A-Za-z0-9\-]+$ requestBody: required: true content: multipart/form-data: schema: type: object required: - file properties: file: type: string format: binary maxLength: 2147483647 description: Reversal file docNumber: type: - string - 'null' maxLength: 50 pattern: ^[A-Za-z0-9\-]*$ description: Optional document number linked to the reversal responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/{transactionId}/reversal-invoiced: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ post: tags: - Transaction summary: Reverse an invoiced transaction description: Allows the merchant to refound a transaction from a batch. operationId: reversalTransactionInvoiced parameters: - name: transactionId in: path required: true schema: type: string maxLength: 50 pattern: ^[A-Za-z0-9\-]+$ requestBody: required: true content: multipart/form-data: schema: type: object required: - file properties: file: type: string format: binary maxLength: 2147483647 description: Reversal file docNumber: type: - string - 'null' maxLength: 50 pattern: ^[A-Za-z0-9\-]*$ description: Optional document number linked to the reversal responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/{transactionId}/invoice: post: tags: - Transaction summary: Inserimento della fattura in una transazione, da parte di un Punto Vendita operationId: invoiceTransactionBonusElettrodomestici deprecated: true parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9\-\_]+$ example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/InvoiceDTO' responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/{transactionId}/invoice: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ post: tags: - Transaction summary: Inserimento della fattura in una transazione, da parte di un Punto Vendita operationId: invoiceTransaction parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9\-\_]+$ example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/InvoiceDTO' responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /transactions/{transactionId}/invoice/update: put: tags: - Transaction summary: Point of sales update invoice transaction description: Aggiornamento del file e del numero fattura per una transazione da parte di un Punto Vendita operationId: updateInvoiceTransactionBonusElettrodomestici deprecated: true parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9]+$ requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/InvoiceDTO' responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true /initiatives/{initiativeId}/transactions/{transactionId}/invoice/update: parameters: - name: initiativeId in: path description: 'ENG: The initiative''s id - IT: Id dell''iniziativa' required: true schema: type: string maxLength: 24 pattern: ^[A-Za-z0-9_-]+$ put: tags: - Transaction summary: Point of sales update invoice transaction description: Aggiornamento del file e del numero fattura per una transazione da parte di un Punto Vendita operationId: updateInvoiceTransaction parameters: - name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: ^[a-zA-Z0-9]+$ requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/InvoiceDTO' responses: '204': description: Ok - no content headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '400': description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling the request '401': description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' '403': description: Forbidden headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT message: The merchant with id [%s] associated to the transaction is not equal to the merchant with id [%s] '404': description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_NOT_FOUND_OR_EXPIRED message: Cannot find transaction with transactionId [%s] '429': description: Too many requests headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' Retry-After: $ref: '#/components/headers/Retry-After' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests '500': description: Generic error content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: Application error servers: - description: Test di Sviluppo url: https://api-io.dev.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true - description: Test di Accettazione dell'Utente url: https://api-io.uat.cstar.pagopa.it/idpay-itn/merchant-ecommerce x-internal: true components: responses: GET_download_invoice_file_400_Response: description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_INVALID_REQUEST message: Something went wrong handling request GET_transactions_in_progress_400_Response: description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' GET_download_invoice_file_429_Response: description: Too many Request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' Retry-After: $ref: '#/components/headers/Retry-After' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_TOO_MANY_REQUESTS message: Too many requests GET_transactions_in_progress_429_Response: description: Too many Request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' Retry-After: $ref: '#/components/headers/Retry-After' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' GET_download_invoice_file_200_Response: description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/DownloadInvoiceResponseDTO' GET_transactions_processed_400_Response: description: Bad request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' GET_transactions_in_progress_500_Response: description: Generic error content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' GET_transactions_in_progress_401_Response: description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' GET_download_invoice_file_500_Response: description: Server ERROR headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' example: code: PAYMENT_GENERIC_ERROR message: An error occurred during file reading GET_transactions_processed_500_Response: description: Generic error content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' GET_transactions_processed_401_Response: description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' GET_transactions_processed_404_Response: description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' GET_transactions_processed_200_Response: description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/PointOfSaleTransactionsProcessedListDTO' GET_download_invoice_file_401_Response: description: Authentication failed headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/TransactionErrorDTO' GET_transactions_in_progress_200_Response: description: Ok headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/PointOfSaleTransactionsListDTO' GET_transactions_processed_429_Response: description: Too many Request headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' Retry-After: $ref: '#/components/headers/Retry-After' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' GET_transactions_in_progress_404_Response: description: The requested resource was not found headers: Access-Control-Allow-Origin: $ref: '#/components/headers/Access-Control-Allow-Origin' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' schemas: TransactionBarCodeResponse: type: object required: - id - trxCode - initiativeId - initiativeName - trxDate - status - trxExpirationSeconds - residualBudgetCents properties: id: type: string description: ID della transazione maxLength: 64 pattern: .* trxCode: type: string description: Codice della transazione (codice sconto) maxLength: 24 pattern: ^[a-zA-Z0-9]+$ example: cmhszi7u initiativeId: type: string description: Identificativo dell'iniziativa maxLength: 100 pattern: ^[A-Za-z0-9_-]+$ example: 68dd003ccce8c534d1da22bc initiativeName: type: string description: Nome della iniziativa maxLength: 1000 pattern: .* example: Bonus Elettrodomestici trxDate: type: string format: date-time description: Data della transazione maxLength: 255 example: '2025-10-24T12:36:00.725+00:00' status: type: string enum: - CREATED - IDENTIFIED - AUTHORIZED - CAPTURED - REWARDED - REJECTED example: CREATED trxExpirationSeconds: type: number description: Scadenza della transazione, in secondi minimum: 0 example: 300 residualBudgetCents: type: number description: Budget residuo minimum: 0 example: 1000 PreviewPaymentResponseV2DTO: type: object properties: trxCode: type: string description: Codice della transazione (codice sconto) maxLength: 24 pattern: ^[a-zA-Z0-9]+$ example: cmhszi7u trxDate: type: string format: date-time description: Data della transazione maxLength: 255 example: '2025-10-24T12:36:00.725+00:00' status: type: string enum: - CREATED - IDENTIFIED - AUTHORIZATION_REQUESTED - AUTHORIZED example: AUTHORIZED description: 'Stato del pagamento [CREATED: Creato, IDENTIFIED: Utente associato, AUTHORIZATION_REQUESTED: autorizzazione richiesta, AUTHORIZED: autorizzato]' originalAmountCents: type: integer format: int64 description: Importo originale da pagare in centesimi minimum: 0 maximum: 1000000000 example: 133400 rewardCents: type: integer format: int64 description: Sconto generato minimum: 0 maximum: 1000000000 example: 10000 residualAmountCents: type: integer format: int64 description: Importo residuo da pagare dopo lo sconto minimum: 0 maximum: 1000000000 example: 123400 userId: type: string description: Codice fiscale utente maxLength: 16 pattern: .* example: RSSMRA85M01H501U additionalProperties: type: object description: Campi aggiuntivi restituiti dalla preview del prodotto additionalProperties: type: string maxLength: 255 pattern: .* example: validatedCustomValue extendedAuthorization: type: boolean description: True, se l'autorizzazione è estesa example: true AuthBarCodePaymentDTO: type: object additionalProperties: false required: - amountCents - idTrxAcquirer - additionalProperties properties: amountCents: type: integer format: int64 minimum: 0 maximum: 1000000 description: Importo della transazione example: 12345 idTrxAcquirer: type: string description: Identificativo della transazione rispetto all'acquirer maxLength: 100 format: uuid example: 550e8400-e29b-41d4-a716-446655440000 additionalProperties: type: object additionalProperties: type: string maxLength: 255 pattern: .* example: productGtin ErrorDTO: type: object required: - code - message properties: code: type: string maxLength: 255 pattern: .* example: PAYMENT_INVALID_REQUEST message: type: string maxLength: 255 pattern: .* example: Something went wrong handling the request PointOfSaleTransactionsProcessedListDTO: type: object properties: content: type: array items: $ref: '#/components/schemas/PointOfSaleTransactionProcessedDTO' maxItems: 1000 pageNo: type: integer format: int32 description: Numero della pagina minimum: 0 maximum: 1000000 example: 1 pageSize: type: integer format: int32 description: Numero di elementi per pagina minimum: 0 maximum: 1000000 example: 20 totalElements: type: integer format: int32 description: Numero totale degli elementi minimum: 0 maximum: 1000000 example: 200 totalPages: type: integer format: int32 description: Numero totale delle pagine minimum: 0 maximum: 1000000 example: 10 ReversalInvoiceDTO: type: object required: - file properties: file: type: string format: binary maxLength: 255 docNumber: type: string maxLength: 255 PreviewPaymentRequestV2DTO: type: object properties: amountCents: type: integer format: int64 minimum: 0 maximum: 1000000000 description: Importo totale della spesa in centesimi example: 123400 additionalProperties: type: object description: Campi aggiuntivi usati per la preview del prodotto additionalProperties: type: string maxLength: 255 pattern: .* example: customValue required: - amountCents TransactionErrorDTO: type: object required: - code - message properties: code: type: string enum: - PAYMENT_NOT_FOUND_EXPIRED - PAYMENT_NOT_FOUND_OR_EXPIRED - PAYMENT_TRANSACTION_EXPIRED - PAYMENT_INITIATIVE_NOT_FOUND - PAYMENT_INITIATIVE_INVALID_DATE - PAYMENT_INITIATIVE_NOT_DISCOUNT - PAYMENT_ALREADY_AUTHORIZED - PAYMENT_ALREADY_CANCELLED - PAYMENT_BUDGET_EXHAUSTED - PAYMENT_GENERIC_REJECTED - PAYMENT_TOO_MANY_REQUESTS - PAYMENT_GENERIC_ERROR - PAYMENT_USER_SUSPENDED - PAYMENT_USER_NOT_ONBOARDED - PAYMENT_USER_UNSUBSCRIBED - PAYMENT_ALREADY_ASSIGNED - PAYMENT_NOT_ALLOWED_FOR_TRX_STATUS - PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT - PAYMENT_USER_NOT_ASSOCIATED - PAYMENT_DELETE_NOT_ALLOWED_FOR_TRX_STATUS - PAYMENT_UNRELATE_NOT_ALLOWED_FOR_TRX_STATUS - PAYMENT_AMOUNT_NOT_VALID - TRX_ADDITIONAL_PROPERTIES_NOT_EXIST - PAYMENT_MERCHANT_NOT_ONBOARDED - PAYMENT_INVALID_REQUEST - PAYMENT_STATUS_NOT_VALID - PAYMENT_TOO_RECENT - PAYMENT_TRANSACTION_VERSION_PENDING - PRODUCT_NOT_FOUND example: PAYMENT_NOT_FOUND_OR_EXPIRED description: '"Codice di errore
PAYMENT_NOT_FOUND_OR_EXPIRED: transazione non trovata oppure scaduta
PAYMENT_TRANSACTION_EXPIRED: transazione scaduta
PAYMENT_INITIATIVE_NOT_FOUND: iniziativa non trovata
PAYMENT_INITIATIVE_INVALID_DATE: iniziativa con data invalida
PAYMENT_INITIATIVE_NOT_DISCOUNT: iniziativa non è di tipo a sconto
PAYMENT_ALREADY_AUTHORIZED: transazione già autorizzata
PAYMENT_ALREADY_CANCELLED: transazione già cancellata
PAYMENT_BUDGET_EXHAUSTED: budget esaurito
PAYMENT_GENERIC_REJECTED: errore generico, transazione rigettata
PAYMENT_TOO_MANY_REQUESTS: troppe richieste, riprovare
PAYMENT_GENERIC_ERROR: errore generico (errore nella connessione ad un microservizio)
PAYMENT_USER_SUSPENDED: l''utente è stato sospeso dall''iniziativa
PAYMENT_USER_NOT_ONBOARDED: utente non onboardato all''iniziativa
PAYMENT_USER_UNSUBSCRIBED: utente disiscritto dall''iniziativa
PAYMENT_ALREADY_ASSIGNED: transazione già assegnata
PAYMENT_NOT_ALLOWED_FOR_TRX_STATUS: transazione non consentita a causa dello stato della transazione
PAYMENT_NOT_ALLOWED_MISMATCHED_MERCHANT: transazione non consentita a causa della mancata corrispondenza del merchant
PAYMENT_USER_NOT_ASSOCIATED: utente non associato alla transazione
PAYMENT_DELETE_NOT_ALLOWED_FOR_TRX_STATUS: annullamento della transazione non consentito a causa dello stato della transazione
PAYMENT_UNRELATE_NOT_ALLOWED_FOR_TRX_STATUS: disassociazione non consentita a causa dello stato della transazione
PAYMENT_AMOUNT_NOT_VALID: importo nella transazione non valido
PAYMENT_MERCHANT_NOT_ONBOARDED: il merchant non è onboardato
PAYMENT_INVALID_REQUEST: errore di validazione della richiesta
PAYMENT_STATUS_NOT_VALID: stato della transazione non valido"
PAYMENT_TRANSACTION_VERSION_PENDING: La versione del contatore è attualmente bloccata
PRODUCT_NOT_FOUND: Prodotto non trovato o non approvato ' message: type: string description: Messaggio di errore maxLength: 1000 pattern: .* example: The transaction has expired InvoiceFileDTO: type: object properties: filename: type: string description: Nome del file della fattura maxLength: 255 example: invoice_12345.pdf docNumber: type: string maxLength: 255 InvoiceDTO: type: object required: - file properties: file: type: string format: binary maxLength: 255 docNumber: type: string maxLength: 255 DownloadInvoiceResponseDTO: type: object properties: invoiceUrl: type: string description: Url per scaricare il file della fattura maxLength: 255 example: https://invoices.example.com/invoice_12345.pdf required: - invoiceUrl PointOfSaleTransactionProcessedDTO: type: object additionalProperties: false properties: id: type: string description: ID della transazione maxLength: 64 pattern: .* example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 fiscalCode: type: string description: Codice fiscale del cittadino minLength: 16 maxLength: 16 pattern: ^[A-Z0-9]+$ example: RSSMRA85M01H501U effectiveAmountCents: type: integer format: int64 description: Importo della transazione in centesimi minimum: 0 maximum: 1000000000 example: 123400 rewardAmountCents: type: integer format: int64 description: Premio generato in centesimi minimum: 0 maximum: 1000000000 example: 10000 authorizedAmountCents: type: integer format: int64 description: Importo autorizzato in centesimi minimum: 0 maximum: 1000000000 example: 123400 trxDate: type: string format: date-time description: Data della transazione maxLength: 255 example: '2025-10-24T12:36:00.725+00:00' trxChargeDate: type: string format: date-time description: La data di autorizzazione del pagamento maxLength: 255 example: '2025-10-24T12:36:00.725+00:00' updateDate: type: string format: date-time description: Data di aggiornamento della transazione maxLength: 255 example: '2025-10-24T13:00:00.725+00:00' status: type: string description: Stato della transazione enum: - REWARDED - CANCELLED - REFUNDED - INVOICED example: REWARDED channel: type: string description: Canale da cui avviene la transazione maxLength: 24 enum: - BARCODE - QRCODE - IDPAYCODE example: BARCODE additionalProperties: type: object additionalProperties: type: string maxLength: 255 pattern: .* example: productGtin invoiceFile: $ref: '#/components/schemas/InvoiceFileDTO' PointOfSaleTransactionDTO: type: object additionalProperties: false properties: id: type: string description: ID della transazione maxLength: 64 pattern: .* example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 trxCode: type: string description: Codice della transazione maxLength: 100 pattern: ^[a-zA-Z0-9]+$ example: cmhszi7u fiscalCode: type: string description: Codice fiscale del cittadino minLength: 16 maxLength: 16 pattern: ^[A-Z0-9]+$ example: RSSMRA85M01H501U effectiveAmountCents: type: integer format: int64 description: Importo della transazione in centesimi minimum: 0 maximum: 1000000000 example: 123400 rewardAmountCents: type: integer format: int64 description: Premio generato in centesimi minimum: 0 maximum: 1000000000 example: 10000 trxDate: type: string format: date-time description: Data della transazione maxLength: 255 example: '2025-10-24T12:36:00.725+00:00' trxChargeDate: type: string format: date-time description: La data di autorizzazione del pagamento maxLength: 255 example: '2025-10-24T12:36:00.725+00:00' trxExpirationSeconds: type: number description: Scadenza della transazione in secondi minimum: 0 example: 300 updateDate: type: string format: date-time description: Data di aggiornamento della transazione maxLength: 255 example: '2025-10-24T13:00:00.725+00:00' status: type: string description: Stato della transazione enum: - AUTHORIZED - CAPTURED example: AUTHORIZED splitPayment: type: boolean description: TRUE, se la somma autorizzata è inferiore alla somma richiesta o FALSE, se la somma autorizzata è uguale alla somma richiesta. example: true residualAmountCents: type: integer format: int64 description: Importo restante da pagare nel caso in cui la somma autorizzata sia inferiore alla somma richiesta. minimum: 0 maximum: 1000000000 example: 122400 channel: type: string description: Canale da cui avviene la transazione maxLength: 24 enum: - BARCODE - QRCODE - IDPAYCODE example: BARCODE qrcodePngUrl: type: string format: uri maxLength: 2048 description: Url all'immagine del QR code qrcodeTxtUrl: type: string format: uri maxLength: 2048 description: Url del QR code additionalProperties: type: object additionalProperties: type: string maxLength: 255 pattern: .* example: productGtin AuthPaymentResponseDTO: type: object required: - id - trxCode - initiativeId - status - amountCents properties: id: type: string description: Identificativo del pagamento maxLength: 100 format: uuid example: 3a602b17-ac1c-3029-9e78-0a4bbb8693d4 trxCode: type: string description: Codice della transazione maxLength: 100 pattern: ^[a-zA-Z0-9]+$ example: cmhszi7u trxDate: type: string format: date-time description: Data della transazione maxLength: 255 example: '2025-10-24T12:36:00.725+00:00' initiativeId: type: string description: Identificativo dell'iniziativa maxLength: 100 pattern: ^[A-Za-z0-9_-]+$ example: 68dd003ccce8c534d1da22bc initiativeName: type: string description: Nome della iniziativa maxLength: 1000 pattern: .* example: Bonus Elettrodomestici businessName: type: string description: Nome dell'esercente maxLength: 1000 pattern: .* example: Negozio di Esempio SRL status: type: string enum: - CREATED - IDENTIFIED - AUTHORIZATION_REQUESTED - AUTHORIZED example: AUTHORIZED description: 'Stato del pagamento [CREATED: Creato, IDENTIFIED: Utente associato, AUTHORIZATION_REQUESTED: autorizzazione richiesta, AUTHORIZED: autorizzato]' rewardCents: type: integer format: int64 minimum: 0 maximum: 1000000 description: Premio generato example: 10000 amountCents: type: integer format: int64 minimum: 0 maximum: 1000000 description: Importo in centesimi example: 123400 residualBudgetCents: type: integer format: int64 minimum: 0 maximum: 1000000 description: Budget residuo example: 0 splitPayment: type: boolean description: TRUE, se la somma autorizzata è inferiore alla somma richiesta o FALSE, se la somma autorizzata è uguale alla somma richiesta. example: false residualAmountCents: type: integer format: int64 minimum: 0 maximum: 1000000 example: 122400 description: Importo restante da pagare nel caso in cui la somma autorizzata sia inferiore alla somma richiesta. PointOfSaleTransactionsListDTO: type: object properties: content: type: array items: $ref: '#/components/schemas/PointOfSaleTransactionDTO' maxItems: 1000 pageNo: type: integer format: int32 description: Numero della pagina minimum: 0 maximum: 1000000 example: 1 pageSize: type: integer format: int32 description: Numero di elementi per pagina minimum: 0 maximum: 1000000 example: 20 totalElements: type: integer format: int32 description: Numero totale degli elementi minimum: 0 maximum: 1000000 example: 200 totalPages: type: integer format: int32 description: Numero totale delle pagine minimum: 0 maximum: 1000000 example: 10 parameters: fiscalCode_query: name: fiscalCode in: query required: false schema: type: string minLength: 16 maxLength: 16 pattern: ^[A-Z0-9]+$ example: RSSMRA85M01H501U sort_trx_in_progress_query: name: sort in: query required: false schema: type: string enum: - trxChargeDate, desc - status, desc - productName, desc - trxChargeDate, asc - status, asc - productName, asc example: trxChargeDate, desc productGtin_query: name: productGtin in: query required: false schema: type: string maxLength: 14 pattern: ^[a-zA-Z0-9]{1,14}$ example: OVENS09 transactionId_path: name: transactionId in: path description: ID della transazione required: true schema: type: string maxLength: 255 pattern: .* example: e1f9503e-f87c-4abb-a1cb-bbb1905ae1fd_BARCODE_1761309360725 status_trx_processed_query: name: status in: query description: Stato della transazione processata required: false schema: type: string enum: - REWARDED - CANCELLED - REFUNDED - INVOICED example: REWARDED page_query: name: page in: query required: false schema: type: integer format: int32 minimum: 0 maximum: 10000 example: 1 sort_trx_processed_query: name: sort in: query required: false schema: type: string enum: - trxChargeDate, desc - status, desc - productName, desc - trxChargeDate, asc - status, asc - productName, asc example: trxChargeDate, desc status_trx_in_progress_query: name: status in: query description: Stato della transazione attualmente in corso required: false schema: type: string enum: - AUTHORIZED - CAPTURED example: AUTHORIZED size_query: name: size in: query required: false schema: type: integer format: int32 minimum: 1 maximum: 1000 example: 20 headers: Access-Control-Allow-Origin: description: Intestazione CORS per consentire richieste cross-origin schema: type: string maxLength: 255 pattern: .* X-RateLimit-Reset: description: L'ora in cui il limite di velocità viene reimpostato (in secondi dell'epoca UTC) schema: type: integer format: int64 minimum: 0 maximum: 9999999999 Retry-After: description: Indica per quanto tempo l'agente deve attendere prima di effettuare una richiesta di follow-up schema: type: integer format: int64 minimum: 0 maximum: 86400 X-RateLimit-Limit: description: Numero massimo di richieste consentite nel periodo corrente schema: type: integer format: int64 minimum: 0 maximum: 1000000 X-RateLimit-Remaining: description: Il numero di richieste rimanenti nel periodo corrente schema: type: integer format: int64 minimum: 0 maximum: 1000000 securitySchemes: Bearer: description: A bearer token in the format of a JWS and conforms to the specifications included in RFC8725. type: oauth2 flows: clientCredentials: tokenUrl: https://api-mcshared.cstar.pagopa.it/auth-itn/realms/merchant-operator/protocol/openid-connect/token refreshUrl: https://api-mcshared.cstar.pagopa.it/auth-itn/realms/merchant-operator/protocol/openid-connect/token scopes: {} x-refined-from: - pari-merchants-ecommerce.yml - pagopa-pari-ecommerce-openapi.yml