VTEX · Capability
VTex Giftcard Provider Protocol — Transactions
VTex Giftcard Provider Protocol — Transactions. 8 operations. Lead operation: VTex Create a gift card transaction. Self-contained Naftiko capability covering one Vtex business surface.
What You Can Do
POST
Creategiftcardtransaction
— VTex Create a gift card transaction
/v1/giftcards/{giftcardid}/transactions
GET
Listallgiftcardtransactions
— VTex List all gift card transactions
/v1/giftcards/{giftcardid}/transactions
POST
Creategiftcardtransactionsettlement
— VTex Settle a gift card transaction
/v1/giftcards/{giftcardid}/transactions/{tid}/settlements
GET
Listallgiftcardtransactionssettlements
— VTex List all gift card transactions settlements
/v1/giftcards/{giftcardid}/transactions/{tid}/settlements
GET
Getgiftcardtransactionbyid
— VTex Get a gift card transaction by ID
/v1/giftcards/{giftcardid}/transactions/{transactionid}
GET
Getgiftcardtransactionauthorization
— VTex Get a gift card transaction authorization
/v1/giftcards/{giftcardid}/transactions/{transactionid}/authorization
POST
Creategiftcardtransactioncancellation
— VTex Cancel a gift card transaction
/v1/giftcards/{giftcardid}/transactions/{transactionid}/cancellations
GET
Listallgiftcardtransactionscancellations
— VTex List all gift card transactions cancellations
/v1/giftcards/{giftcardid}/transactions/{transactionid}/cancellations
MCP Tools
vtex-create-gift-card-transaction
VTex Create a gift card transaction
vtex-list-all-gift-card
VTex List all gift card transactions
read-only
idempotent
vtex-settle-gift-card-transaction
VTex Settle a gift card transaction
vtex-list-all-gift-card-2
VTex List all gift card transactions settlements
read-only
idempotent
vtex-get-gift-card-transaction
VTex Get a gift card transaction by ID
read-only
idempotent
vtex-get-gift-card-transaction-2
VTex Get a gift card transaction authorization
read-only
idempotent
vtex-cancel-gift-card-transaction
VTex Cancel a gift card transaction
vtex-list-all-gift-card-3
VTex List all gift card transactions cancellations
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: VTex Giftcard Provider Protocol — Transactions
description: 'VTex Giftcard Provider Protocol — Transactions. 8 operations. Lead operation: VTex Create a gift card transaction.
Self-contained Naftiko capability covering one Vtex business surface.'
tags:
- Vtex
- Transactions
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
VTEX_API_KEY: VTEX_API_KEY
capability:
consumes:
- type: http
namespace: gift-card-provider-protocol-transactions
baseUri: https://{providerApiEndpoint}
description: VTex Giftcard Provider Protocol — Transactions business capability. Self-contained, no shared references.
resources:
- name: giftcards-giftCardId-transactions
path: /giftcards/{giftCardId}/transactions
operations:
- name: creategiftcardtransaction
method: POST
description: VTex Create a gift card transaction
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: listallgiftcardtransactions
method: GET
description: VTex List all gift card transactions
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: giftcards-giftCardId-transactions-tId-settlements
path: /giftcards/{giftCardId}/transactions/{tId}/settlements
operations:
- name: creategiftcardtransactionsettlement
method: POST
description: VTex Settle a gift card transaction
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: tId
in: path
type: string
description: Transaction ID generated by the provider. It is different from the `transactionId` generated by VTEX.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: listallgiftcardtransactionssettlements
method: GET
description: VTex List all gift card transactions settlements
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: tId
in: path
type: string
description: Transaction ID generated by the provider. It is different from the `transactionId` generated by VTEX.
required: true
- name: giftcards-giftCardId-transactions-transactionId
path: /giftcards/{giftCardId}/transactions/{transactionId}
operations:
- name: getgiftcardtransactionbyid
method: GET
description: VTex Get a gift card transaction by ID
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: transactionId
in: path
type: string
description: Transaction identification.
required: true
- name: giftcards-giftCardId-transactions-transactionId-authorization
path: /giftcards/{giftCardId}/transactions/{transactionId}/authorization
operations:
- name: getgiftcardtransactionauthorization
method: GET
description: VTex Get a gift card transaction authorization
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: transactionId
in: path
type: string
description: Transaction identification.
required: true
- name: giftcards-giftCardId-transactions-transactionId-cancellations
path: /giftcards/{giftCardId}/transactions/{transactionId}/cancellations
operations:
- name: creategiftcardtransactioncancellation
method: POST
description: VTex Cancel a gift card transaction
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: transactionId
in: path
type: string
description: Transaction identification.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: listallgiftcardtransactionscancellations
method: GET
description: VTex List all gift card transactions cancellations
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
description: Type of the content being sent.
required: true
- name: Accept
in: header
type: string
description: HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.
required: true
- name: giftCardId
in: path
type: string
description: Gift card identification.
required: true
- name: transactionId
in: path
type: string
description: Transaction identification.
required: true
authentication:
type: apikey
key: X-PROVIDER-API-AppKey
value: '{{env.VTEX_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: gift-card-provider-protocol-transactions-rest
port: 8080
description: REST adapter for VTex Giftcard Provider Protocol — Transactions. One Spectral-compliant resource per consumed
operation, prefixed with /v1.
resources:
- path: /v1/giftcards/{giftcardid}/transactions
name: giftcards-giftcardid-transactions
description: REST surface for giftcards-giftCardId-transactions.
operations:
- method: POST
name: creategiftcardtransaction
description: VTex Create a gift card transaction
call: gift-card-provider-protocol-transactions.creategiftcardtransaction
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: GET
name: listallgiftcardtransactions
description: VTex List all gift card transactions
call: gift-card-provider-protocol-transactions.listallgiftcardtransactions
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
outputParameters:
- type: object
mapping: $.
- path: /v1/giftcards/{giftcardid}/transactions/{tid}/settlements
name: giftcards-giftcardid-transactions-tid-settlements
description: REST surface for giftcards-giftCardId-transactions-tId-settlements.
operations:
- method: POST
name: creategiftcardtransactionsettlement
description: VTex Settle a gift card transaction
call: gift-card-provider-protocol-transactions.creategiftcardtransactionsettlement
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
tId: rest.tId
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: GET
name: listallgiftcardtransactionssettlements
description: VTex List all gift card transactions settlements
call: gift-card-provider-protocol-transactions.listallgiftcardtransactionssettlements
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
tId: rest.tId
outputParameters:
- type: object
mapping: $.
- path: /v1/giftcards/{giftcardid}/transactions/{transactionid}
name: giftcards-giftcardid-transactions-transactionid
description: REST surface for giftcards-giftCardId-transactions-transactionId.
operations:
- method: GET
name: getgiftcardtransactionbyid
description: VTex Get a gift card transaction by ID
call: gift-card-provider-protocol-transactions.getgiftcardtransactionbyid
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
transactionId: rest.transactionId
outputParameters:
- type: object
mapping: $.
- path: /v1/giftcards/{giftcardid}/transactions/{transactionid}/authorization
name: giftcards-giftcardid-transactions-transactionid-authorization
description: REST surface for giftcards-giftCardId-transactions-transactionId-authorization.
operations:
- method: GET
name: getgiftcardtransactionauthorization
description: VTex Get a gift card transaction authorization
call: gift-card-provider-protocol-transactions.getgiftcardtransactionauthorization
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
transactionId: rest.transactionId
outputParameters:
- type: object
mapping: $.
- path: /v1/giftcards/{giftcardid}/transactions/{transactionid}/cancellations
name: giftcards-giftcardid-transactions-transactionid-cancellations
description: REST surface for giftcards-giftCardId-transactions-transactionId-cancellations.
operations:
- method: POST
name: creategiftcardtransactioncancellation
description: VTex Cancel a gift card transaction
call: gift-card-provider-protocol-transactions.creategiftcardtransactioncancellation
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
transactionId: rest.transactionId
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: GET
name: listallgiftcardtransactionscancellations
description: VTex List all gift card transactions cancellations
call: gift-card-provider-protocol-transactions.listallgiftcardtransactionscancellations
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
giftCardId: rest.giftCardId
transactionId: rest.transactionId
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: gift-card-provider-protocol-transactions-mcp
port: 9090
transport: http
description: MCP adapter for VTex Giftcard Provider Protocol — Transactions. One tool per consumed operation, routed inline
through this capability's consumes block.
tools:
- name: vtex-create-gift-card-transaction
description: VTex Create a gift card transaction
hints:
readOnly: false
destructive: false
idempotent: false
call: gift-card-provider-protocol-transactions.creategiftcardtransaction
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: vtex-list-all-gift-card
description: VTex List all gift card transactions
hints:
readOnly: true
destructive: false
idempotent: true
call: gift-card-provider-protocol-transactions.listallgiftcardtransactions
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
outputParameters:
- type: object
mapping: $.
- name: vtex-settle-gift-card-transaction
description: VTex Settle a gift card transaction
hints:
readOnly: false
destructive: false
idempotent: false
call: gift-card-provider-protocol-transactions.creategiftcardtransactionsettlement
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
tId: tools.tId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: vtex-list-all-gift-card-2
description: VTex List all gift card transactions settlements
hints:
readOnly: true
destructive: false
idempotent: true
call: gift-card-provider-protocol-transactions.listallgiftcardtransactionssettlements
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
tId: tools.tId
outputParameters:
- type: object
mapping: $.
- name: vtex-get-gift-card-transaction
description: VTex Get a gift card transaction by ID
hints:
readOnly: true
destructive: false
idempotent: true
call: gift-card-provider-protocol-transactions.getgiftcardtransactionbyid
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
transactionId: tools.transactionId
outputParameters:
- type: object
mapping: $.
- name: vtex-get-gift-card-transaction-2
description: VTex Get a gift card transaction authorization
hints:
readOnly: true
destructive: false
idempotent: true
call: gift-card-provider-protocol-transactions.getgiftcardtransactionauthorization
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
transactionId: tools.transactionId
outputParameters:
- type: object
mapping: $.
- name: vtex-cancel-gift-card-transaction
description: VTex Cancel a gift card transaction
hints:
readOnly: false
destructive: false
idempotent: false
call: gift-card-provider-protocol-transactions.creategiftcardtransactioncancellation
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
transactionId: tools.transactionId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: vtex-list-all-gift-card-3
description: VTex List all gift card transactions cancellations
hints:
readOnly: true
destructive: false
idempotent: true
call: gift-card-provider-protocol-transactions.listallgiftcardtransactionscancellations
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
giftCardId: tools.giftCardId
transactionId: tools.transactionId
outputParameters:
- type: object
mapping: $.