Participant registration
In order to send payments, you need to register a Participant within the Gevamu Payments Solution. This example shows how to register a Participant node.
classDiagram
class MyPaymentService {
+ registerViaGevamu()
}
class GevamuFacade {
+ registerParticipant()
}
MyPaymentService ..> GevamuFacadeThe Gevamu Payments Solution provides RegisterParticipantFlow as the flow for registration and ParticipantRegistration as the participant registration record.
Registering a Participant Node using classes provided by Gevamu SDK
See an example of calling RegisterParticipantFlow below:
import com.gevamu.corda.flows.ParticipantRegistrationimport com.gevamu.corda.flows.RegisterParticipantFlowimport net.corda.core.identity.Partyimport net.corda.core.node.services.CordaServiceclass GevamuFacade { fun registerParticipant(gateway: Party): ParticipantRegistration { val flowHandle = serviceHub.startFlow(RegisterParticipantFlow(gateway)) return flowHandle.returnValue.get() }}RegisterParticipantFlow requests registration from the Gevamu Gateway node identified via the Party instance.
You may choose to design your CorDapp so that it initiates the Participant node registration flow via an RPC call or using the serviceHub as in the example above.
Upon successful registration, the Payment Gateway node returns the participant registration record with the Participant ID and the BNO Network ID.
The structure of the ParticipantRegistration data class is shown below.
classDiagram
class ParticipantRegistration {
networkId: String
participantId: String
}