Full Service API
  • Welcome!
  • Overview
  • API Endpoints
    • v2
      • Account
        • Account
          • Create Account
          • Import Account
          • Import Account Legacy
          • Get Accounts
          • Get Account Status
          • Get Balance
          • Update Account Name
          • Set Require Spend Subaddress
          • Remove Account
        • Account Secrets
          • Export Account Secrets
        • Address
          • Assign Address For Account
          • Get Address For Account
          • Get Addresses
          • Get Address Status
          • Verify Address
        • View Only Account
          • Import View Only Account
          • Create View Only Account Import Request
          • Create View Only Account Sync Request
          • Sync View Only Account
      • Transaction
        • Transaction
          • Build Transaction
          • Submit Transaction
          • Build And Submit Transaction
          • Build Burn Transaction
          • Build Unsigned Transaction
          • Build Unsigned Burn Transaction
        • Transaction Output TXO
          • Memo
            • Validate Sender Memo
          • Get TXO
          • Get TXOs
          • Get MobileCoin Protocol TXO
          • Get TXO Membership Proofs
          • Sample Mixins
          • Get TXO Block Index
        • Confirmation
          • Get Confirmations
          • Validate Confirmations
        • Receiver Receipt
          • Check Receiver Receipt Status
          • Create Receiver Receipts
        • Transaction Log
          • Get Transaction Log
          • Get Transaction Logs
          • Get MobileCoin Protocol Transaction
        • Payment Request
          • Create Payment Request
          • Check B58 Type
      • Block
        • Get Block
        • Get Blocks
        • Get Recent Blocks
        • Search Ledger
      • Network Status
        • Get Network Status
      • Wallet Status
        • Get Wallet Status
      • Version
        • Get Version
    • v1 (deprecated)
      • Account
        • Account
          • Create Account
          • Import Account
          • Import Account Legacy
          • Get Account
          • Get All Accounts
          • Get Account Status
          • Update Account Name
          • Remove Account
        • Account Secrets
          • Export Account Secrets
        • Address
          • Assign Address For Account
          • Get Addresses For Account
          • Verify Address
        • Balance
          • Get Balance For Account
          • Get Balance For Address
      • Transaction
        • Transaction
          • Build Transaction
          • Submit Transaction
          • Build And Submit Transaction
          • Build Split Txo Transaction
        • Transaction Output TXO
          • Get TXO
          • Get MobileCoin Protocol TXO
          • Get TXOs For Account
          • Get TXOs For View Only Account
          • Get All TXOs For Address
        • Confirmation
          • Get Confirmations
          • Validate Confirmations
        • Receiver Receipt
          • Check Receiver Receipt Status
          • Create Receiver Receipts
        • Transaction Log
          • Get Transaction Object
          • Get Transaction Log
          • Get Transaction Logs For Account
          • Get All Transaction Logs For Block
          • Get All Transaction Logs Ordered By Block
          • Get MobileCoin Protocol Transaction
        • Payment Request
          • Create Payment Request
          • Check B58 Type
      • Gift Code
        • Build Gift Code
        • Submit Gift Code
        • Get Gift Code
        • Get All Gift Codes
        • Check Gift Code Status
        • Claim Gift Code
        • Remove Gift Code
      • Block
        • Get Block
      • Network Status
        • Get Network Status
      • Wallet Status
        • Get Wallet Status
      • Version
        • Get Version
    • Signer Service
      • Create Account
      • Get Account
      • Sign Transaction
      • Sync Txos
  • Usage
    • Getting Started
      • Running Full Service
      • Create an Account
      • Receiving MobileCoin
      • Sending MobileCoin
      • Next Steps
    • Full Service Network Diagram
    • Supported Token Metadata
    • Database Usage
    • API Key
    • View Only Account
      • Signer
      • Signer Service
    • No Wallet Mode
    • Validator Service
      • Running
      • Running With TLS
    • Mirror Service
      • Running
      • Running With TLS
      • Running With Encryption
    • Logging
      • Text Logs (syslog style)
      • Crash Reports
    • T3
    • Sender Memos
  • FAQ
    • Resolving Disputes
    • How do I check if Full-Service is operational?
    • Where are logs stored?
    • How do I speed up account import?
    • What is the precision of MOB?
  • Glossary
    • Account
    • Block
    • Blockchain
    • Consensus Protocol
    • Fog
    • Full Service
    • Key Image
    • Ledger
    • MOB
    • Public Address
    • Secure Enclave
    • Subaddress
    • Transaction
    • Transaction Proposal
    • Validator Node
    • Validator Service
Powered by GitBook
On this page
  • Verify Transaction Success
  • Confirm Status and Block Index
  • Confirm Recipient Address
  • Confirm with the Block Explorer
  • Provide Confirmation Receipt to the Receiver
  • Sender Provides the TXO Confirmations
  • Receiver Validates the TXO Confirmation

Was this helpful?

  1. FAQ

Resolving Disputes

Resolve disputes by generating txo confirmations from the sender and validating them on the receiver

PreviousSender MemosNextHow do I check if Full-Service is operational?

Last updated 2 years ago

Was this helpful?

In some cases when sending a transaction, the recipient will report not having received the transaction. Please use the following steps to triage and resolve disputes.

Verify Transaction Success

First, verify whether the transaction was a success by examining the transaction_log for the transaction using the endpoint, which will provide an example result as below:

