@StartableByRPC
public class CashIssueAndPaymentFlow
extends AbstractCashFlow
Initiates a flow that self-issues cash and then send this to a recipient.
We issue cash only to ourselves so that all KYC/AML checks on payments are enforced consistently, rather than risk checks for issuance and payments differing. Outside of test scenarios it would be extremely unusual to issue cash and immediately transfer it, so impact of this limitation is considered minimal.
public static net.corda.finance.flows.CashIssueAndPaymentFlow.Companion Companion
public CashIssueAndPaymentFlow(@NotNull net.corda.core.contracts.Amount<java.util.Currency> amount, @NotNull net.corda.core.utilities.OpaqueBytes issueRef, @NotNull net.corda.core.identity.Party recipient, boolean anonymous, @NotNull net.corda.core.identity.Party notary, @NotNull net.corda.core.utilities.ProgressTracker progressTracker)
Initiates a flow that self-issues cash and then send this to a recipient.
We issue cash only to ourselves so that all KYC/AML checks on payments are enforced consistently, rather than risk checks for issuance and payments differing. Outside of test scenarios it would be extremely unusual to issue cash and immediately transfer it, so impact of this limitation is considered minimal.
amount
- the amount of currency to issue.issueRef
- a reference to put on the issued currency.recipient
- the recipient of the currencyanonymous
- if true, the recipient of the cash will be anonymous. Should be true for normal usagenotary
- the notary to set on the output states.public CashIssueAndPaymentFlow(@NotNull net.corda.core.contracts.Amount<java.util.Currency> amount, @NotNull net.corda.core.utilities.OpaqueBytes issueRef, @NotNull net.corda.core.identity.Party recipient, boolean anonymous, @NotNull net.corda.core.identity.Party notary)
public CashIssueAndPaymentFlow(@NotNull net.corda.finance.flows.CashIssueAndPaymentFlow.IssueAndPaymentRequest request)
@Suspendable @NotNull public net.corda.finance.flows.AbstractCashFlow.Result call()
@NotNull public net.corda.core.contracts.Amount<java.util.Currency> getAmount()
the amount of currency to issue.
@NotNull public net.corda.core.utilities.OpaqueBytes getIssueRef()
a reference to put on the issued currency.
@NotNull public net.corda.core.identity.Party getRecipient()
the recipient of the currency
public boolean getAnonymous()
if true,
the recipient of the cash will be anonymous. Should be true for normal usage
@NotNull public net.corda.core.identity.Party getNotary()
the notary to set on the output states.