history hero background

ARC

ARC is a cutting-edge transaction processor that streamlines the submission of transactions to the BSV network. By providing seamless connectivity and exceptional performance, ARC paves the way for unparalleled global scalability in the BSV ecosystem.

API Interaction

Interact with the REST API microservice to submit transactions, authenticate, and validate data.

Metamorph Processing

Transactions are sent to Metamorph, which processes and resends them if they are not acknowledged by the network within a certain time period.

BlockTx Handling

BlockTx processes blocks mined on the BSV network and propagates transaction statuses to Metamorph instances that have subscribed to this service.

Callbacker Notifications

Callbacker sends callbacks to clients when a transaction has been accepted by the BSV network.

Transaction Completion

Once the transaction is processed and validated, it is included in the next block, and the client receives a confirmation through the Callbacker microservice.

ARC Components

Learn more about each component of ARC and how they work together to create a seamless transaction processing experience.

/assets/paymail/svg/server-05.svg

API

API is the REST API microservice for interacting with ARC. It handles authentication, validation, and sending transactions to Metamorph. The API communicates with one or more Metamorph instances using client-based, round-robin load balancing.

/images/arc/cube-outline.svg

Metamorph

Metamorph is a microservice responsible for processing transactions sent by the API to the BSV network. It re-sends transactions if they are not acknowledged by the network within a certain time period (60 seconds by default). Metamorph is designed to be horizontally scalable, with each instance operating independently and having its own transaction store.

/images/arc/cube-stacked-01.svg

BlockTx

BlockTx is a microservice responsible for processing blocks mined on the BSV network and propagating the status of transactions to each Metamorph that has subscribed to this service. The main purpose of BlockTx is to de-duplicate the processing of (large) blocks.

/images/arc/link-05.svg

Callbacker

Callbacker is a simple microservice responsible for sending callbacks to clients when a transaction has been accepted by the BSV network. To register a callback, the client must add the X-Callback-Url header to the request. The callbacker will then send a POST request to the URL specified in the header, with the transaction ID in the body.

ARC Roadmap

Seamless Transition Strategy: Phased Approach for Migration from mAPI to ARC

table

Frequently asked questions

What is the main advantage of using ARC over mAPI?

ARC provides a more efficient and scalable solution for transaction processing. Unlike mAPI, which relies on the rpc interface of a BSV node, ARC broadcasts transactions on the p2p network, allowing for greater connectivity and reduced bandwidth costs.

How does ARC improve transaction lifecycle management?

ARC monitors the BSV network for transaction and block messages, and keeps track of various transaction states. If a transaction isn't seen on the network within a set time period, ARC resends the transaction, ensuring a higher likelihood of successful processing.

What are the microservices in ARC, and how do they contribute to its functionality?

ARC consists of four microservices: API, Metamorph, BlockTx, and Callbacker. The API handles authentication, validation, and transaction submission; Metamorph processes transactions and resends them if needed; BlockTx processes blocks and propagates transaction status; Callbacker sends callbacks to clients when transactions are accepted.

How does ARC's extended format improve transaction validation?

The extended format includes satoshis and scriptPubKey for each input, which allows ARC to validate transactions without downloading parent transactions. This reduces processing time and network overhead, making the system more efficient.

What is the significance of BIP-239 in relation to ARC?

BIP-239 describes the extended format used by ARC for transactions. It serves as a comprehensive specification for this new format, which aims to become the standard for interchange between wallets and non-mining nodes on the BSV network.

How does ARC ensure scalability and robustness?

ARC's microservices are designed to be horizontally scalable, allowing them to be deployed on single or multiple machines. The system's modular architecture ensures efficient resource utilization and enables ARC to handle increasing transaction volumes over time.

News

Img

Developing ARC – A BSV Blockchain open-source effort

While the ARC service is overseen by BSV Blockchain, its development is thanks to the contributions of several key partners – including Handcash and TAAL.

Read more

Img

Making transactions simple with ARC

The team at HandCash has actively been testing and providing feedback for the introduction of ARC, says Rafa Jimenez (Chief Technical Officer and Co-Founder of HandCash).

Read more

Img

Gearing up for the launch of ARC with TAAL

The team at TAAL has continued testing with ARC as it gears up for a full release later this year, says Michael Böckli (Tech Lead at TAAL).

Read more

Ready to add blockchain solutions to your business or government agency?

Send us a message and let us know about your needs. Please contact [email protected]

Join Our Community

Stay updated with the BSV Blockchain's latest news and events.
Subscribe to our weekly newsletter.