# Weavr Multi Product API

Weavr Multi API provides a simple and flexible way to issue cards and accounts to your customers.

By integrating Weavr Multi API in your application you can embed banking capabilities within your app and provide a seamless experience for your customers.

# Authentication

Each request to the Multi API must include an `api-key` that represents your account. You can obtain an API Key by registering for a Multi account [here](https://portal.weavr.io).

Almost all endpoints require a secondary authentication token `auth_token` that represents the user for whom the request is being executed.


Version: v3

## Servers

Weavr Sandbox Environment
```
https://sandbox.weavr.io/multi
```

## Security

### api-key

An API key defined in your User API Client  (or Delegate API Client - this feature is available only to customers enabled with delegation functionality).  API Clients are as managed in the Embedder Portal

Type: apiKey
In: header
Name: api-key

### auth_token

The authentication token representing the user. This will be included in the login response object.

Type: http
Scheme: bearer
Bearer Format: JWT

### webhooks_key

The Webhooks key can be found in the API Credentials tab in your Portal Page.

Type: apiKey
In: header
Name: webhooks-key

## Download OpenAPI description

 - [Weavr Multi Product API](https://api.weavr.io/_bundle/products/multi/openapi.yaml)

## Corporates

 - [POST /corporates](https://api.weavr.io/products/multi/openapi/corporates/corporatecreate.md): Create a corporate identity for a business customer. The information provided must be accurate and will be passed on for KYB verification with our partner.
 - [POST /corporates/{corporateId}/kyb/entity](https://api.weavr.io/products/multi/openapi/corporates/corporatekybsubmitentity.md): Submit the company and ownership-graph information you already hold for the corporate, to pre-populate its KYB before the corporate starts their KYB journey. Optional; all fields are optional.
 - [GET /corporates/{corporateId}/kyb/entity](https://api.weavr.io/products/multi/openapi/corporates/corporatekybgetentity.md): Return the company and ownership-graph information submitted to pre-populate the corporate's KYB.
 - [POST /corporates/{corporateId}/kyb/profile](https://api.weavr.io/products/multi/openapi/corporates/corporatekybsetprofile.md): Submit the corporate's account-usage profile (funding, collections, withdrawals, payouts, cards) to pre-populate its KYB. Optional.
 - [GET /corporates/{corporateId}/kyb/profile](https://api.weavr.io/products/multi/openapi/corporates/corporatekybgetprofile.md): Return the account-usage profile submitted to pre-populate the corporate's KYB.
 - [POST /corporates/{corporateId}/kyb/documents](https://api.weavr.io/products/multi/openapi/corporates/corporatekybuploaddocument.md): Upload a supporting document to pre-populate the corporate's KYB before the corporate starts their KYB journey. Optional; one document per call (up to 10MB).
 - [GET /corporates/{corporateId}/kyb/documents](https://api.weavr.io/products/multi/openapi/corporates/corporatekybgetdocuments.md): List the documents uploaded to pre-populate the corporate's KYB. Returns metadata only, no binaries.
## Consumers

 - [POST /consumers](https://api.weavr.io/products/multi/openapi/consumers/consumercreate.md): Create a Consumer Identity to represent an Individual. The information provided must be accurate as it will be passed on for KYC verification with our partner. *Incorrect information may incur a re-pr
## Setup

 - [POST /users](https://api.weavr.io/products/multi/openapi/setup/usercreate.md): Creates a user linked to the logged-in corporate or consumer identity. Once on-boarded, users have access to all instruments (cards and accounts) of the identity. Application-specific permissions to l
 - [GET /users](https://api.weavr.io/products/multi/openapi/setup/usersget.md): Fetches all users associated with the corporate or consumer identity the logged-in user belongs to.
 - [GET /users/{user_id}](https://api.weavr.io/products/multi/openapi/setup/usergetbyid.md): Retrieves the user identified by the `user_id` path parameter.
 - [PATCH /users/{user_id}](https://api.weavr.io/products/multi/openapi/setup/userupdate.md): Update the details of a user identified by the `user_id` in the the path parameter. Only the fields that are specified in the request body will be updated. All other fields will remain unchanged. When
 - [GET /identities](https://api.weavr.io/products/multi/openapi/setup/useridentities.md): Retrieves a list of identities available to the holder of the token.
 - [POST /users/{user_id}/invite](https://api.weavr.io/products/multi/openapi/setup/userinvitesend.md): Sends an invitation to a user to join your identity. Once a user is created using the *userCreate* operation, an invitation needs to be sent to the user in order to be able to set up the password for
 - [POST /users/{user_id}/invite/validate](https://api.weavr.io/products/multi/openapi/setup/userinvitevalidate.md): Check if a user's invite is still valid. This operation is useful to avoid having the user fill in a form only to be held by a validation issue (eg. expired invite).
 - [POST /users/{user_id}/invite/consume](https://api.weavr.io/products/multi/openapi/setup/userinviteconsume.md): Consumes an invitation perviously sent to the user via *userInviteSend*. This is needed so that the invited user sets up the password. *Note that on the Sandbox Environment, the `inviteCode` is always
 - [POST /users/verification/email/send](https://api.weavr.io/products/multi/openapi/setup/authoriseduseremailverificationcodesend.md): The first step in verifying an authorised user's email. The authorised user whose email address is to be verified is sent an email containing a randomly generated code. This code must then be provided
 - [POST /users/verification/email/verify](https://api.weavr.io/products/multi/openapi/setup/authoriseduseremailverify.md): The second step in verifying the authorised user's email. The randomly generated code sent to the authorised user via email, using the *authorisedUserEmailVerificationCodeSend* operation, is submitted
## Sign-in

 - [POST /login_with_password](https://api.weavr.io/products/multi/openapi/sign-in/loginwithpassword.md): Authenticate a user with the `email` and `password` that they provided when registering. Given that the user credentials are correct, this returns a `token` that can then be used to authorise other se
 - [POST /login_via_biometrics](https://api.weavr.io/products/multi/openapi/sign-in/loginviabiometrics.md): Trigger a push notification and subsequent biometric authentication of a user, by providing the email that was used in the enrolment process of biometrics. This endpoint can be used in conjunction w
 - [POST /logout](https://api.weavr.io/products/multi/openapi/sign-in/logout.md): Logs out the user and terminates the session identified by the `auth_token` in the Authorization Header.
## Step-up Challenges

 - [POST /stepup/challenges/otp/{channel}](https://api.weavr.io/products/multi/openapi/step-up-challenges/stepupscachallenge.md): Initiates the step-up token process by sending an SMS with an one-time-password to a device belonging to the logged-in user that was previously enrolled through `/authentication_factors/otp/{channel}`
 - [POST /stepup/challenges/otp/{channel}/verify](https://api.weavr.io/products/multi/openapi/step-up-challenges/stepupscaverify.md): Completes the verification process for a step up token. The challenge expires after 5 minutes and the number of incorrect OTP attempts is limited to reduce the risk of fraud, in that case challenge ha
 - [POST /stepup/challenges/push/{channel}](https://api.weavr.io/products/multi/openapi/step-up-challenges/stepupscachallengepush.md): Initiates the step-up token process by submitting a push notification to a device belonging to the logged-in user that was previously enrolled through the `/authentication_factors/push/{channel}` endp
## Confirmation Challenges

 - [POST /challenges/otp/{channel}](https://api.weavr.io/products/multi/openapi/confirmation-challenges/multiplescachallenge.md): Starts the verification process for a list of resources in which a one-time password is sent to a device belonging to the logged-in user that was previously enrolled through the `/authentication_facto
 - [POST /challenges/{scaChallengeId}/otp/{channel}/verify](https://api.weavr.io/products/multi/openapi/confirmation-challenges/multiplescaverify.md): Completes the verification process for a list of resources. This endpoint can be used to challenge *Outgoing Wire Transfers* & *Sends*. If the outcome of the verification is successful, the resource i
 - [POST /challenges/push/{channel}](https://api.weavr.io/products/multi/openapi/confirmation-challenges/multiplescachallengepush.md): Starts the verification process for a list of resources in which a push notification is sent to a device belonging to the logged-in user that was previously enrolled through the `/authentication_facto
## Authentication Factors

 - [POST /passwords/{user_id}/create](https://api.weavr.io/products/multi/openapi/authentication-factors/passwordcreate.md): Create a new password for the user identified by the `user_id` path parameter.
 - [POST /passwords/update](https://api.weavr.io/products/multi/openapi/authentication-factors/passwordupdate.md): Update the password for the logged-in user.
 - [POST /passwords/validate](https://api.weavr.io/products/multi/openapi/authentication-factors/passwordvalidate.md): Check that a password adheres to all complexity checks.
 - [POST /passwords/lost_password/start](https://api.weavr.io/products/multi/openapi/authentication-factors/lostpasswordinitiate.md): Initiate the lost password process. If the email address provided is associated with an active user, an email will be sent, containing a URL that redirects the user to change their password. The URL c
 - [POST /passwords/lost_password/resume](https://api.weavr.io/products/multi/openapi/authentication-factors/lostpasswordresume.md): This is the second and final step in updating the password of a user who forgot their password.
 - [GET /authentication_factors](https://api.weavr.io/products/multi/openapi/authentication-factors/authfactorsget.md): Retrieves the list of authentication factors that can be used to verify the logged-in user.
 - [POST /authentication_factors/otp/{channel}](https://api.weavr.io/products/multi/openapi/authentication-factors/enroldeviceusingotpstepone.md): This is the first step in enrolling the logged-in user's mobile device, where a one-time password is sent to the device. *Note that on the Sandbox Environment, text messages are not sent and the one-t
 - [POST /authentication_factors/otp/{channel}/verify](https://api.weavr.io/products/multi/openapi/authentication-factors/enroldeviceusingotpsteptwo.md): The second step in enrolling the logged-in user (root or authorised user) to use one-time-passwords to enable verification of transactions. The challenge expires after 5 minutes and the number of inco
 - [POST /authentication_factors/push/{channel}](https://api.weavr.io/products/multi/openapi/authentication-factors/enroldeviceusingpush.md): This is the first step in enrolling the logged-in user's mobile device, where a push notification is sent to the device.
 - [DELETE /authentication_factors/push/{channel}](https://api.weavr.io/products/multi/openapi/authentication-factors/unlinkdeviceusingpush.md): Unlink a user device for authentication using push notifications
## Access Tokens

 - [POST /access_token](https://api.weavr.io/products/multi/openapi/access-tokens/requestaccesstoken.md): This API endpoint accepts a POST request with an auth_token parameter and returns an access_token that grants authorized access to additional resources within the API, with a different expiration time
## Customer Data & Due Diligence

 - [GET /corporates](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/corporateget.md): Retrieve the details of the logged-in corporate.
 - [PATCH /corporates](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/corporateupdate.md): Update the details of the logged-in corporate identity. The following Corporate details are verified during due diligence (KYB) and cannot be updated via the API once the Corporate has been verified:
 - [POST /corporates/kyb](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/corporatekybstart.md): Corporates need to complete due diligence (KYB) before they can create instruments and perform transactions. This operation initiates the due diligence process for the logged-in corporate. Due Diligen
 - [GET /corporates/kyb](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/corporatekybget.md): Returns the KYB status for the logged-in corporate.
 - [GET /consumers](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/consumerget.md): Retrieve the details of the logged-in Consumer.
 - [PATCH /consumers](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/consumerupdate.md): Update the details of the logged-in consumer identity. If the Consumer root user has already completed KYC, the following details cannot be updated: - name - surname - email - mobile Country
 - [POST /consumers/kyc](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/consumerkycstart.md): Consumers need to complete due diligence (KYC) before they can create instruments and fund transaction. This operation initiates the due diligence process for the logged-in consumer. Due Diligence is
 - [GET /consumers/kyc](https://api.weavr.io/products/multi/openapi/customer-data-and-due-diligence/consumerkycget.md): Returns the KYC status for the logged-in consumer.
## Authorised Signatories

 - [POST /corporates/verification/email/send](https://api.weavr.io/products/multi/openapi/authorised-signatories/corporaterootuseremailverificationcodesend.md): The first step in verifying a root user's email. The root user whose email address is to be verified is sent an email containing a randomly generated code. This code must then be provided in the *corp
 - [POST /corporates/verification/email/verify](https://api.weavr.io/products/multi/openapi/authorised-signatories/corporaterootuseremailverify.md): The second step in verifying the root user's email. The randomly generated code sent to the root user via email, using the *corporateRootUserEmailVerificationCodeSend* operation, is submitted here to
 - [POST /consumers/verification/email/send](https://api.weavr.io/products/multi/openapi/authorised-signatories/consumerrootuseremailverificationcodesend.md): The first step in verifying a root user's email. The root user whose email address is to be verified is sent an email containing a randomly generated code. This code must then be provided in the *cons
 - [POST /consumers/verification/email/verify](https://api.weavr.io/products/multi/openapi/authorised-signatories/consumerrootuseremailverify.md): The second step in verifying the root user's email. The randomly generated code sent to the root user via email, using the *consumerRootUserEmailVerificationCodeSend* operation, is submitted here to v
## Authorised Users

 - [POST /users/{user_id}/link](https://api.weavr.io/products/multi/openapi/authorised-users/userlink.md): Links a user that already exists on another identity to your identity. Since the user's credentials are already set up, no invitation or password setup is required - once linked, the user gains access
 - [POST /users/{user_id}/deactivate](https://api.weavr.io/products/multi/openapi/authorised-users/userdeactivate.md): De-activate the user identified by the `user_id` path parameter. Deactivated users cannot log in or execute any operations with their credentials. Deactivation is identity-specific and if the user bel
 - [POST /users/{user_id}/activate](https://api.weavr.io/products/multi/openapi/authorised-users/useractivate.md): Re-activate the user identified by the `user_id` path parameter. By default, any new users created will be automatically activated. This operation needs to be used only if the user was previously de-a
 - [POST /users/kyc](https://api.weavr.io/products/multi/openapi/authorised-users/userkyc.md): Perform the kyc for a corporate user.
## Trusted Payees

 - [POST /beneficiaries](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiarybatchcreate.md): Payees (previously "beneficiaries"). Create one or more payees for the logged-in corporate or consumer identity.
 - [GET /beneficiaries](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiariesget.md): Payees (previously "beneficiaries"). Retrieves the payees that match the query parameters.
 - [POST /beneficiaries/remove](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiarybatchremove.md): Payees (previously "beneficiaries"). Removes one or more payees from the payees list identified by the id path parameter used in the array.
 - [GET /beneficiaries/{id}](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiaryget.md): Payees (previously "beneficiaries"). Retrieves a payee identified by the id path parameter.
 - [GET /beneficiaries/batch](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiarybatchesget.md): Payees (previously "beneficiaries"). Retrieves all payee batches matching the query parameters and that belong to the logged-in identity.
 - [GET /beneficiaries/batch/{id}](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiarybatchget.md): Payees (previously "beneficiaries"). Retrieves the details of a payee batch identified by the batchId path parameter.
 - [POST /beneficiaries/batch/{id}/challenges/otp/{channel}](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiarybatchscachallenge.md): Payees (previously "beneficiaries"). Starts the verification process for updating the payees batch in which a one-time password is sent to a device belonging to the logged-in user that was previously
 - [POST /beneficiaries/batch/{id}/challenges/otp/{channel}/verify](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiarybatchscaverify.md): Payees (previously "beneficiaries"). Completes the verification process for updating the payee batch. If the outcome of the verification is successful, the payee update batch is executed. *Note that o
 - [POST /beneficiaries/batch/{id}/challenges/push/{channel}](https://api.weavr.io/products/multi/openapi/trusted-payees/beneficiarybatchscachallengepush.md): Payees (previously "beneficiaries"). Starts the verification process for updating a payee batch in which a push notification is sent to a device belonging to the logged-in user that was previously enr
## Managed Accounts

 - [GET /managed_accounts](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountsget.md): Retrieves all managed accounts belonging to the logged-in identity.
 - [POST /managed_accounts](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountcreate.md): Creates a managed account for the consumer or corporate identity. The Managed Account Profile (configured in the Multi Portal) specified determines the behavior and restrictions that the managed accou
 - [GET /managed_accounts/{id}](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountget.md): Fetch the managed account identified by the `id` in path.
 - [PATCH /managed_accounts/{id}](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountupdate.md): Update the details for the managed account identified by the `id` in the path.
 - [POST /managed_accounts/{id}/iban](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountsibanupgrade.md): Assign an IBAN to a Managed Account. IBANs enable managed accounts to receive and send funds via wire transfers. Assigning an IBAN to a Managed Account may be done asynchronously, in which case the `M
 - [GET /managed_accounts/{id}/iban](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountibanget.md): Fetch the IBAN details associated with the Managed Account identified by the `id` in the path.
 - [POST /managed_accounts/{id}/block](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountblock.md): Temporarily blocks a managed account.
 - [POST /managed_accounts/{id}/unblock](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountunblock.md): Unblocks the managed account identified by the `id` path parameter. The managed account must have `state.blockedReason` as `USER` so that it can be unblocked. If the managed account was blocked by `SY
 - [GET /managed_accounts/{id}/statement](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountstatement.md): Returns a statement for the managed account identified by the `id` path parameter. The statement contains only posted/completed transactions where funds have definitively moved (the actual balance of
 - [GET /managed_accounts/{id}/statement/pdf](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountstatementpdf.md): Returns the statement for the managed account identified by the `id` path parameter as a PDF document, suitable for delivery to the end customer. Every date and time on the document is rendered in `ti
 - [GET /managed_accounts/{id}/transactions](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccounttransactionsget.md): Returns all transactional activity on the managed account identified by the `id` path parameter. Unlike the statement endpoint, this includes pending, completed, failed, and rejected transactions. All
 - [GET /managed_accounts/{id}/transactions/{transactionId}](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccounttransactionget.md): Returns a specific transaction on the managed account.
 - [POST /managed_accounts/{id}/remove](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountremove.md): Destroys the managed account identified by the `id` path parameter. Unlike block, this action is not reversible. A managed account must be emptied from any remaining funds before it can be destroyed.
 - [GET /deprecated/managed_accounts/{id}/statement](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountstatementdeprecated.md): Deprecated in favour of [GET /managed_accounts/{id}/statements](https://api.weavr.io/products/multi/openapi/managed-accounts/managedaccountstatement#tag/Managed-Accounts/operation/managedAccountStatem
## Managed Cards

 - [POST /managed_cards](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardcreate.md): Creates a managed card for the consumer or corporate identity. The Managed Card Profile (configured in the Multi Portal) specified determines the behaviour and restrictions that the managed card will
 - [GET /managed_cards](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardsget.md): Fetch cards matching the search criteria provided.
 - [GET /managed_cards/{id}](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardget.md): Returns all details of the managed card identified by the `id` path parameter.
 - [PATCH /managed_cards/{id}](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardupdate.md): Update the details of the managed card identified by the `id` path parameter.
 - [POST /managed_cards/{id}/block](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardblock.md): Blocks the managed card identified by the `id` path parameter. This is a reversible action and the card can be unblocked using the *managedCardUnblock* operation.
 - [POST /managed_cards/{id}/unblock](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardunblock.md): Unblocks the managed card identified by the `id` path parameter. The managed card must have `state.blockedReason` as `USER` so that it can be unblocked. If the managed card was blocked by `SYSTEM`, us
 - [POST /managed_cards/{id}/remove](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardremove.md): Destroys the managed card identified by the `id` path parameter. Unlike block, this action is not reversible. A managed card must be empty before it can be destroyed using this operation.
 - [GET /managed_cards/{id}/statement](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardstatement.md): Returns a statement for the managed card identified by the id path parameter. The statement contains only posted/completed transactions where funds have definitively moved. Pre-paid mode cards hold th
 - [GET /managed_cards/{id}/statement/pdf](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardstatementpdf.md): Returns the statement for the managed card identified by the `id` path parameter as a PDF document, suitable for delivery to the end customer. Every date and time on the document is rendered in `timez
 - [GET /managed_cards/{id}/transactions](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardtransactionsget.md): Returns all transactional activity on the managed card identified by the `id` path parameter. This includes pending authorisations, completed settlements, refunds, and all other card transaction types
 - [GET /managed_cards/{id}/transactions/{transactionId}](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardtransactionget.md): Returns a specific transaction on the managed card.
 - [POST /managed_cards/{id}/physical](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalupgrade.md): Upgrades the virtual card identified by the `id` path parameter to physical. Before cards can be upgraded, a physical card programme must be set up and the card profile configuration updated according
 - [POST /managed_cards/{id}/physical/activate](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalactivate.md): Activates the physical card identified by the `id` path paramter.
 - [GET /managed_cards/{id}/physical/pin](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalpinget.md): Retrieves the PIN of the physical card identified by the `id` path parameter.
 - [PATCH /managed_cards/{id}/physical/pin/unblock](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalpinunblock.md): Physical cards can be marked as `pinBlocked` if there are too many failed PIN attempts. Use this operation to unblock a PIN so that the card can be used again.
 - [POST /managed_cards/{id}/physical/replace_damaged](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalreplacedamaged.md): Report as damaged, and replace the physical card identified by the `id` path parameter.
 - [POST /managed_cards/{id}/physical/report_lost](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalreportlost.md): Report the physical card identified by the `id` path parameter as lost. This will deactivate the instrument and a new card will need to be requested.
 - [POST /managed_cards/{id}/physical/report_stolen](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalreportstolen.md): Report the physical card identified by the `id` path parameter as stolen. This will destroy the instrument and a new replacement card will need to be requested. Once a replacement is requested, any fu
 - [POST /managed_cards/{id}/physical/replace_lost_stolen](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalreplacelostorstolen.md): Issue a replacement for the physical card, identified by the `id` path parameter, that has already been reported as lost or stolen. Any funds (that are not blocked pending a purchase for a previous au
 - [POST /managed_cards/{id}/physical/contactless_limit/reset](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardphysicalcontactlesslimitreset.md): For security purposes, the cardholder needs to provide the PIN after a number of contactless purchases. Use this operation to reset the physical card's contactless limit. The contactless limit can onl
 - [GET /deprecated/managed_cards/{id}/statement](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardstatementdeprecated.md): Deprecated in favour of [GET /managed_cards/{id}/statements](https://api.weavr.io/products/multi/openapi/managed-cards/managedcardstatement#tag/Managed-Cards/operation/managedCardStatements), which pr
## Transfers

 - [POST /transfers](https://api.weavr.io/products/multi/openapi/transfers/transfercreate.md): Transfers funds between managed accounts and managed cards belonging to the same corporate or consumer identity. The Transfer Profile (configured in the Multi Portal) specified determines the behavio
 - [GET /transfers](https://api.weavr.io/products/multi/openapi/transfers/transfersget.md): Retrieves all the transfer transactions performed by the logged-in identity.
 - [POST /transfers/bulk/cancel](https://api.weavr.io/products/multi/openapi/transfers/transfercancel.md): Cancels transfers that are scheduled to be executed in the future.
 - [GET /transfers/{id}](https://api.weavr.io/products/multi/openapi/transfers/transferget.md): Retrieve the transfer transaction identified by the `id` path parameter.
## Transaction Activity

 - [GET /transactions](https://api.weavr.io/products/multi/openapi/transaction-activity/transactionsget.md): Returns all transactional activity across all managed accounts and managed cards. This provides a single view of all transfers, sends, wire transfers, card payments, fees, and other transaction types
## Incoming Wire Transfers

 - [GET /incoming_wire_transfers](https://api.weavr.io/products/multi/openapi/incoming-wire-transfers/incomingwiretransfersget.md): Returns all incoming wire transfers for the authenticated identity.
 - [GET /incoming_wire_transfers/{id}](https://api.weavr.io/products/multi/openapi/incoming-wire-transfers/incomingwiretransferget.md): Returns a specific incoming wire transfer.
 - [POST /bank_transfers_in/authorisation_request](https://api.weavr.io/products/multi/openapi/incoming-wire-transfers/banktransferinforwarding.md)
## Outgoing Wire Transfers

 - [POST /outgoing_wire_transfers](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransfercreate.md): Transfers funds from managed accounts to an external bank account. The Outgoing Wire Transfer Profile (configured in the Multi Portal) specified determines the behaviour and restrictions of the trans
 - [GET /outgoing_wire_transfers](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransfersget.md): Retrieves all the outgoing wire transfer transactions performed by the logged-in identity.
 - [GET /outgoing_wire_transfers/{id}](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransferget.md): Retrieves the outgoing wire transfer identified by the `id` path parameter.
 - [PATCH /outgoing_wire_transfers/{id}](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransferupdatebeneficiaryname.md): Update the beneficiary name of an OWT in PENDING_CONFIRMATION state. Clears and re-runs CoP/VoP validation with the new name.
 - [GET /outgoing_wire_transfers/{id}/payment_confirmation](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransferpaymentconfirmation.md): Returns a payment-confirmation PDF for the completed outgoing wire transfer identified by the `id` path parameter. If the transfer was subsequently returned, the document also includes the return deta
 - [POST /outgoing_wire_transfers/{id}/cancel](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransfersinglecancel.md): Cancel the outgoing wire transfer identified by the `id` path parameter.
 - [POST /outgoing_wire_transfers/{id}/confirm](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransferconfirm.md): Confirm the outgoing wire transfer identified by the `id` path parameter.
 - [POST /outgoing_wire_transfers/{id}/challenges/otp/{channel}](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransferscachallenge.md): Deprecated in favour of [Challenges endpoints](#tag/Confirmation-Challenges/operation/multipleSCAChallenge) Starts the verification process for an outgoing wire transfer in which a one-time password i
 - [POST /outgoing_wire_transfers/{id}/challenges/otp/{channel}/verify](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransferscaverify.md): Deprecated in favour of [Challenges endpoints](#tag/Confirmation-Challenges/operation/multipleSCAVerify) Completes the verification process for an outgoing wire transfer. If the outcome of the verific
 - [POST /outgoing_wire_transfers/{id}/challenges/push/{channel}](https://api.weavr.io/products/multi/openapi/outgoing-wire-transfers/outgoingwiretransferscachallengepush.md): Deprecated in favour of [Challenges endpoints](#tag/Confirmation-Challenges/operation/multipleSCAChallengePush) Starts the verification process for an outgoing wire transfer in which a push notificati
## Correspondent Bank Transfers

 - [POST /correspondent_bank_transfers](https://api.weavr.io/products/multi/openapi/correspondent-bank-transfers/correspondentbanktransfercreate.md): Creates an outgoing wire transfer on behalf of an originator (correspondent banking). This endpoint is designed for correspondent banking use cases where a financial institution initiates a wire tran
 - [GET /correspondent_bank_transfers](https://api.weavr.io/products/multi/openapi/correspondent-bank-transfers/correspondentbanktransfersget.md): Retrieves all correspondent bank transfer transactions.
 - [GET /correspondent_bank_transfers/{id}](https://api.weavr.io/products/multi/openapi/correspondent-bank-transfers/correspondentbanktransferget.md): Retrieves the correspondent bank transfer identified by the `id` path parameter.
 - [POST /correspondent_bank_transfers/{id}/cancel](https://api.weavr.io/products/multi/openapi/correspondent-bank-transfers/correspondentbanktransfercancel.md): Cancel the correspondent bank transfer identified by the `id` path parameter.
 - [POST /correspondent_bank_transfers/{id}/confirm](https://api.weavr.io/products/multi/openapi/correspondent-bank-transfers/correspondentbanktransferconfirm.md): Confirm the correspondent bank transfer identified by the `id` path parameter.
## Card Payments

 - [GET /card_payments](https://api.weavr.io/products/multi/openapi/card-payments/cardpaymentsget.md): Returns the aggregated card payments for the logged-in identity. A CardPayment represents the full lifecycle of a card payment (authorisation + settlements + optional reversal/expiry/refund/original c
 - [GET /card_payments/{id}](https://api.weavr.io/products/multi/openapi/card-payments/cardpaymentget.md): Returns a single card payment by id.
 - [GET /card_payment_events](https://api.weavr.io/products/multi/openapi/card-payments/cardpaymenteventsget.md): Returns a flat, chronological list of card payment events across one or more card payments. Each entry carries the event plus the parent CardPayment context (card, merchant, group).
## Spend Controls

 - [GET /managed_cards/{id}/spend_rules](https://api.weavr.io/products/multi/openapi/spend-controls/managedcardspendrulesget.md): Fetch the list of spend rules associated with the managed card identified by the `id` path parameter.
 - [POST /managed_cards/{id}/spend_rules](https://api.weavr.io/products/multi/openapi/spend-controls/managedcardspendrulescreate.md): Create the spend rules associated with the managed card identified by the `id` path parameter.
 - [PATCH /managed_cards/{id}/spend_rules](https://api.weavr.io/products/multi/openapi/spend-controls/managedcardspendrulesupdate.md): Must be user after a POST, to update individual spend rules associated with the managed card identified by the `id` path parameter.
 - [DELETE /managed_cards/{id}/spend_rules](https://api.weavr.io/products/multi/openapi/spend-controls/managedcardspendrulesdelete.md): Remove all spend rules associated with the managed card identified by the `id` path parameter.
 - [POST /managed_cards/authorisation_request](https://api.weavr.io/products/multi/openapi/spend-controls/managed_cards_authorisation_forwarding.md): Receive purchase authorisation events and choose if to approve or decline them by replying to the event. Switch on Authorisation Forwarding in your Sandbox Innovator Portal and configure the Authorisa
## Sends

 - [POST /sends](https://api.weavr.io/products/multi/openapi/sends/sendcreate.md): Sends funds between managed accounts and managed cards belonging to *different* corporate or consumer identities. The Send Profile (configured in the Multi Portal) specified determines the behaviour a
 - [GET /sends](https://api.weavr.io/products/multi/openapi/sends/sendsget.md): Retrieves all the send transactions performed by the logged-in identity.
 - [GET /sends/{id}](https://api.weavr.io/products/multi/openapi/sends/sendget.md): Retrieve the send transaction identified by the `id` path parameter.
 - [POST /sends/{id}/cancel](https://api.weavr.io/products/multi/openapi/sends/sendsinglecancel.md): Cancel the send transaction identified by the `id` path parameter.
 - [POST /sends/{id}/challenges/otp/{channel}](https://api.weavr.io/products/multi/openapi/sends/sendscachallenge.md): Deprecated in favour of [Challenges endpoints](#tag/Confirmation-Challenges/operation/multipleSCAChallenge) Starts the verification process for a send in which a one-time password is sent to a device
 - [POST /sends/{id}/challenges/otp/{channel}/verify](https://api.weavr.io/products/multi/openapi/sends/sendscaverify.md): Deprecated in favour of [Challenges endpoints](#tag/Confirmation-Challenges/operation/multipleSCAVerify) Completes the verification process for a Send. If the outcome of the verification is successful
 - [POST /sends/{id}/challenges/push/{channel}](https://api.weavr.io/products/multi/openapi/sends/sendscachallengepush.md): Deprecated in favour of [Challenges endpoints](#tag/Confirmation-Challenges/operation/multipleSCAChallengePush) Starts the verification process for a Send in which a push notification is sent to a dev
## Fees

 - [POST /corporates/fees/charge](https://api.weavr.io/products/multi/openapi/fees/corporatechargefee.md): Charge a fee to the corporate identified by the auth token, based on a pre-defined custom fee. Custom fees can be configured in the Multi Portal. The fees collected will be deposited into your Revenu
 - [GET /fees](https://api.weavr.io/products/multi/openapi/fees/feesget.md): Returns the fee transactions accrued by the logged-in identity — every `FeeTransaction` posted against any of the identity's instruments, filterable by time window. For surfaces that need fees inline
 - [POST /consumers/fees/charge](https://api.weavr.io/products/multi/openapi/fees/consumerchargefee.md): Charge a fee to the logged-in consumer based on a pre-defined custom fee. Custom fees can be configured in the Multi Portal. The fees collected will be deposited into your Revenue Account. The balanc
## Operations

 - [POST /bulks/users](https://api.weavr.io/products/multi/openapi/operations/bulksusercreate.md): Submit the details for the creation of a batch of Authorised Users The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk Proces
 - [POST /bulks/users/_user_id_/invite](https://api.weavr.io/products/multi/openapi/operations/bulksuserinvitesend.md): Submit the details for the creation of a batch of Authorised User invites The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk
 - [POST /bulks/managed_cards/_id_/block](https://api.weavr.io/products/multi/openapi/operations/bulksmanagedcardblock.md): Submit the details to block Managed Cards. The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk Process](#tag/Manage/operation
 - [POST /bulks/managed_cards/_id_/unblock](https://api.weavr.io/products/multi/openapi/operations/bulksmanagedcardunblock.md): Submit the details to unblock Managed Cards. The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk Process](#tag/Manage/operati
 - [POST /bulks/managed_cards/_id_/remove](https://api.weavr.io/products/multi/openapi/operations/bulksmanagedcardremove.md): Submit the details to remove Managed Cards. The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk Process](#tag/Manage/operatio
 - [PATCH /bulks/managed_cards/_id_/spend_rules](https://api.weavr.io/products/multi/openapi/operations/bulksmanagedcardspendrulesupdate.md): Submit the details to update the spend rules of Managed Cards The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk Process](#t
 - [POST /bulks/transfers](https://api.weavr.io/products/multi/openapi/operations/bulkstransfercreate.md): Submit the details for the creation of a batch of Transfers. The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk Process](#ta
 - [POST /bulks/sends](https://api.weavr.io/products/multi/openapi/operations/bulkssendcreate.md): Submit the details for the creation of a batch of Sends. The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bulk Process](#tag/Ma
 - [POST /bulks/outgoing_wire_transfers](https://api.weavr.io/products/multi/openapi/operations/bulksoutgoingwiretransfercreate.md): Submit the details for the creation of a batch of Outgoing Wire Transfers. The bulkId returned in the response can subsequently be used to launch the execution of the bulk process through [Execute Bul
## Manage

 - [GET /bulks](https://api.weavr.io/products/multi/openapi/manage/bulks.md): Filter bulk processes.
 - [GET /bulks/{bulk_id}](https://api.weavr.io/products/multi/openapi/manage/bulkid.md): Retrieves details on the bulk process identified by the bulk_id parameter.
 - [GET /bulks/{bulk_id}/operations](https://api.weavr.io/products/multi/openapi/manage/bulkidoperations.md): Retrieves the bulk process operations that match the query parameters.
 - [POST /bulks/{bulk_id}/execute](https://api.weavr.io/products/multi/openapi/manage/bulkidexecute.md): Launches execution of operations of any bulk process identified by the bulk_id parameter. The status of the bulk process has to be in a ‘SUBMITTED’ state and after execution initiates, the bulk proce
 - [POST /bulks/{bulk_id}/pause](https://api.weavr.io/products/multi/openapi/manage/bulkidpause.md): Pauses the execution of operations of the bulk process that is in state ‘RUNNING’ as identified by the bulk_id parameter. The status of the bulk process after execution of this operation is set to ‘P
 - [POST /bulks/{bulk_id}/resume](https://api.weavr.io/products/multi/openapi/manage/bulkidresume.md): Resumes the execution of operations of the bulk process that is in state ' PAUSED' as identified by the bulk_id parameter. The status of the bulk process after execution of this operation is set back
 - [POST /bulks/{bulk_id}/cancel](https://api.weavr.io/products/multi/openapi/manage/bulkidcancel.md): Cancels the execution of operations of a bulk process that is in state ‘PAUSED’ or ‘RUNNING’ as identified by the bulk_id parameter. The status of the bulk process after execution of this operation is
