code: func BroadcastPayload(reqCtx reqContext.Context, payload *common.Payload, orderers []fab.Orderer) (*fab.TransactionResponse, error) {
  	// Check if orderers are defined
  	if len(orderers) == 0 {
  		return nil, errors.New("orderers not set")
  	}
  
  	ctx, ok := context.RequestClientContext(reqCtx)
  	if !ok {
  		return nil, errors.New("failed get client context from reqContext for signPayload")
  	}
  	envelope, err := signPayload(ctx, payload)
  	if err != nil {
  		return nil, err
  	}
  
  	return broadcastEnvelope(reqCtx, envelope, orderers)
  }
docs: // BroadcastPayload will send the given payload to some orderer, picking random endpoints
  // until all are exhausted