Wise · Capability
Wise Platform API — simulation
Wise Platform API — simulation. 15 operations. Lead operation: Simulate a balance top-up. Self-contained Naftiko capability covering one Wise business surface.
What You Can Do
POST
Simulationbalancetopup
— Simulate a balance top-up
/v1/v1/simulation/balance/topup
POST
Simulationbanktransactionimport
— Simulate incoming bank transfer
/v1/v1/simulation/profiles/{profileid}/bank-transactions/import
POST
Simulationswiftin
— Simulate incoming Swift payment
/v1/v1/simulation/profiles/{profileid}/swift-in
POST
Simulationverification
— Simulate verification for a profile
/v1/v1/simulation/profiles/{profileid}/verifications
POST
Simulationcardproduction
— Simulate card production state change
/v1/v1/simulation/spend/profiles/{profileid}/cards/{cardtoken}/production
POST
Simulationcardtransactionclearing
— Simulate a card transaction clearing
/v1/v1/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions/clearing
POST
Simulationcardtransactionreversal
— Simulate a card transaction reversal
/v1/v1/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions/reversal
GET
Simulationtransferstatechange
— Simulate transfer state change
/v1/v1/simulation/transfers/{transferid}/{status}
POST
Simulationverifyprofile
— Simulate verification for all profiles
/v1/v1/simulation/verify-profile
GET
Simulationkycreviewrequirementslist
— List KYC review requirements
/v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/requirements
POST
Simulationkycreviewrequirementsadd
— Simulate adding new requirement
/v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/requirements/add
POST
Simulationkycreviewrequirementssubmit
— Simulate requirement submission
/v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/requirements/submit
POST
Simulationkycreviewverify
— Simulate verifying a KYC review
/v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/verify
GET
Simulationcardtransactions
— List simulated card transactions
/v1/v2/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions
POST
Simulationcardtransactionauthorisation
— Simulate a card transaction authorisation
/v1/v2/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions/authorisation
MCP Tools
simulate-balance-top-up
Simulate a balance top-up
simulate-incoming-bank-transfer
Simulate incoming bank transfer
simulate-incoming-swift-payment
Simulate incoming Swift payment
simulate-verification-profile
Simulate verification for a profile
simulate-card-production-state-change
Simulate card production state change
simulate-card-transaction-clearing
Simulate a card transaction clearing
simulate-card-transaction-reversal
Simulate a card transaction reversal
simulate-transfer-state-change
Simulate transfer state change
read-only
idempotent
simulate-verification-all-profiles
Simulate verification for all profiles
list-kyc-review-requirements
List KYC review requirements
read-only
idempotent
simulate-adding-new-requirement
Simulate adding new requirement
simulate-requirement-submission
Simulate requirement submission
simulate-verifying-kyc-review
Simulate verifying a KYC review
list-simulated-card-transactions
List simulated card transactions
read-only
idempotent
simulate-card-transaction-authorisation
Simulate a card transaction authorisation
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Wise Platform API — simulation
description: 'Wise Platform API — simulation. 15 operations. Lead operation: Simulate a balance top-up. Self-contained Naftiko
capability covering one Wise business surface.'
tags:
- Wise
- simulation
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
WISE_API_KEY: WISE_API_KEY
capability:
consumes:
- type: http
namespace: platform-simulation
baseUri: https://api.wise.com
description: Wise Platform API — simulation business capability. Self-contained, no shared references.
resources:
- name: v1-simulation-balance-topup
path: /v1/simulation/balance/topup
operations:
- name: simulationbalancetopup
method: POST
description: Simulate a balance top-up
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-simulation-profiles-profileId-bank-transactions-import
path: /v1/simulation/profiles/{profileId}/bank-transactions/import
operations:
- name: simulationbanktransactionimport
method: POST
description: Simulate incoming bank transfer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-simulation-profiles-profileId-swift-in
path: /v1/simulation/profiles/{profileId}/swift-in
operations:
- name: simulationswiftin
method: POST
description: Simulate incoming Swift payment
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-simulation-profiles-profileId-verifications
path: /v1/simulation/profiles/{profileId}/verifications
operations:
- name: simulationverification
method: POST
description: Simulate verification for a profile
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The ID of the profile to verify.
required: true
- name: v1-simulation-spend-profiles-profileId-cards-cardToken-production
path: /v1/simulation/spend/profiles/{profileId}/cards/{cardToken}/production
operations:
- name: simulationcardproduction
method: POST
description: Simulate card production state change
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: cardToken
in: path
type: string
description: The card token.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-simulation-spend-profiles-profileId-cards-cardToken-transactions-clearing
path: /v1/simulation/spend/profiles/{profileId}/cards/{cardToken}/transactions/clearing
operations:
- name: simulationcardtransactionclearing
method: POST
description: Simulate a card transaction clearing
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: cardToken
in: path
type: string
description: The card token.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-simulation-spend-profiles-profileId-cards-cardToken-transactions-reversal
path: /v1/simulation/spend/profiles/{profileId}/cards/{cardToken}/transactions/reversal
operations:
- name: simulationcardtransactionreversal
method: POST
description: Simulate a card transaction reversal
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: cardToken
in: path
type: string
description: The card token.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-simulation-transfers-transferId-status
path: /v1/simulation/transfers/{transferId}/{status}
operations:
- name: simulationtransferstatechange
method: GET
description: Simulate transfer state change
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: transferId
in: path
type: integer
description: The ID of the transfer to simulate.
required: true
- name: status
in: path
type: string
description: The target transfer status.
required: true
- name: v1-simulation-verify-profile
path: /v1/simulation/verify-profile
operations:
- name: simulationverifyprofile
method: POST
description: Simulate verification for all profiles
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-requirements
path: /v2/simulation/profiles/{profileId}/kyc-reviews/{kycReviewId}/requirements
operations:
- name: simulationkycreviewrequirementslist
method: GET
description: List KYC review requirements
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: kycReviewId
in: path
type: string
description: The ID of the existing KYC review.
required: true
- name: v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-requirements-add
path: /v2/simulation/profiles/{profileId}/kyc-reviews/{kycReviewId}/requirements/add
operations:
- name: simulationkycreviewrequirementsadd
method: POST
description: Simulate adding new requirement
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID requiring the new requirement to be added.
required: true
- name: kycReviewId
in: path
type: string
description: The ID of the existing KYC review.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-requirements-submit
path: /v2/simulation/profiles/{profileId}/kyc-reviews/{kycReviewId}/requirements/submit
operations:
- name: simulationkycreviewrequirementssubmit
method: POST
description: Simulate requirement submission
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: kycReviewId
in: path
type: string
description: The ID of the existing KYC review.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-verify
path: /v2/simulation/profiles/{profileId}/kyc-reviews/{kycReviewId}/verify
operations:
- name: simulationkycreviewverify
method: POST
description: Simulate verifying a KYC review
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: kycReviewId
in: path
type: string
description: The ID of the existing KYC review.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v2-simulation-spend-profiles-profileId-cards-cardToken-transactions
path: /v2/simulation/spend/profiles/{profileId}/cards/{cardToken}/transactions
operations:
- name: simulationcardtransactions
method: GET
description: List simulated card transactions
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: cardToken
in: path
type: string
description: The card token.
required: true
- name: limit
in: query
type: integer
description: The maximum number of transactions to return. The default value is 10.
- name: v2-simulation-spend-profiles-profileId-cards-cardToken-transactions-authorisatio
path: /v2/simulation/spend/profiles/{profileId}/cards/{cardToken}/transactions/authorisation
operations:
- name: simulationcardtransactionauthorisation
method: POST
description: Simulate a card transaction authorisation
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: profileId
in: path
type: integer
description: The profile ID.
required: true
- name: cardToken
in: path
type: string
description: The card token.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: bearer
token: '{{env.WISE_API_KEY}}'
exposes:
- type: rest
namespace: platform-simulation-rest
port: 8080
description: REST adapter for Wise Platform API — simulation. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/v1/simulation/balance/topup
name: v1-simulation-balance-topup
description: REST surface for v1-simulation-balance-topup.
operations:
- method: POST
name: simulationbalancetopup
description: Simulate a balance top-up
call: platform-simulation.simulationbalancetopup
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/profiles/{profileid}/bank-transactions/import
name: v1-simulation-profiles-profileid-bank-transactions-import
description: REST surface for v1-simulation-profiles-profileId-bank-transactions-import.
operations:
- method: POST
name: simulationbanktransactionimport
description: Simulate incoming bank transfer
call: platform-simulation.simulationbanktransactionimport
with:
profileId: rest.profileId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/profiles/{profileid}/swift-in
name: v1-simulation-profiles-profileid-swift-in
description: REST surface for v1-simulation-profiles-profileId-swift-in.
operations:
- method: POST
name: simulationswiftin
description: Simulate incoming Swift payment
call: platform-simulation.simulationswiftin
with:
profileId: rest.profileId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/profiles/{profileid}/verifications
name: v1-simulation-profiles-profileid-verifications
description: REST surface for v1-simulation-profiles-profileId-verifications.
operations:
- method: POST
name: simulationverification
description: Simulate verification for a profile
call: platform-simulation.simulationverification
with:
profileId: rest.profileId
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/spend/profiles/{profileid}/cards/{cardtoken}/production
name: v1-simulation-spend-profiles-profileid-cards-cardtoken-production
description: REST surface for v1-simulation-spend-profiles-profileId-cards-cardToken-production.
operations:
- method: POST
name: simulationcardproduction
description: Simulate card production state change
call: platform-simulation.simulationcardproduction
with:
profileId: rest.profileId
cardToken: rest.cardToken
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions/clearing
name: v1-simulation-spend-profiles-profileid-cards-cardtoken-transactions-clearing
description: REST surface for v1-simulation-spend-profiles-profileId-cards-cardToken-transactions-clearing.
operations:
- method: POST
name: simulationcardtransactionclearing
description: Simulate a card transaction clearing
call: platform-simulation.simulationcardtransactionclearing
with:
profileId: rest.profileId
cardToken: rest.cardToken
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions/reversal
name: v1-simulation-spend-profiles-profileid-cards-cardtoken-transactions-reversal
description: REST surface for v1-simulation-spend-profiles-profileId-cards-cardToken-transactions-reversal.
operations:
- method: POST
name: simulationcardtransactionreversal
description: Simulate a card transaction reversal
call: platform-simulation.simulationcardtransactionreversal
with:
profileId: rest.profileId
cardToken: rest.cardToken
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/transfers/{transferid}/{status}
name: v1-simulation-transfers-transferid-status
description: REST surface for v1-simulation-transfers-transferId-status.
operations:
- method: GET
name: simulationtransferstatechange
description: Simulate transfer state change
call: platform-simulation.simulationtransferstatechange
with:
transferId: rest.transferId
status: rest.status
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/simulation/verify-profile
name: v1-simulation-verify-profile
description: REST surface for v1-simulation-verify-profile.
operations:
- method: POST
name: simulationverifyprofile
description: Simulate verification for all profiles
call: platform-simulation.simulationverifyprofile
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/requirements
name: v2-simulation-profiles-profileid-kyc-reviews-kycreviewid-requirements
description: REST surface for v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-requirements.
operations:
- method: GET
name: simulationkycreviewrequirementslist
description: List KYC review requirements
call: platform-simulation.simulationkycreviewrequirementslist
with:
profileId: rest.profileId
kycReviewId: rest.kycReviewId
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/requirements/add
name: v2-simulation-profiles-profileid-kyc-reviews-kycreviewid-requirements-add
description: REST surface for v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-requirements-add.
operations:
- method: POST
name: simulationkycreviewrequirementsadd
description: Simulate adding new requirement
call: platform-simulation.simulationkycreviewrequirementsadd
with:
profileId: rest.profileId
kycReviewId: rest.kycReviewId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/requirements/submit
name: v2-simulation-profiles-profileid-kyc-reviews-kycreviewid-requirements-submit
description: REST surface for v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-requirements-submit.
operations:
- method: POST
name: simulationkycreviewrequirementssubmit
description: Simulate requirement submission
call: platform-simulation.simulationkycreviewrequirementssubmit
with:
profileId: rest.profileId
kycReviewId: rest.kycReviewId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/simulation/profiles/{profileid}/kyc-reviews/{kycreviewid}/verify
name: v2-simulation-profiles-profileid-kyc-reviews-kycreviewid-verify
description: REST surface for v2-simulation-profiles-profileId-kyc-reviews-kycReviewId-verify.
operations:
- method: POST
name: simulationkycreviewverify
description: Simulate verifying a KYC review
call: platform-simulation.simulationkycreviewverify
with:
profileId: rest.profileId
kycReviewId: rest.kycReviewId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions
name: v2-simulation-spend-profiles-profileid-cards-cardtoken-transactions
description: REST surface for v2-simulation-spend-profiles-profileId-cards-cardToken-transactions.
operations:
- method: GET
name: simulationcardtransactions
description: List simulated card transactions
call: platform-simulation.simulationcardtransactions
with:
profileId: rest.profileId
cardToken: rest.cardToken
limit: rest.limit
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/simulation/spend/profiles/{profileid}/cards/{cardtoken}/transactions/authorisation
name: v2-simulation-spend-profiles-profileid-cards-cardtoken-transactions-authorisatio
description: REST surface for v2-simulation-spend-profiles-profileId-cards-cardToken-transactions-authorisatio.
operations:
- method: POST
name: simulationcardtransactionauthorisation
description: Simulate a card transaction authorisation
call: platform-simulation.simulationcardtransactionauthorisation
with:
profileId: rest.profileId
cardToken: rest.cardToken
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: platform-simulation-mcp
port: 9090
transport: http
description: MCP adapter for Wise Platform API — simulation. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: simulate-balance-top-up
description: Simulate a balance top-up
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationbalancetopup
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-incoming-bank-transfer
description: Simulate incoming bank transfer
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationbanktransactionimport
with:
profileId: tools.profileId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-incoming-swift-payment
description: Simulate incoming Swift payment
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationswiftin
with:
profileId: tools.profileId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-verification-profile
description: Simulate verification for a profile
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationverification
with:
profileId: tools.profileId
outputParameters:
- type: object
mapping: $.
- name: simulate-card-production-state-change
description: Simulate card production state change
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationcardproduction
with:
profileId: tools.profileId
cardToken: tools.cardToken
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-card-transaction-clearing
description: Simulate a card transaction clearing
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationcardtransactionclearing
with:
profileId: tools.profileId
cardToken: tools.cardToken
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-card-transaction-reversal
description: Simulate a card transaction reversal
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationcardtransactionreversal
with:
profileId: tools.profileId
cardToken: tools.cardToken
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-transfer-state-change
description: Simulate transfer state change
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-simulation.simulationtransferstatechange
with:
transferId: tools.transferId
status: tools.status
outputParameters:
- type: object
mapping: $.
- name: simulate-verification-all-profiles
description: Simulate verification for all profiles
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationverifyprofile
outputParameters:
- type: object
mapping: $.
- name: list-kyc-review-requirements
description: List KYC review requirements
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-simulation.simulationkycreviewrequirementslist
with:
profileId: tools.profileId
kycReviewId: tools.kycReviewId
outputParameters:
- type: object
mapping: $.
- name: simulate-adding-new-requirement
description: Simulate adding new requirement
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationkycreviewrequirementsadd
with:
profileId: tools.profileId
kycReviewId: tools.kycReviewId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-requirement-submission
description: Simulate requirement submission
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationkycreviewrequirementssubmit
with:
profileId: tools.profileId
kycReviewId: tools.kycReviewId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: simulate-verifying-kyc-review
description: Simulate verifying a KYC review
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationkycreviewverify
with:
profileId: tools.profileId
kycReviewId: tools.kycReviewId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: list-simulated-card-transactions
description: List simulated card transactions
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-simulation.simulationcardtransactions
with:
profileId: tools.profileId
cardToken: tools.cardToken
limit: tools.limit
outputParameters:
- type: object
mapping: $.
- name: simulate-card-transaction-authorisation
description: Simulate a card transaction authorisation
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-simulation.simulationcardtransactionauthorisation
with:
profileId: tools.profileId
cardToken: tools.cardToken
body: tools.body
outputParameters:
- type: object
mapping: $.