wallets

Confirm transaction with OTP

TODO

post/business/transaction/confirm

Request

  • Base URL
    https://www.sandbox.striga.com/api/v1/wallets
  • URL
    https://www.sandbox.striga.com/api/v1/wallets/business/transaction/confirm
  • Auth
    API key in header api-key and API key in header Authorization

Request body

businessIdstring uuid required

The Id of the business who is sending this transaction

challengeIdstring uuid required

The challengeId that you received when initiating the transaction

verificationMethod'sms' | 'totp' | 'passkey'

The SCA factor the partner is confirming with. Optional for legacy SMS callers; required when using passkey (which omits verificationCode and supplies origin + passkeyAssertion instead).

verificationCodestring

5–6 character code (6-digit OTP or 5-5 TOTP recovery code). Required when verificationMethod is sms or totp, or when omitted. Must NOT be sent on the passkey path.

originstring

Browser origin that produced the WebAuthn assertion. Required when verificationMethod is passkey.

passkeyAssertionobject

WebAuthn assertion payload produced by the partner's frontend. Required when verificationMethod is passkey. Free-form — the route's custom validator (isPasskeyCredentialPayload) enforces the WebAuthn shape, so this schema doesn't enumerate fields.

ipstring ip required

IP address collected as the IP address from which the End User is making the withdrawal request. IMPORTANT - This will be a required parameter from the 15th of June 2023 and is optional until then.

Example request

{
  "businessId": "cecaea44-47f2-439b-99a1-a35fefaf1eb6",
  "challengeId": "c63aa677-ad1f-4db7-bd33-72badc2ecf9d",
  "verificationMethod": "sms",
  "verificationCode": "123456",
  "origin": "https://app.example.com",
  "ip": "192.158.1.38"
}

Response

success

idstring uuid required
sourceAccountIdstring alpha-numeric required
destinationAccountIdstring alpha-numeric required
memostring
statusstring
txTypestring
dateTimestring date-time
sourceSyncedOwnerIdstring uuid
destinationSyncedOwnerIdstring uuid

Example response

{
  "id": "90936049-a3a0-4ca8-8fb2-6c4ae93ae717",
  "sourceAccountId": "0148ae0856b1457ff3b59f2ac965b58e",
  "destinationAccountId": "5ad9f70b933ca275fee8de8ca684002d",
  "memo": "extend",
  "status": "COMMITTED",
  "txType": "INTER_LEDGER_SEND",
  "order": {
    "debit": {
      "amountFloat": "5",
      "amount": "500"
    },
    "credit": {
      "amountFloat": "5",
      "amount": "500"
    }
  },
  "dateTime": "2023-08-23T11:31:26.575Z",
  "balanceBefore": {
    "balance": "734321",
    "currency": "cents"
  },
  "balanceAfter": {
    "balance": "734321",
    "currency": "cents"
  },
  "sourceSyncedOwnerId": "b2ccf978-2da7-4ac9-9db7-5398c4c6b212",
  "destinationSyncedOwnerId": "2d57625c-cd8c-4949-a380-326711b04337"
}

Changes

No recorded changes to this operation across all 1 revision of this API.