{
  "id":"01cf3c1a5ac2a6b884ef81c1bdd2191a3860d59158118b08f1f8f61ec3e09567",
  "account_id":"d43197097fd50aa944dd1b1025d4818668a812f794f4fb4dcf2cab890d3430ee",
  "input_txos":[
    {
      "txo_id":"fa737a8e65e480fc7f75dbc17e6875b75cf4b14f3cde02b49b8cd8921fdf7dbb",
      "amount":{
        "value":"5999600000000",
        "token_id":"0"
      }
    }
  ],
  "output_txos":[
    {
      "txo_id":"454c511ddab33edccc4b686b67d1f9a6c4eb101c28386e0f4e21c994ea35aa2f",
      "public_key":"728e73bd8675562ab44dea5c2b0edd4bfdf037a73d4afd42267442337c60f73b",
      "amount":{
        "value":"1234600000000",
        "token_id":"0"
      },
      "recipient_public_address_b58":"41mZTnbwQ3E73ZrPQnYPdU7G6Dj3ZrYaBkrcAYPNgm61P7gBvzUke94HQB8ztPaAu1y1NCFyUAoRyYsCMixeKpUvMK64QYC1NDd7YneACJk"
    }
  ],
  "change_txos":[
    {
      "txo_id":"34f8a29a2fdd2446694bf175e533c6bf0cd4ecac9d52cd793ef06fc011661b89",
      "public_key":"3c0225fab2d6df245887b7acebf22c238ffafa54842ab2663ac27833975a2212",
      "amount":{
        "value":"4764600000000",
        "token_id":"0"
      },
      "recipient_public_address_b58":"f7YRA3PsMRNtGaPnxXqGE8Z6eaaCyeAvZtvpkze86aWxcF7a4Kcz1t7p827GHRqM93iWHvqqrp2poG1QxX4xVidAXNuBGzwpCsEoAouq5h"
    }
  ],
  "value_map":{
    "0":"1234600000000"
  },
  "fee_amount":{
    "value":"400000000",
    "token_id":"0"
  },
  "submitted_block_index":"1352852",
  "tombstone_block_index":"1352860",
  "finalized_block_index":"1352852",
  "status":"succeeded",
  "sent_time":null,
  "comment":""
}

Confirm Status and Block Index

For a successful transaction, the status is succeeded, and the finalized_block_index is populated.

Confirm Recipient Address

The output_txos for the transaction contain details about the txo itself, including the value and token_id. The recipient_public_address_b58 specifies the address to which the amount was sent.

Confirm with the Block Explorer

{
  "method":"get_txo",
  "result":{
    "txo":{
      "id": "c50c2d1fbeae481e8bf68e90692f537a9d9fca62177d411d37dbb88e19a8f4d6",
      "value": "9600000000",
      "token_id": "0",
      "received_block_index": null,
      "spent_block_index": null,
      "account_id": null,
      "status": "orphaned",
      "target_key": "0a207ecb238d6b97dc1f83745f7a713eec75d9bce821889498b1e475144c89059c66",
      "public_key": "0a208e279a2326d585a9c8b24c0b3c9d356e63f1c4276b22bb97f25b45bb58ec810d",
      "e_fog_hint": "0a5497815c16a0ed7cc0b40eb3f0d3b4f6e9c2d14455495f971c2eff3e53889ee50e48a0ceede2c502499a4a1f181a8be0e9c0347d1a21923510c86ac102a400b5b5dd4ce8b145ab754f6541d610957857f983cb0100",
      "subaddress_index": null,
      "key_image": null,
      "confirmation": "0a209d298c11da7d6f3798c7ddef69aea407170cc8f917c5cbfb4e8651513995db31"
    }
  },
  "jsonrpc":"2.0",
  "id":1
}

Provide Confirmation Receipt to the Receiver

After you have confirmed that the transaction_log indicates that you sent the transaction to the correct recipient, and you confirmed that the transaction outputs are in the blockchain, the next step of dispute resolution involves providing a cryptographic proof that you created the transaction, called a confirmation. You can follow the steps below to create a confirmation:

Sender Provides the TXO Confirmations

  1. This will return a response that has an array of confirmations.

In most cases, there will only be 1 confirmation, but if you created a multi-output transaction there will be more (1 for each output txo).

{
    "method": "get_confirmations",
    "result": {
        "confirmations": [
            {
                "txo_id": "e5b05ee9db56b0a123bea472284ea24e153d99ef9698ca5dfb4dee56e3320295",
                "txo_index": "4832213",
                "confirmation": "0a2013640c9c2547dc02b9e5d5abe4adb15cc1532c4651a253b661ad7b15e0ebad62"
            }
        ]
    },
    "jsonrpc": "2.0",
    "id": 1
}
  1. For the TXO that you wish to confirm, this is where you would send the recipient the txo_id txo_index and confirmation for each txo you wish to have them validate.

Receiver Validates the TXO Confirmation

If all is successful, you should have gotten a response with a result of "validated": true

The precision of the value of the txo depends on which token it is. To see more info about the precision of each token and what token are supported, check out our page.

You can use the txo_id from the output_txos to get more information about the specific txo over which there may be a dispute, with the endpoint.

You can use the public_key to confirm with the block explorer. The MobileCoin Foundation hosts a public block explorer at .

For the example above, we can go to the block index indicated in the transaction_log: 318163, here: , and scroll down to the Transaction Outputs section, where we see the public key 8e279a2326d585a9c8b24c0b3c9d356e63f1c4276b22bb97f25b45bb58ec810d (with the prefix 0a20 removed)

Using the transaction_log_id obtained from the previous step, call

For each of the confirmations generated in the previous step, call using the account_id of receiving account.

get_transaction_log
Supported Tokens
get_txo
https://block-explorer.mobilecoin.foundation/
https://block-explorer.mobilecoin.foundation/blocks/318163
get_confirmations
validate_confirmation