AlgoVoi · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Algovoi Co Uk Checkout API

18 actions 18 updates phrasing extends openapi/algovoi-co-uk-checkout-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for AlgoVoi's API. It is a proposal applied on top of the contract, not a document AlgoVoi publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 18 · first 16 shown; the file carries all of them

$.info
$.paths['/checkout/{token}/verify'].post
$.paths['/checkout/{token}/qr'].get
$.paths['/checkout/{token}/build-txn'].get
$.paths['/checkout/{token}/submit-txn'].post
$.paths['/checkout/{token}/detect'].get
$.paths['/checkout/{token}/submit-sponsored'].post
$.paths['/checkout/{token}/abandon'].post
$.paths['/checkout/{token}/cancel'].post
$.paths['/checkout/{token}/xchain/bridge-info'].get
$.paths['/checkout/{token}/xchain/bridge-send'].post
$.paths['/checkout/{token}/xchain/source-tx-recorded'].post
$.paths['/checkout/{token}/xchain/bridge-status/{tx_hash}'].get
$.paths['/checkout/{token}/xchain/prepare'].post
$.paths['/checkout/{token}/xchain/prepare-optin'].post
$.paths['/checkout/{token}/xchain/optin-submit'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Algovoi Co Uk Checkout API
  version: 1.0.0
extends: openapi/algovoi-co-uk-checkout-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 17
- target: $.paths['/checkout/{token}/verify'].post
  update:
    x-apievangelist-phrasing:
      intent: Verify a payer's on-chain transaction for a checkout
      effect: write
      questions:
      - How do I confirm a shopper's crypto transaction and mark the payment link as paid?
      - What happens if the transaction sent to a checkout link was for the wrong amount or chain?
      - Does verifying a checkout return a redirect URL I can send the buyer to?
      instructions:
      - text: Verify transaction {tx_id} against checkout {token} and mark it paid.
        slots:
          tx_id: requestBody.tx_id
          token: path.token
      - text: Check that tx {tx_id} on chain {chain} settled checkout link {token}.
        slots:
          tx_id: requestBody.tx_id
          chain: requestBody.chain
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/qr'].get
  update:
    x-apievangelist-phrasing:
      intent: Render a QR code image for a checkout
      effect: read
      questions:
      - Can I get a PNG QR code for a WalletConnect pairing URI on a checkout page?
      - Is there a way to show a scannable QR image without a JavaScript QR library?
      instructions:
      - text: Generate a QR code PNG encoding {data} for checkout {token}.
        slots:
          data: query.data
          token: path.token
      - text: Make a scannable QR image of the WalletConnect URI {data} on checkout {token}.
        slots:
          data: query.data
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/build-txn'].get
  update:
    x-apievangelist-phrasing:
      intent: Build an unsigned Algorand or VOI checkout transaction
      effect: read
      questions:
      - How can a wallet get an unsigned Algorand transaction to sign for a checkout via WalletConnect?
      - Do I need algosdk in the browser to build the payment transaction for a VOI checkout?
      instructions:
      - text: Build an unsigned payment transaction for checkout {token} sent from wallet {sender}.
        slots:
          token: path.token
          sender: query.sender
      - text: Prepare the base64 unsigned txn that address {sender} should sign to pay checkout {token}.
        slots:
          sender: query.sender
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/submit-txn'].post
  update:
    x-apievangelist-phrasing:
      intent: Submit a signed Algorand or VOI checkout transaction
      effect: write
      questions:
      - Once the customer signs the Algorand transaction, how do I broadcast it to algod for this checkout?
      - What do I get back after submitting a signed VOI transaction for a payment link?
      instructions:
      - text: Broadcast the customer's signed transaction for checkout {token} and give me the tx id.
        slots:
          token: path.token
      - text: Submit the base64 signed Algorand txn for payment link {token} to the network.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/detect'].get
  update:
    x-apievangelist-phrasing:
      intent: Detect an inbound payment for a checkout
      effect: read
      questions:
      - Can the checkout find the customer's payment on-chain without them pasting a transaction id?
      - Which chains does automatic payment detection poll, Algorand, VOI and Hedera?
      instructions:
      - text: Look on-chain for an incoming payment to checkout {token}.
        slots:
          token: path.token
      - text: Poll the indexer to see whether checkout {token} has received funds yet.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/submit-sponsored'].post
  update:
    x-apievangelist-phrasing:
      intent: Submit a fee-sponsored checkout transaction
      effect: write
      questions:
      - Can the merchant's sponsor wallet pay the network fee so the customer sends a zero-fee transaction?
      - What happens if the tenant has no sponsor wallet when a sponsored payment is submitted?
      instructions:
      - text: Submit the customer's zero-fee signed transaction for checkout {token} through the sponsor wallet.
        slots:
          token: path.token
      - text: Pool fees from the tenant sponsor wallet and send the signed payment for checkout {token}.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/abandon'].post
  update:
    x-apievangelist-phrasing:
      intent: Mark a checkout as abandoned by the customer
      effect: destructive
      questions:
      - How does a shopper walk away from a checkout so the merchant order doesn't stay pending forever?
      - Can a customer abandon a checkout without the merchant's cancel secret?
      instructions:
      - text: Record that the customer abandoned checkout {token}.
        slots:
          token: path.token
      - text: Flag checkout {token} as walked away by the shopper so the order shows cancelled.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/cancel'].post
  update:
    x-apievangelist-phrasing:
      intent: Cancel an active checkout link as the merchant
      effect: destructive
      questions:
      - How does a merchant cancel a payment link they created?
      - Why does cancelling a checkout link require the cancel secret from link creation?
      - Can I cancel a link that has already been paid or expired?
      instructions:
      - text: Cancel checkout link {token} using cancel secret {cancel_secret}.
        slots:
          token: path.token
          cancel_secret: requestBody.cancel_secret
      - text: Void merchant payment link {token} with secret {cancel_secret} and return the redirect URL.
        slots:
          token: path.token
          cancel_secret: requestBody.cancel_secret
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/bridge-info'].get
  update:
    x-apievangelist-phrasing:
      intent: List EVM source chains for bridging a checkout
      effect: read
      questions:
      - Which EVM chains can a buyer bridge USDC from to pay this checkout?
      - How much does the shopper need to send including the Allbridge bridge fee?
      instructions:
      - text: Show the supported bridge source chains and send amounts for checkout {token}.
        slots:
          token: path.token
      - text: Get the Allbridge fee-inclusive amount a buyer must send for checkout {token}.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/bridge-send'].post
  update:
    x-apievangelist-phrasing:
      intent: Build swapAndBridge calldata for MetaMask
      effect: write
      questions:
      - How do I get the swapAndBridge calldata a MetaMask user signs to pay from an EVM chain?
      - Can the shopper choose the destination chain when bridging, or is it fixed by the merchant?
      instructions:
      - text: Build the bridge transaction calldata for MetaMask to pay checkout {token}.
        slots:
          token: path.token
      - text: Create the eth_sendTransaction payload that bridges USDC into checkout {token}.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/source-tx-recorded'].post
  update:
    x-apievangelist-phrasing:
      intent: Record the source-chain bridge transaction hash
      effect: write
      questions:
      - After MetaMask returns a hash for the bridge call, how do I tie it back to the checkout?
      - What happens if I record a different source transaction hash for the same bridge attempt?
      instructions:
      - text: Record the MetaMask source transaction hash on the bridge attempt for checkout {token}.
        slots:
          token: path.token
      - text: Advance checkout {token}'s bridge attempt to pending_bridge with the source tx hash.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/bridge-status/{tx_hash}'].get
  update:
    x-apievangelist-phrasing:
      intent: Check a cross-chain bridge transfer's progress
      effect: read
      questions:
      - Has the cross-chain USDC transfer for this checkout arrived on the destination chain yet?
      - How do I poll Allbridge for completion of a bridge payment?
      instructions:
      - text: Check bridge status for source tx {tx_hash} on checkout {token}.
        slots:
          tx_hash: path.tx_hash
          token: path.token
      - text: Poll whether bridge transfer {tx_hash} for checkout {token} has completed on the destination.
        slots:
          tx_hash: path.tx_hash
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/prepare'].post
  update:
    x-apievangelist-phrasing:
      intent: Prepare an EVM-wallet payment via LogicSig address
      effect: write
      questions:
      - How can someone with only an EVM wallet pay an Algorand checkout?
      - Which LogicSig address is derived for my EVM wallet, and is it funded enough?
      instructions:
      - text: Derive the Algorand LogicSig address for my EVM wallet and check funding on checkout {token}.
        slots:
          token: path.token
      - text: Prepare the EIP-712 payment for checkout {token} from an EVM address.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/prepare-optin'].post
  update:
    x-apievangelist-phrasing:
      intent: Prepare the USDCa opt-in for an EVM wallet
      effect: write
      questions:
      - Does the LogicSig address need to opt in to USDCa before an EVM wallet can pay?
      - Who funds the LogicSig address before the USDCa opt-in?
      instructions:
      - text: Fund the LogicSig address and build the USDCa opt-in message for checkout {token}.
        slots:
          token: path.token
      - text: Get the EIP-712 opt-in message my EVM wallet signs for checkout {token}.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/optin-submit'].post
  update:
    x-apievangelist-phrasing:
      intent: Submit the signed USDCa opt-in transaction
      effect: write
      questions:
      - Where do I send the EVM signature for the pending USDCa opt-in?
      - What do I get back once the opt-in transaction is submitted?
      instructions:
      - text: Submit the signed USDCa opt-in for checkout {token} with my EVM signature.
        slots:
          token: path.token
      - text: Send the pending opt-in on checkout {token} and return the optin tx id.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/xchain/submit'].post
  update:
    x-apievangelist-phrasing:
      intent: Submit the EVM-signed xChain payment
      effect: write
      questions:
      - How do I finish an xChain checkout payment after signing the EIP-712 message?
      - Which transaction id comes back when the EVM-signed payment is submitted?
      instructions:
      - text: Submit the EIP-712 signed xChain payment for checkout {token}.
        slots:
          token: path.token
      - text: Send the pending cross-wallet payment for checkout {token} using my EVM signature.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'
- target: $.paths['/checkout/{token}/status'].get
  update:
    x-apievangelist-phrasing:
      intent: Check whether a checkout link has been paid
      effect: read
      questions:
      - Has my customer paid the payment link yet?
      - What statuses can a checkout link be in, active, paid, expired or cancelled?
      instructions:
      - text: Check the payment status of checkout {token}.
        slots:
          token: path.token
      - text: Tell me if link {token} is paid and where it redirects.
        slots:
          token: path.token
      method: generated
      generated: '2026-10-01'