We specify a paymail capability extension which supports the passing of BEEF Transactions between hosts. The procedure for service discovery and requesting outputs is not detailed, rather this proposal contains only a recommendation to replace BRC-12 RawTx hex data with BRC-62 BEEF hex data.
A random ID was generated in order to avoid label collisions in the capability document of a paymail server.
brfcid:5c55a7fdb7bbtitle:Background Evaluation Extended Format Transactionauthor:Darren Kellenschwilerversion:1.0.0
Specification
We specify that an endpoint for delivery of transaction data ought to be added to the capabilities object in the .well-known response of a paymail service with the label: 5c55a7fdb7bb.
<!-- capabilities document of the host -->{"capabilities":{"5c55a7fdb7bb":"https://paymail.domain.tld/api/v1/beef/{alias}@{domain.tld}",<!--...others-->}}
Client Request
The sender must replace the {alias} and {domain.tld} placeholders in the URI template provided by capabilities.5c55a7fdb7bb with a valid Paymail handle. The client must then perform a POST HTTP request with the following body:
BEEF transaction hex is a string encoding of the binary format detailed in BRC-62.
Server Response
The server must validate the transaction and respond with the accepted transaction ID and an optional human-readable note.
Swimlanes
A swimlanes diagram is included here for further clarification: https://swimlanes.io/u/6J2q8QCEb